语音编码算法:主要有两大类:波形编码、声型(参量)编码
1、波形编码:对语音波形进行抽样、量化、编码;典型的编码就是固定电话使用的PCM编码(8K抽样×8bit量化=64kbps);
优点:话音质量好,MOS(Mean Opinion Score,主观平均得分)评级可达4.5分以上;
缺点:编码速率较高,一般不小于16kbps,占用带宽资源多,而带宽资源,正是移动通信最稀缺的资源;
2、声型(参量)编码:对人体喉咙发出的音调和噪声,以及口和舌的声学滤波效应建立模型(好High啊),将这些模型数据通过信道传输;
优点:编码速率低(最低可以为2kbps),占用带宽资源少,频率资源相同的情况下,系统容量自然大一些;
缺点:话音质量差,MOS评级有3.5分已经算不错了;
为了兼顾系统容量和话音质量,移动通信系统一般采用混合编码。
各种无线制式采用的语音编码算法如下:
GSM:FR(全速率编码,学名叫RPE - LTP(规则脉冲激励-长期预测编码),13Kbps)、EFR(增强型全速率,语音质量比FR好,13Kbps)、HR(半速率编码,使用它,GSM系统语音容量加倍,但是语音质量较差,6.5Kbps)
WCDMA & TD:AMR(自适应-多速率编码,有8种语音速率,就好像一个懂8国语言的翻译家)
目前采用的AMR语音编码8钟速率如下:
12.2kbps(与GSM-EFR兼容),10.2kbps, 7.95kbps,7.40kbps,6.70kbps,5.90kbps, 5.15kbps, 4.75kbps
其中:
12.2kbps编码与GSM-EFR兼容;
7.40kbps编码与美国标准IS-641(US-TDMA speech codec)兼容,不知道是不是兼容cdma2000的编码,请哪位C网高手澄清一下?
6.70kbps编码与小灵通的PDC-EFR兼容,这主要是应日本运营商NTT DoCoMo的要求设计的(这个小日本的运营商在移动通信标准制定上有很大的影响力)
可以看到,由于AMR语音算法与目前各种主流移动通信系统的编码兼容,所以非常利于设计多模终端。因此,AMR算法的使用范围在不断扩大;目前新上市的GSM手机(支持3G或不支持3G)都已经支持AMR,连各厂家的GSM系统也都已经开始支持AMR了;这是一个典型的“下放3G技术,增强2G功能”的例子。
另外,由于AMR算法兼容性强,将有可能成为未来固定网络和移动网络统一的语音编码方式,即未来你不管用什么终端(手机、PC……)打电话,大部分时候都是采用AMR编码的(除了你家里古董级的固定电话机)。
AMR算法也会演进:从现在的AMR-NB(窄带AMR),演进到AMR-WB(宽带AMR,目前网络设备已经可以支持了)。AMR-WB模式有9种速率:6.6 kbps, 8.85 kbps, 12.65 kbps, 14.25 kbps, 15.85 kbps, 18.25 kbps, 19.85 kbps, 23.05 kbps, 和23.85 kbps,带宽的增加使得语音质量会更好。
cdma2000:QCELP(高通公司码激励线性预测编码声码器,有13kbps和8kbps两种速率)、EVRC(增强型可变速率声码器,支持3种编码速率:全速率8.55kbps、半速率4.0kbps、1/8速率0.8kbps)