[发明专利]解码调度方法和装置有效
申请号: | 200810133266.8 | 申请日: | 2008-07-25 |
公开(公告)号: | CN101335796A | 公开(公告)日: | 2008-12-31 |
发明(设计)人: | 邱超;余凡 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04M7/00 | 分类号: | H04M7/00;H04L29/06;H04L12/56 |
代理公司: | 北京三高永信知识产权代理有限责任公司 | 代理人: | 何文彬 |
地址: | 518129广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 解码 调度 方法 装置 | ||
技术领域
本发明涉及网络电话领域,特别涉及解码调度方法和装置。
背景技术
网络电话(VoIP,Voice Over IP)是把话音或传真转换成数据,在IP网络中传输的技术。随着VoIP的发展,由于其具有带宽利用率高,接入成本小,可以和数据业务很好地结合等特点,正在成为语音通话领域当中的一支潜在力量。在VoIP系统中,每个语音封包到达目的端的时间会因为网络延迟(Network Delay)的变化而产生抖动(Jitter)。因此在目的端通常会使用抖动缓存(JB,Jitter Buffer)来调整封包的顺序,并调整语音播放延迟的时间,来提高语音的质量。对于语音质量而言,播放延迟的长短是个相当关键的因素。
如图1所示,是现有技术对收到的数据包进行JB处理和解码处理的装置示意图,其中收包缓冲区、JB数据空间、TDM(Time Division Multiplex,时分复用)数据输出空间三大部分表示了所用到的数据缓存空间,而收包功能模块、JB处理模块、解码功能模块为执行单元。VoIP处理流程包括:从网络端收包,对收到的数据包进行JB处理和解码处理,然后到TDM端播放。JB处理模块和解码功能模块各自按照自己的调度顺序去执行,总延时依赖于各模块的调度程序。
解码功能模块和JB处理模块的关系可以是同步的也可以是异步的。当前VoIP大部分的解码算法都是以10ms作为最小帧长的,所有解码功能模块都是采用以10ms为调度粒度的,即10ms调度一次。解码时所有的报文在10ms中会根据解码函数自己的调度顺序做一次解码,因而现有技术中解码的时间不完全受JB处理模块控制,而是由调度算法本身决定。如图2所示,是现有技术的10ms调度粒度的解码情况示意图。以在某两个通道分别在2ms时和8ms时收到包1和包2为例,假设当前通道JB判断两个数据包都需要至少延时3ms再播放,这样包1和包2实际要求数据被解码的时间分别为5ms和11ms。但是由于解码函数被调用的时间是根据自身调度时刻进行解码的,即解码函数只在10ms、20ms、30ms等时刻被调用,这样必然导致解码时间要等到距5ms和11ms最近的一次10ms或其倍数处对齐,这时解码程序才能被调度。在本例中,包1和包2的实际解码时间分别是10ms、20ms。
在对现有技术进行分析后,发明人发现:上述现有技术的JB处理和解码调度方法造成即使JB处理模块能计算出精确到ms级的延时,但由于解码调度的时间粒度为10ms,实际延时还是以10ms作为调整单位,造成从收包到数据解码的延时比较大。
发明内容
为了解决VoIP接收端延时较大的问题,保证电话链路端到端的延时,本发明实施例提供了解码调度方法和装置,所述技术方案如下:
一方面,提供了一种解码调度方法,包括以下步骤:
接收多个数据包;
获得所述多个数据包的每个数据包的解码时刻,所述解码时刻包括广域时间和小粒度时间;
根据所述广域时间将所述多个数据包保存于抖动缓存中的相应的时间域中,并记录所述多个数据包的小粒度时间,其中,所述抖动缓存被根据预定的划分单元划分出了多个时间域,所述多个时间域用于存储所述多个数据包,而所述广域时间用于指示所述多个数据包在所述多个时间域中各自对应的时间域,所述小粒度时间表示所述数据包在所述相应的时间域中的具体的解码时间点;
读取所述抖动缓存,提取到时的数据包,其中,所述到时的数据包是指保存于所述抖动缓存中的时间已经达到所述解码时刻的数据包;
对所述到时的数据包进行解码。
另一方面,提供了一种解码调度装置,包括:
接收模块,用于接收多个数据包;
获取模块,用于获得所述接收模块接收到的多个数据包的每个数据包的解码时刻,所述解码时刻包括广域时间和小粒度时间;
保存模块,根据所述广域时间将所述多个数据包保存于抖动缓存中的相应的时间域中,其中,所述抖动缓存被根据预定的划分单元划分出了多个时间域,所述多个时间域用于存储所述多个数据包,而所述广域时间用于指示所述多个数据包在所述多个时间域中各自对应的时间域,所述小粒度时间表示所述数据包在所述相应的时间域中的具体的解码时间点;
读取模块,用于读取所述抖动缓存,提取到时的数据包,其中,所述到时的数据包是指保存于所述抖动缓存中的时间已经达到所述解码时刻的数据包;
解码模块,用于对所述读取模块读取的到时的数据包进行解码。
本发明实施例提供的技术方案的有益效果是:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810133266.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:自动排放冷凝水节能器
- 下一篇:一种多联除湿机