[发明专利]一种丢包补偿的方法和实现丢包补偿的装置及系统有效
申请号: | 200810198318.X | 申请日: | 2008-09-04 |
公开(公告)号: | CN101399636A | 公开(公告)日: | 2009-04-01 |
发明(设计)人: | 朝鲁檬 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L1/00 | 分类号: | H04L1/00;H04L12/56 |
代理公司: | 广州三环专利代理有限公司 | 代理人: | 郝传鑫;熊贤卿 |
地址: | 518129广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 补偿 方法 实现 装置 系统 | ||
技术领域
本发明涉及数据通讯领域,尤其涉及一种丢包补偿的方法和实现丢包补偿的装置及系统。
背景技术
G.711语音编解码算法是一种采用脉冲编码调制(Pulse Code Modulation,PCM)技术,对8K采样率语音的压缩编码技术,是当前公共电话网络上使用最为广泛的语音编解码算法。在因特网协议承载语音(Voice over Internet Protocol,VoIP)处理过程中,常常以10ms的语音数据作为G.711编解码所处理的最小时间间隔,因为在网络当中存在着诸多情况引起的丢包,所以G.711附录I为使用者提供一种行之有效的丢包补偿算法。
当前G.711附录I所描述的丢包补偿算法,是基于10ms作为一个数据帧长度的。在整个设计当中设置两个较大的数据缓冲区history[390]*16bit,pitchbuf[390]*16bit。其中缓冲区history[390]中保存了已经播放的48.75ms的数据,用来对接下来可能发生的丢失的1~6包进行补偿,同时也用来缓存3.75ms的数据结果,以进行更好的语音平滑。缓冲区pitchbuf[390]只是在丢包中才进行运算,在不丢包时不做任何改动,同时丢包时的输出数据也不对其进行更新。
在实现本发明过程中,发明人发现,在上述方案中,history和pitchbuf都是静态数据空间,在多通道同时编解码的方案当中,这两个缓冲区只能为本通道服务,不能够被其他的通道或者计算所公用。因此,当通道数目较多时,将为每个通道都分配静态数据空间,这样多个通道将占用很多的静态空间。
发明内容
本发明所要解决的技术问题在于,提供一种用于丢包补偿的方法和实现丢包补偿的装置及系统。可节省丢包补偿中需要的数据存储空间。
为此,一方面,本发明的实施例提供了一种丢包补偿方法,所述方法用于数据帧的传输,包括:
获取数据帧的丢帧情况;
根据所述丢帧情况和丢包补偿算法对数据帧进行丢包补偿处理,并将经过丢包补偿处理的所述数据帧进行压缩编码后存储,本步骤包括:
当所述丢帧情况为当前数据帧不是丢帧,所述当前数据帧的前一数据帧是丢帧时,根据第一处理策略对所述当前数据帧进行所述丢包补偿处理;
将经过丢包补偿处理的当前数据帧进行压缩编码后存储在第一缓冲区;
其中,所述根据第一处理策略对所述当前数据帧进行所述丢包补偿处理包括:
对所述当前数据帧进行解码;
对存储在所述第一缓冲区的数据帧进行解码;
根据所述第一缓冲区中解码后的数据帧对所述当前数据帧解码后的数据帧进行平滑;
对经过平滑后的数据帧进行延时。
另一方面,本发明的实施例提供了一种实现丢包补偿的装置,所述装置用于根据数据帧传输中的丢包情况进行丢包补偿,该装置包括:
获取模块,用于获取数据帧的丢帧情况;
处理模块,用于根据所述丢帧情况和丢包补偿算法对数据帧进行丢包补偿处理,其中,在丢包补偿算法中,需要使用编码后存储的数据帧时,对所述数据帧进行解码;
编码存储模块,用于将经过丢包补偿处理的数据帧进行压缩编码后存储;
其中,所述处理模块包括第一处理模块,用于所述丢帧情况为当前数据帧不是丢帧,当前数据帧的前一数据帧是丢帧时,根据第一处理策略对所述当前数据帧进行丢包补偿处理;
所述编码存储模块包括第一编码模块,用于将经过所述丢包补偿处理的当前数据帧进行压缩编码后存储在第一缓冲区;
其中,所述第一处理策略包括:
对当前数据帧进行解码;
对存储在第一缓冲区的数据帧进行解码;
根据第一缓冲区中解码后的数据帧对当前数据帧解码后的数据帧进行平滑;
对经过平滑后的数据帧进行延时。
另一方面,本发明的实施例提供了一种实现丢包补偿的系统,所述系统用于根据数据帧传输中的丢包情况进行丢包补偿,所述系统包括:
获取模块,用于获取数据帧的丢帧情况;
编解码模块,用于根据所述丢帧情况和丢包补偿算法对数据帧进行丢包补偿处理,并将经过丢包补偿处理的数据帧进行压缩编码后存储,其中,在丢包补偿算法中,需要使用编码后存储的数据帧时,对所述数据帧进行解码;
其中,所述编解码模块包括:
处理模块,用于根据所述丢帧情况和丢包补偿算法对数据帧进行丢包补偿处理,其中,在丢包补偿算法中,需要使用编码后存储的数据帧时,对所述数据帧进行解码;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810198318.X/2.html,转载请声明来源钻瓜专利网。