Compare Plans

2019-09-29

IP电话语音消除时延抖动的方法(二)

       由于时延抖动的影响,接收端不能接收到一个语音包就马上转换为语音信号送给用户。 为了理解这点,我们叫以考虑一下,在进行音频传输时,如果立即开始回放会发生什么情况。 假设回放软件正在播放当前分组中的数据,如果下一分组刚好在播放完数据后到达,这时回放不会中断,能继续播放。但如果下一分组延迟了,回放必须暂停,直到下一分组到达才能继续。更重要的是,当回放重新开始时,不能从这一新到达的分组开始(否则未播放数据队列就会开始增长),而必须从该分组中与当前时刻相对应的那点开始播放。因此,听众就会错过一小段声音(这段时间等于第二个分组的延迟时间),然后再向前跳跃到如果分组是 按时到抵达时所应到的回放点上。由于时延抖动是经常发生的,为了避免输出在每段时延 上都产生空隙,回放软件使用了一种具有探索性的技术,称为迟延回放。这项技术是这样 的,接收方在收到第一个数据时并不马上开始回放,而是将传入数据放到缓存中,该缓存称 为抖动缓存器或回放缓存器,该区按照先进先出队列进行操作。接收方设置一个门限值K, 该值比预计的最长的抖动时间要大。开始时,回放等待数据在缓存中积累,直到缓存中的数据足够播放K个时间单元时就开始回放,数据被以不变的速率从缓存中提取出来。当新分组达到时,分组中的数据被加到缓存中.只要分组的时延没有超过K个时间单元,缓存中就有足够的数据用于连续、不屮断地回放。图1是这一概念的图示。
                                                                                                                                                图1   消抖动缓存器示例
        图 1中所展示的时刻是缓存正期待接收分组。在回放开始时,缓存包含K个时间单元的数据。因此,如果分组到达的速率与提取数据的速率相同,每个新到达的分组将 使缓存重新填到位置K:上。如果某个分组延迟了,回放还能继续从缓存中提取数据,直到新分组到达。如果某个分组提前到达了,在短时间内,缓存中所包含的数据就会超过 K个时间单元。
        消抖动缓存器是如何确定IP电话语音包的正确时间间隔的呢?在因特网屮,实时传输协议 (RTP)用来处理顺序和时间问题。协议在每个分组中设置了两个字段来处理这两个问题。 发送方在每个分组上设置个序号,接收方使用序号信息来保证按照与发送相同的顺序来 处理分组。发送方还在每个分组上设置-个时间戳,该时间戳记录分组中数据的录制时间, 接收方使用时间戳来保证当前数据回放的时间与前一分组的回放具有正确的时间关系。
        如图2所示,在发送端,IP电话网关产生的IP电话语音包中包含了 RTP协议的时间戳。 在时间戳中标明了 IP电话包A、B、C的产生时间分别为10、30、50。经过IP电话网络的传输后在 接收端收到的IP电话包A、B、C的实际时间间隔变成了 20 ms和30 ms。为了恢复原有的时 间间隔,接收端的IP电话网关根据每个IP电话包内的顺序号正确排列每个IP电话语音包的位置,并 根据RTP时间戳来确定每个IP电话包的正确时间间隔,按照每个语音包在发送端的时间间 隔从消抖动缓存器中读出向下一级设备转发。
                                                                                                                                                            图2    消抖动缓存器示例
       在实时协议中,把序列信息与时间戳信息分离开是很关键的,因为这样就川以把处理 分组与数据回放定时分离开。例如,考虑一个音频编码应用,它通过交替发送人:右声道的 采样信号来发送立体声信号,在这种场合下,两个相继的分组可以具有相同的时间戳,对此,把序号与时间戳分开设置可以让接收方知道正确的顺序。同样,当信号输入空闲而没 有数据要传送时,把序号与时间戳分开设置也是很重要的,例如,当出现一段时间的静默而使传输挂起时,尽管没有分组要传送,但用于时间戳的时间还是在流逝,因此,当发送端 经过N个时间单元的静默又开始传送数据时,时间戳将比上一个分组的时间戳大N,但顺序号只加1。从接收者的观点看,时间戳看上去是在两个相继分组间有一个N单位的 跳跃,虽然时间戳向前跳跃了.可是接收方知道分组并没有丢失,因为序号只增加了 1。
        由于消抖动缓存器不是在接收到每一个语音包的情况下就立即转发,因此还需要确 定转发时延的大小。如果时延太长,就会使系统整体的时延变很长。如果时延太短,在允 许的时间范围内没有到达的IP电话语音包将被丢弃,语音仍然会出现抖动的现象,缓存器的 作用就不是很明显了。在我国的相关规范中规定网关处理时延抖动的时间小于80 ms, 同时要求接收端能根据网络的时延大小动态调整缓冲时延的大小。
       实时传输协议虽然能够处理时延和重排序问题,但是它并没有采用确认和重传机制 来处理分组丢失问题。这是因为在实时应用中,数据以个不变的速率到达,回放也必须 以一个不变的速率进行。例如,考虑音频重传的影响,如果一小段音频数据没有到达,而回放刚好播放到这段丢失的数据,输出只好临时挂起。如果协议延迟回放并等待重传,新 数据还会继续到达,未播放数据队列就会增长。一旦重传数据达到,则继续重放,但队列 还会保持在增长后的长度上,这是因为新数据到达的速率与播放的速率一样。因此,尽管 队列增长只是在每次重传时才发生,但它再也不会缩短了。事实上,当重传不断发生时, 队列会无限增长。为了避免出现任意长的队列长度,实时协议没有使用重传机制,而是使 用了前向纠错方法或者跳跃回放。前向纠错方法是在每个分组里增加额外的信息,接收 方利用到达分组里的这些信息,通过数学方法重新生成丢失分组中的数据。跳跃回放则是用一段与丢失数据所占时间相同的数据替代输出。例如,当音频数据在传输过程中丢 失时,接收方可以停止输出,重复刚刚收到的上一片声音,或者产生背景噪声。

联系我们

028-83110277

IP电话机视频电话机供应商

手机:

成都世讯电科信息技术有限公司

成都世讯电科信息技术有限公司是一家多媒体融合通信解决方案及运营服务提供商,公司专注于为广大用户提供简单高效的通信产品和真正符合行业用户需求的行业应用解决方案,让用户享受到个性化、私密性强又具开放性、兼容性强又易于管理的高科技服务,帮助用户实现办公及运营通信的现代化与网络信息化。

公司拥专注于IP多媒体解决方案的应用与实施,有IP多媒体通信系统(IPBX)、IP多媒体通信平台定制与搭建(运营、对讲广播、门禁、调度、音视频会议及与视频监控交互式应用等)、IP电话机、视频电话机、项目租赁、云通信及系统集成等服务。

电话:028-83110277

Q Q:86313858