论文部分内容阅读
安全生产是民航工作的首要任务。作为民航安全生产的主管单位,空管中心自始至终都非常重视安全工作,采取了许多行之有效的办法,取得了卓越成绩。但随着民航运输业的飞速发展,飞行流量大幅度增加,引起空中交通管理难度和强度加大,对安全生产造成巨大影响。为强化安全生产运行监督,空管中心希望更方便地看到和听到一线空管工作的实时情况和从记录的历史话音和雷达数据中提取空中交通管理中发生的不安全信息,作定量和定性分析,为飞行安全工作提供方便、客观的依据。本文所涉及的雷达、语音监察系统正是基于这一需要设计和开发的。它具有实时采集雷达、语音数据,实时同步播放,历史回放,分析处理等功能,较好的满足了用户需要。在这一系统开发中,本人主要参与了系统总体结构的设计,并独立负责语音部分的开发,包括语音的采集、编解码、实时传输、同步播放,语音的存储等。本文以本人所做工作为基础,主要介绍与语音相关的开发。全文分为下面几个部分:(1)总体结构设计和模块划分。此部分介绍了本雷达、语音监察系统的总体结构设计和模块划分,以及数据采集模块的设计。(2)语音采集、编解码。此部分介绍了使用语音采集卡采集多通道的语音信号和采用ADPCM压缩编码语音数据。此部分详细介绍了ADPCM编码的原理、算法。还介绍了利用软件解码的一些特点和过程。(3)语音的实时传输。语音信号在采集席位被采集后,需要实时传输到实时播放席位播放。此部分主要介绍了实时传输运用的组播技术,RTP/RTCP技术。并提出了自适应缓冲区算法和反馈控制策略。 <WP=3>(4)语音的同步播放。语音数据在播放席位最终要和雷达数据同步播放。包括实时播放和历史回放两种情况。此部分介绍了两种情况下的同步方案和利用WINDOWS低层音频服务进行语音播放的特点和过程。(5)语音的存储。语音数据在采集席位被采集后需要存入数据库以便以后的历史回放和分析。此部分主要介绍了ORACLE数据库对多媒体数据的支持以及OCCI数据库访问接口。(6)线程安全类研究。本系统中充分利用了多线程机制和面向对象编程技术。处于多线程环境中的对象,随时都会面临线程对其方法的并发调用。由此引入线程安全类的问题。此部分从程序语言、WIN32 API、MFC三个层次上研究了线程安全类的实现。