本公开总体上涉及音频信号处理。
背景技术:
1、实时音频处理系统通常会以分组或块的形式接收音频。对于一些音频处理系统,时间信息(以下称为“时间戳”)与每个分组相关联,所述时间信息指示音频何时被捕获或者何时从音频处理系统中播放出来。该时间信息可以被音频处理系统用于各种应用,包括但不限于:时延估计、音频对齐、间断检测、时延变化或未对齐检测和回声消除、抑制和管理。然而,在一些音频处理系统上,时间戳可能不可靠。例如,时间戳可能在短时间段内不稳定或不准确,使得由于时间戳从一个时钟域转换到另一个时钟域(例如,在真实音频时钟与系统时钟之间转换),导致音频中出现抖动或振荡。当时间戳不可靠时,依赖于时间戳的算法可能会执行误检测、不正确的计算或其他不期望的结果。例如,时延估计可能在短时间段内变得不稳定或不准确,或者间断检测可能被误触发。
技术实现思路
1、公开了用于消除抖动的时间戳平滑处理的实施方式。
2、在一些实施例中,一种对与音频分组相关联的时间戳进行平滑处理的方法包括:使用至少一个处理器接收音频分组的一系列输入时间戳和所述音频分组相应的分组长度;使用所述至少一个处理器,基于所述一系列输入时间戳、所述分组长度和采样时间来估计初始时间戳;使用所述至少一个处理器,基于所估计的初始时间戳来计算预测时间戳;以及使用所述至少一个处理器对所述预测时间戳进行平滑处理。
3、在一些实施例中,所述方法进一步包括:使用所述至少一个处理器,基于经平滑处理的预测时间戳来处理当前音频分组中的音频数据。
4、在一些实施例中,估计初始时间戳进一步包括:基于所述一系列输入时间戳、所述音频分组相应的分组长度、所述采样时间和检测到所述一系列输入时间戳中的当前不稳定性的初始时间,迭代地计算估计的初始时间戳;将每个估计的初始时间戳存储在长度为ns的滚动历史数组中;对所述滚动历史数组进行排序;基于排序后的滚动历史数组确定所述初始时间戳的新估计;计算所述新估计的初始时间戳的均值和方差;基于所述方差确定未来预测时间戳是否会稳定;如果确定未来预测时间戳是稳定的,则停止所述迭代计算;以及将所述估计的初始时间戳设置为所述均值在停止所述迭代计算前的最后一个值。
5、在一些实施例中,所述长度ns被选择为时延与所述当前时间戳的平滑量之间的折衷。
6、在一些实施例中,对所述均值和所述方差进行平滑处理。
7、在一些实施例中,基于所述方差确定未来预测时间戳是否会准确且稳定进一步包括:确定当前方差小于前一个方差,并且所述当前方差还小于由用于处理所述音频分组的音频时钟的方差所确定的参数。
8、在一些实施例中,所述迭代计算响应于所述预测时间戳中可能的间断被检测到而恢复。
9、在一些实施例中,基于通信端点的时钟之间或者虚拟标称时钟与真实硬件时钟之间的估计的时钟偏斜、所述预测时间戳与所述输入时间戳之间的经时钟偏斜校正的差异以及经时钟偏斜校正的块长度,来检测可能的间断。
10、在一些实施例中,所述方法进一步包括:跟踪可能的间断已发生的次数;以及如果所述次数超过指定的阈值,则确定间断已发生。
11、在一些实施例中,所述跟踪可能的间断已发生的次数进一步包括:在检测到每个间断之后递增计数器;以及当预测时间戳与所述输入时间戳之间的经时钟偏斜校正的差异大于经时钟偏斜校正的块长度的倍数时,重置所述计数器。
12、在一些实施例中,所述方法进一步包括:确定所述预测时间戳是否稳定;确定是否在所述预测时间戳中检测到可能的间断;以及根据所述预测时间戳是稳定的并且没有检测到可能的间断,估计所述时钟偏斜。
13、在一些实施例中,所述估计的时钟偏斜通过以下方式计算:计算时钟偏斜的初始估计;计算所述时钟偏斜的初始估计的估计均值和方差;将所述方差与阈值方差进行比较;根据所述方差小于所述阈值方差,对所述时钟偏斜的初始估计进行平滑处理以获得所述估计的时钟偏斜。
14、在一些实施例中,所述方法包括:基于所述估计的时钟偏斜来校正所述预测时间戳,以获得经平滑处理的时间戳。
15、在一些实施例中,一种系统包括一个或多个处理器和计算机可读介质,所述计算机可读介质存储有指令,所述指令在由所述一个或多个处理器执行时使所述一个或多个处理器执行前述方法中的任何一种方法。
16、在一些实施例中,一种非暂态计算机可读介质,所述非暂态计算机可读介质存储有指令,所述指令在由一个或多个处理器执行时使所述一个或多个处理器执行前述方法中的任何一种方法。
17、本文公开的其他实施方式涉及一种系统、装置和计算机可读介质。下文的附图和描述中阐述了所公开的实施方式的细节。根据所述描述、附图和权利要求,其他特征、目的和优点是显而易见的。
18、本文公开的特定实施方式提供了以下优点中的一个或多个。所公开的实施例将与当前音频分组相关联的时间戳和以时间为单位的分组长度作为输入。根据该信息,所公开的实施例估计时间戳(下文中也称为“时间戳平滑处理”),并生成指示估计的时间戳是否稳定以及是否在时间戳中检测到间断的标志。另外,所公开的实施例是自适应的,这允许随着时间的推移改进时间戳估计。
1.一种对与音频分组相关联的时间戳进行平滑处理的方法,所述方法包括:
2.如权利要求1所述的方法,进一步包括:
3.如权利要求1或2所述的方法,其中,估计初始时间戳进一步包括:
4.如权利要求3所述的方法,其中,所述长度ns被选择为时延与所述当前时间戳的平滑量之间的折衷。
5.如权利要求3或4所述的方法,其中,所述均值和所述方差被平滑处理。
6.如权利要求3至5中任一项所述的方法,其中,基于所述方差确定未来预测时间戳是否会准确且稳定进一步包括:
7.如权利要求3至6中任一项所述的方法,其中,所述迭代计算响应于检测到所述预测时间戳中可能的间断而恢复。
8.如权利要求7所述的方法,其中,可能的间断是基于通信端点的时钟之间或者虚拟标称时钟与真实硬件时钟之间的估计的时钟偏斜、所述预测时间戳与所述输入时间戳之间的经时钟偏斜校正的差异以及经时钟偏斜校正的块长度来进行检测的。
9.如权利要求8所述的方法,进一步包括:
10.如权利要求9所述的方法,其中,所述跟踪可能的间断已发生的次数进一步包括:
11.如权利要求8至10所述的方法,进一步包括:
12.如权利要求8至11中任一项所述的方法,其中,所述估计的时钟偏斜通过以下方式计算:
13.如权利要求8至12中任一项所述的方法,进一步包括:
14.一种系统,包括:
15.一种存储指令的非暂态计算机可读介质,所述指令在由一个或多个处理器执行时使所述一个或多个处理器执行权利要求1至13中任一项所述的操作。