【转】深入剖析iLBC的丢包补偿技术(PLC)
丢包补偿技术(Packet Loss Concealment——PLC)是iLBC Codec中非常重要的一项技术,更是VOIP Codec应用中不可缺少的组成部分。iLBC的PLC只是在解码端进行封包补偿处理。在解码端根据收到的bitstream逐帧进行解码的过程中,iLBC decoder首先拿到每帧的 bitstream 要判断当前帧是否完整,如果没有问题则按照正常的iLBC 解码流程重建语音信号,见《深入剖析iLBC 解码器原理》;如果发生了语音封包丢失,那么就进入PLC单元进行处理。PLC主要根据前一帧的解码信息,利用基音同步重复的方法近似替代当前的丢失帧,以达到丢包补偿。
一、PLC unit 的几种情形
1、过去帧、当前帧都接收正确
进入正常的iLBC decoder解码流程,需要保存当前帧的状态信息,这些状态信息包括LPC信息、解码后的残差信号等。如果下一帧的比特率丢失的话,就要用到这些保存的信息。
2、仅当帧发生丢包
如果当前帧没有丢失,那么进入PLC unit重建LPC系数和残差信号。后面会详细介绍LPC和残差信号的补偿方法。
3、连续多帧发生丢包
如果发生连续多帧丢包,那么就需要多次进入PLC unit,并且需要利用经过补偿的帧状态信息。值得注意的是,越靠后面丢失的帧越难以精确的重建,所以对连续丢包的增益采用逐帧递减,以避免引入更大的信号失真。
4、过去帧经过PLC处理,需要与当前帧平滑处理
为了使经过PLC补偿的帧与接下来没有丢包的帧保持语音连续而需要进行平滑,主要根据前后帧的相关性处理。
二、PLC重建LPC系数
iLBC 的PLC对于丢失LPC的补偿是采用了过去帧的最后一个子帧的LPC系数来简单的重建。这个方法是显然的,因为无论从空间上还是时间上最后一个子帧都与当前丢失的LPC具有最大相关性。但是这种简单的复制当处理连续多帧时也显然会引入更大的失真。
三、PLC重建残差信号
激励信号(残差信号)通常可以分为两部分组成:准周期成分和类噪声成分。因此PLC实际上首先需要重建这两个部分,准周期成分可以根据测量前一帧的基音周期来近似得到,类噪声成分则可以通过产生随机噪声得到,二者的能量比例也可以借鉴前一帧的比例关系。所以首先要对前一帧进行基音检测,然后以基音同步的方式重建丢失帧的话音部分,然后利用相关性得到类噪声的增益,最后进行混合以重建整个残差信号。
在连续丢帧的情况下,为了减少各个补偿帧之间的相关性,会将能量进行逐帧递减,但依然会产生一定的听觉噪声。如果采用内插的方法,虽然可能音质会好些,但是却会引入更大的延时。
四、iLBC PLC的缺点
在连续丢帧的情况下,PLC所补偿的各个语音帧具有相同的频谱特性(相同的LPC造成)和基音频率,非常容易引入一种可察觉的噪声,尤其是当基音频率较高的时候,这种因为过分的周期性所引起的。通过适当的内插可以缓解这一问题,但往往引入更大的延时。
参考资料:
1、IETF:RFC3951.txt
2、潘搏胜《iLBC解码程序进阶处理之研究》
转载于:https://www.cnblogs.com/tkppain/archive/2013/06/07/3123387.html
【转】深入剖析iLBC的丢包补偿技术(PLC)相关推荐
- 深入剖析iLBC的丢包补偿技术(PLC)
转自:http://blog.csdn.net/wanggp_2007/article/details/5136609 丢包补偿技术(Packet Loss Concealment--PLC)是iLB ...
- TCP丢包检测技术详解
TCP丢包检测技术详解 http://www.cctime.com/html/2007-12-6/20071261023151210.htm 2007年12月6日 10:23 中 ...
- G711 编码解码及丢包隐藏处理(PLC)
1.G711 简介 G.711是一种由国际电信联盟(ITU-T)制定的音频编码方式,又称为ITU-T G.711. 常用的有G711u 和 G711a, 即PCMU和PCMA 2.G711 的压缩率为 ...
- 直播系统从带宽扩展到丢包隐藏,实时音频中的 AI
直播系统从带宽扩展到丢包隐藏,实时音频中的 AI 随着这几年直播系统的迅猛发展,我们在图像和视频处理领域里见证了非常多的应用,比如Agora引擎里的视频超分辨率技术.对于音频中AI的应用,我们可能经常 ...
- 以太网速率怎么手动设置_以太网能不能不丢包?
1 以太网能不丢包吗 大家天天上网语音.视频.聊天.追剧--,有没有感觉到网络丢包呢?可能有的会说有,有的会说没有.说有的可能会说感觉到语音或追剧时有卡顿,说没有的可能会说我聊天内容好友都毫发无损的收 ...
- 数据丢包怎么修复_一种网络传输中实时音频数据丢包恢复的方法与流程
本发明涉及通信技术领域,具体涉及一种网络传输中实时音频数据丢包恢复的方法. 背景技术: 随着通信技术的发展,音频传输系统对实时性和准确性的要求越来越高.在网络的音频传输过程中,影响音频音质的主要因素是 ...
- android蓝牙丢包重传,华为TE Desktop Mobile软终端引领市场
[IT168厂商动态] 华为自从2013年推出TE30以后,随着视讯行业的迅猛发展与客户对视讯要求的不断提高,华为继续推出了TE40.TE50.TE60三款全新的高清视频会议终端,能全方位覆盖从中小型 ...
- IP通信中音频编解码技术与抗丢包技术概要
此文较长,建议收藏起来看. 一.一个典型的IP通信模型 二.Server2Server技术分类 Server2Server这块也是一个专门的领域,这里只简单分个类. 1.同一国家相同运营商之间: 同一 ...
- centos 7 局域网丢包排查_网络排查神器:mtr
常用的 ping,tracert,nslookup 一般用来判断主机的网络连通性,其实 Linux 下有一个更好用的网络联通性判断工具,它可以结合ping nslookup tracert 来判断网络 ...
最新文章
- 运维实战案例之文件已删除但空间不释放问题解析
- Spring之Bean的配置(二)
- QTreeWidgetItem 类的翻译
- C语言实用算法系列之DOS传参“加减乘除计算器”
- python求近似值_python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配...
- C# LINQ to XML
- navicat导出查询结果原理_使用Navicat生成ER关系图并导出
- 设置PDF文件默认缩放比例
- python机器人仿真软件_最火的Python语言也能做机器人仿真,你会不?
- 谷歌浏览器不支持html2.0,谷歌浏览器不能播放视频怎么办_chrome浏览器无法播放视频的解决方法-系统城...
- 七层网络协议详细解释
- 魏俊妮《如何成为支持业务的HR》课程大纲
- 怎么彻底卸载cad2017_电脑中cad卸载不干净重装失败的处理方法
- vs 设置起始页不见了_VS2015,为什么模板不见了,请教
- 【沃顿商学院学习笔记】商业基础——Financing:02 年金 Annuity
- 如何根据视频的宽屏与竖屏来排序?
- 踩坑!穿山甲广告Android SDK接入
- python能建网站吗_python适合建网站吗
- 发光二极管二极管引脚_LCD? 发光二极管? 等离子体? HDTV技术入门指南
- 【粤拼】手工整理《岳阳楼记》
热门文章
- Volatile缓存可见性实现原理(JMM数据原子操作具体步骤)
- 写一个测试工具类,只在debug时运行,而release时自动移除代码,适用于gradle项目(idea,android studio等)
- 一个方法搞定安卓路由跳转
- 计算机专业的分支,计算机专业分支(转载)
- linux让数值依次递增的快捷键,如何将文件名批量修改成上一级文件夹的名字。如:A(文件夹名)-01这样依次递增?...
- 实验六JDBC数据库操作_JAVA
- C语言实验——打印金字塔_JAVA
- 顺序表应用3:元素位置互换之移位算法
- 顺序表应用2:多余元素删除之建表算法
- java和C++的区别