2.1.1 VoIP语音编码器的比较
语音压缩编码研究的基本问题就是在一定的编码速率下,如何用较低的复杂度和较小的时延获得尽量好的重建语音,因此重建语音质量、编码速率、算法复杂度、算法延迟是衡量编解码器性能的四个主要因素。表2-1是上述VoIP常用语音编码器的指标的对比[1],[4],[5],[6] 。
纵观集中编解码器,iLBC有很多技术优势,主要表现在:
(1) 占用带宽少
在20ms帧时,iLBC所占总的带宽为27.73Kbit/s,而G
(2) 语音质量高
在20ms帧时,iLBC的MOS(平均主观得分)为3.981,而G.729为3.92,G.723.1为3.9,GSM为3.782。
(3) 支持多帧
支持20ms和30ms帧,对于不同的应用或VoIP设备更为灵活。
(4) 低时延和丢包处理特性
iLBC的主要优势在于对丢包的处理能力。在正常情况下,iLBC会记录下当前数据的相关参数和激励信号,以便在之后的数据丢失情况下进行处理;在当前数据接收正常而之前数据包丢失的情况下,iLBC会对当前解码出的语音和之前模拟生成的语音进行平滑处理,以消除不连贯的感觉;在当前数据包丢失的情况下,iLBC会对之前记录下来的激励信号进行相关处理并与随机信号进行混合,以得到模拟的激励信号,从而得到替代丢失语音的模拟语音。总的来说,和标准的低位速率编解码相比,iLBC使用更多自然,清晰的元素,能够精确模仿出原始语音信号。
在实际选择语音压缩标准时,要综合考虑带宽、时延、算法复杂度等几大因素。本课题中选择的编解码器为G.729A,它采用了共轭结构代数码激励线性预测技术,是编码速率和合成语音质量综合效率最优的压缩算法之一,被广泛的用在VoIP中,其在OPNET中有现成的实现模块。
表2-1 VoIP语音编码器的指标的对比
编码算法 |
编码类型 |
比特率 (kb/s) |
MOS |
复杂性(MIPSonTIC54) |
时延/ms |
G.711 |
PCM |
64 |
4.1 |
1.05 |
0.75 |
G.723.1 |
ACELP |
6.3 |
3.9 |
43.7 |
30 |
MP-MLQ |
6.3 |
3.8 |
30 |
||
G.726 |
ADPCM |
40/32/24/16 |
3.85 |
10.8 |
1 |
G.728 |
LD-CELP |
16 |
3.61 |
97 |
3~5 |
G.729 |
CSA-CELP |
8 |
3.92 |
10.88(G.729AB) |
10 |
iLBC(20ms) |
参数编码 |
27.73 |
3.981 |
35倍G.711 |
20 |
EG.711(10,20,30,40ms) |
改进型 PCM |
<=G.711 |
=G.711 |
4.8 |
=帧长 |
iSAC(30~60ms) |
10~32 |
=g.722.2 |
76倍G.711 |
=帧长+3ms |
|
iPCM-wb(10,20,30,40ms) |
平均80 |
>g.722.1 |
8.6MIPS |
=帧长 |