iLBC 技术点
来源:互联网 发布:淘宝网鼠标垫 编辑:程序博客网 时间:2024/06/13 09:49
编码:
iLBC的每frame/block保持独立编码,这样才能保证在丢包的情况下,保持良好的重建语音质量;而CELP模型的codec往往都需要look head buffer 才能对当前帧进行编码,这样虽然可以使重建语音连接比较平滑,但是在网络传输中一旦发生丢包,则连续性遭到破坏,解码语音的质量就会下降。
与传统的CELP模型的speech codec有较大不同,精髓在于帧内的独立编码,同时也利用了长时预测编码(LPC)去除冗余信息和语音信号本身准周期性的特征构造动态码书。与CELP模型codec相比,在丢包率较高的网络情况下,语音质量不会下降很快。
解码:
1、iLBC整个解码流程的复杂度是编码端复杂度的1/3~1/2;(参考网上定点iLBC代码在ARM9上的实现)
2、低延时,较强的抗丢包性能,即在丢包率较高的情况仍然保持较好的语音质量;
3、特有的丢包补偿(Packet Loss Concealment)模块和语音增强(enhancer)模块,这两部分是解码端最大的亮点;
PLC:
丢包补偿技术(Packet Loss Concealment——PLC)是iLBC Codec中非常重要的一项技术,更是VOIP Codec应用中不可缺少的组成部分。iLBC的PLC只是在解码端进行封包补偿处理。在解码端根据收到的bitstream逐帧进行解码的过程中,iLBC decoder首先拿到每帧的 bitstream 要判断当前帧是否完整,如果没有问题则按照正常的iLBC 解码流程重建语音信号,见《深入剖析iLBC 解码器原理》;如果发生了语音封包丢失,那么就进入PLC单元进行处理。PLC主要根据前一帧的解码信息,利用基音同步重复的方法近似替代当前的丢失帧,以达到丢包补偿。
Enhancer:
注:语音增强是指当语音信号被各种各样的噪声干扰、甚至淹没后,从噪声背景中提取有用的语音信号,抑制、降低噪声干扰的技术。一句话,从含噪语音中提取尽可能纯净的原始语音
iLBC Enhancer本质上找出当前未增强残差信号(sub-block)的前后各3个80样点的周期序列,然后利用这6个基音同步序列来改进当前sub-block的音质,如果当前sub-block是话音部分就适当增加它的周期性,使声音更加饱满;如果当前sub-block具有非周期的特性,那么就减少它的周期性,减少噪声的影响。
- iLBC 技术点
- iLBC
- 深入剖析iLBC的丢包补偿技术(PLC)
- VoIP技术(3)--G.729-G.723-iLBC-语音编码
- VoIP技术(3)--G.729-G.723-iLBC-语音编码
- VoIP技术(3)--G.729-G.723-iLBC-语音编码
- VoIP技术(3)--G.729-G.723-iLBC-语音编码
- VoIP技术(4)-G.729-G.723-iLBC-语音编码
- VoIP技术(4)-G.729-G.723-iLBC-语音编码
- iLBC(多媒体)
- 关于iLBC
- iSAC / iLBC
- iLBC 压缩比
- 技术点
- 技术点
- 技术点
- 技术点
- 技术点
- rm: argument list too long 的处理方法
- Jenkins插件编写入门
- pycharm字体设置
- SpringSecurity3.X--验证码
- 数据库事务四个特性
- iLBC 技术点
- 华为U8220 fastboot刷机
- xCode5.0使用iOS6.1SDK及模拟器
- gridControl添加CheckEdit列问题的解决方法
- SQL2008数据表空间大小查询脚本
- 突然好想你
- jenkins中通过execute shell启动的进程会被杀死的问题
- Jenkins界面Jelly入门
- oracle系统根据optimizer statistics(指的就是work area profile)估算出optimal尺寸和onepass尺寸