基于Blackfin的VoiceEngine嵌入式方案
VoIP硬件制造商在设计产品时,必须解决语音包环境中与话音质量相关的以下几个主要问题。
本文引用地址:http://www.amcfsurvey.com/article/81639.htm网络降级问题
三个与语音包网络有关的主要因素严重影响着感知的语音质量,它们是:延迟、抖动以及语音包丢失。这三个因素都源自语音包网络的性质,因为语音包网络无法保证语音数据包及时或者全部到达接收端。
延迟
双向通信需要考虑的一个重要问题是发射机与接收机之间的延迟。这个延迟将带来两个问题:回声与通话重叠。
在VoIP 通话中有许多延迟因素,主要包括算法延迟、处理延迟以及网络延迟。算法延迟与使用的语音编码/解码器有关,出现算法延迟的原因是块处理成帧。此外,许多编码/解码器采用的块处理还具有前瞻功能,该功能要求在块编码以前对未来语音样本进行缓冲,这将增加算法延迟。处理延迟与正在进行的信号处理以及编码比特数打包有关。网络延迟则是由于传输线路、路由器缓冲器以及抖动缓冲器中的物理延迟而引起的。
抖动
与恒定算法延迟与处理延迟相反,传输延迟则随着时间而变化。其原因是通过IP网络传输的语音包传输时间将因为排队结果的不同而发生变化。传输延迟分为两个部分,一个是恒定或者变化缓慢的网络延迟,另一个是在基本网络延迟顶端的快速变化的延迟,通常称作抖动。抖动被定义为连续传输语音包之间时延差的平滑功能。
语音包网络中出现的抖动,将使接收机中的解码过程复杂化,因为解码器需要在正确的时间瞬间获得数据包。如果得不到这个数据,解码器就不能生成平滑且连续的语音。因此,除了增加延迟,抖动还将导致接收机定时问题。通常使用抖动缓冲器,以确保在需要的时候得到语音包。
语音包丢失
如果网络中的路由器掉下语音包,或者语音包到达太迟,致使解码器无法对其进行处理时,都会发生语音包丢失。如果允许抖动处理器的延迟时间长一些,就几乎可以杜绝上述的第二种情况,但这会增加系统延迟。
当因为网络中某处出现掉包或者因为语音包到达太迟而出现语音包丢失时,必须采取某些措施填充遗失的语音。这种解决方案通常被称作错误隐藏算法或数据包丢失隐藏 (PLC)算法。为了实现最佳性能,这些算法必须能够准确地预测语音信号并在解码语音与插入部分(inserted segment)之间进行平滑转换。
编码/解码器问题
VoIP系统中的基本算法模块是语音编码/解码器 ,它必须使传输的信息数量最小,同时对语音质量影响最小。经过模-数转换后,语音编码器将数字化的语音信号转化为比特流,比特流经过打包后通过IP网络传输。然后,语音解码器利用接收的语音包,对语音信号进行重构。重构的语音信号接近原始语音信号。
语音编码/解码器必须能够处理语音包丢失。这个鲁棒性不仅决定加载网络的音质,而且对可能引起语音包丢失的拥挤情况下的音质也起着决定作用。其他因素也影响与编码/解码器相关的音质,包括处理不同的话音以及非语音信号,如背景噪声等。
除了上述两个问题,在实际的硬件电路中还存在着与执行语音处理功能相关的其他问题,这些问题也将对音质产生重要影响。例如,模-数转换器、话音激活检测、回音消除算法以及常见的语音处理问题。
目前,许多VoIP硬件平台通常使用的语音处理方案,都是基于公共交换电话网(PSTN)技术,这是传统的电话技术。人们对IP电话的质量非常关心,因为同电路交换网相比,语音包网络具有截然不同的特征。
GIPS技术专门用于IP通信,能够处理语音包网络特征。利用 GIPS公司研制的、用于ADI Blackfin处理器平台的VoiceEngine嵌入式方案,VoIP硬件制造商将拥有以下优势。
获得专利的自适应抖动缓冲器与错误隐藏控制
GIPS公司已经开发出包含错误隐藏算法的高级自适应抖动缓冲器,称作NetEQ算法。这是一个单端(接收端)算法,使得接收机能够受益匪浅,而不管发送端是否使用该算法。
NetEQ算法在一个算法中集成了自适应抖动控制算法以及语音包丢失隐藏算法。这项专利技术使其能够快速且高解析度地适应不断变化的网络环境,确保音质优美且缓冲延迟最小。之所以具有如此效果,是因为NetEQ算法并不在语音包缓冲器内,而是与解码器进行集成。NetEQ算法是嵌入式软件的一部分,该软件在 IP网络接口与 声音播放装置之间,不论它是模-数转换器还是时分多址(TDM)接口。
由于NetEQ算法将抖动缓冲器控制与语音包丢失隐藏算法合为一体,因此,能够使抖动引起的延迟最小。此外,该算法中的语音包丢失隐藏算法是基于一种创新的方法,其品质是任何其他标准数据包丢失隐藏(PLC)方法所无法比拟的。
与普通VoIP软件电话兼容的GIPS编码/解码器
GIPS公司的编码/解码器组件包括宽带编码/解码器与窄带编码/解码器,它们能够生成鲁棒的清晰音质,即使语音包丢失严重也不会受到影响。当这个声音清晰度与GIPS的NetEQ算法一起使用时,将克服延迟与抖动,生成最高质量的VoIP会话。
iPCM-wb
iPCM-wb是优质、低复杂度宽带编码/解码器,对于语音包丢失具有极好的恢复性,使通话质量明显优于PSTN。在端-端IP通信中使用时,iPCM-wb编码/解码器能够确保高端电话应用具有卓越的音质。
iLBC
iLBC则是一种免授权费编码/解码器,所提供的音质与 G.729E相似,优于 G.729A,更是语音包时常丢失的拥挤网络所望尘莫及的。iLBC由美国有线电视实验室(CableLabs)设计,它也是IETF因特网工程任务组 (RFC 3951与RFC 3952)授予的第一个标准编码/解码器,是分组线缆有线电视电缆语音传输(VoCable,Voice over Cable)电话系统的强制部件。
改进型G.711
改进型G.711是GIPS公司标准G.711编码/解码器的改进型产品,具有极好的包丢失鲁棒性。这种改进型编码/解码器,使严重超载的网络也能保持良好音质。
系统结构已经为GIPS媒体处理方案实现最优化
绝大多数普通VoIP低密度终端器件具有多芯片系统结构,包括微控制器单元(MCU)以及至少一个数字信号处理器(DSP)。传统方法是将信号处理进行分离,使包处理由主处理器完成,而媒体处理则由DSP完成。
这种方法使得设计人员在为音/视频通信设计高质量媒体处理方案时面临以下挑战。
MCU与DSP之间的数据传输将带来额外延迟,即降低效率;
DSP上的媒体处理部件需要进一步集成与调谐,从而需要更多的时间与精力 。
ADI Blackfin处理器采用单一处理器系统结构,这样所有的包处理与媒体处理都能在同一个处理器内完成,从而使得GIPS媒体处理方案的效率更高。同多芯片结构相比,利用ADI Blackfin处理器,复杂度将提高30% 以上(需要的处理起资源更少)。
缩短上市时间,保证音质卓越
GIPS公司的VoiceEngine嵌入式方案,为硬件制造商提供了必要的接口与部件,使其通过单一的高级应用程序接口实现语音应用。同时,该方案不需要额外器件,这样,制造商就可以集中精力开发核心应用,而不必为声音处理软件的复杂集成以及调试操心。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论