基于QMF的处理数据的时间对齐的制作方法

文档序号:21093956发布日期:2020-06-16 20:07阅读:211来源:国知局
基于QMF的处理数据的时间对齐的制作方法

本申请是申请号为201480056087.2、申请日为2014年9月8日、发明名称为“基于qmf的处理数据的时间对齐”的发明专利申请的分案申请。

相关申请的交叉引用

本申请要求在2013年9月12日提交的美国临时专利申请第61/877,194号和在2013年11月27日提交的美国临时专利申请第61/909,593号的优先权,这些申请中的每一个通过引用而被整体结合于此。

本文档涉及音频编码器的编码数据与诸如频带复制(sbr)—尤其是高效率(he)高级音频编码(aac)—元数据之类的关联元数据的时间对齐。



背景技术:

音频编码背景下的技术问题是提供表现低延迟的音频编码和解码系统,例如以允许诸如实况广播之类的实时应用。另外,希望提供交换可以被与其他比特流拼接的编码比特流的音频编码和解码系统。此外,计算高效的音频编码和解码系统应当被提供以允许系统的成本高效的实现。本文档解决了在为实况广播保持适当水平的等待时间的同时提供可以被以高效方式拼接的编码比特流的技术问题。本文档描述了一种音频编码和解码系统,其允许以合理的编码延迟拼接比特流,从而使能诸如实况广播之类的应用,在这些应用中可以根据多个源比特流生成广播比特流。



技术实现要素:

根据一个方面,配置为根据接收到的数据流的存取单元来确定音频信号的重构帧的音频解码器被描述。通常,数据流包括用于确定音频信号的相应一系列重构帧的一系列存取单元。音频信号的帧通常包括音频信号的预定数目n个时域样本(其中n大于一)。因此,一系列存取单元可以分别描述音频信号的一系列帧。

存取单元包括波形数据和元数据,其中波形数据和元数据与音频信号的同一重构帧相关联。换言之,用于确定音频信号的重构帧的波形数据和元数据被包括在同一存取单元内。一系列存取单元中的存取单元可以各自包括用于生成音频信号的一系列重构帧中的相应重构帧的波形数据和元数据。具体而言,特定帧的存取单元可以包括确定特定帧的重构帧所必需的(例如所有)数据。

在一个示例中,特定帧的存取单元可以包括执行用于基于(存取单元的波形数据内包括的)特定帧的低波段信号并且基于解码后的元数据来生成特定帧的高波段信号的高频重构(hfr)方案所必需的(例如所有)数据。

可替代地或者除此之外,特定帧的存取单元可以包括执行特定帧的动态范围的扩展所必需的(例如所有)数据。具体而言,特定帧的低波段信号的扩充或扩展可以基于解码后的元数据来执行。为此,解码后的元数据可以包括一个或多个扩展参数。一个或多个扩展参数可以指示以下各项中的一个或多个:压缩/扩展是否将被施加于特定帧;压缩/扩展是否将被以同样方式施加于多声道音频信号的所有声道(即相同的一个或多个扩展增益是否将被施加于多声道音频信号的所有声道或者不同的一个或多个扩展增益是否将被施加于多声道音频信号的不同声道);和/或扩展增益的时间分辨率。

提供一系列存取单元,其中存取单元各自包括生成音频信号的对应重构帧所必需的数据,独立于前一存取单元或者后一存取单元,对于拼接应用而言是有益的,这是因为其允许数据流在两个相邻的存取单元之间被拼接,而不影响拼接点处(例如,直接在拼接点之后)的音频信号的重构帧的感知质量。

在一个示例中,音频信号的重构帧包括低波段信号和高波段信号,其中波形数据指示低波段信号并且其中元数据指示高波段信号的频谱包络。低波段信号可以对应于音频信号中覆盖相对低的频率范围(例如包括比预定交叉频率更小的频率)的分量。高波段信号可以对应于音频信号中覆盖相对高的频率范围(例如包括比预定交叉频率更高的频率)的分量。低波段信号和高波段信号对于低波段信号和高波段信号所覆盖的频率范围可以是互补的。音频解码器可被配置为使用元数据和波形数据执行诸如高波段信号的频带复制(sbr)之类的高频重构(hfr)。因此,元数据可以包括指示高波段信号的频谱包络的hfr元数据或sbr元数据。

音频解码器可以包括被配置为根据波形数据生成多个波形子带信号的波形处理路径。多个波形子带信号可以对应于子带域中(例如qmf域中)的时域波形信号的表示。时域波形信号可以对应于上面提到的低波段信号,并且多个波形子带信号可以对应于多个低波段子带信号。另外,音频解码器可以包括被配置为根据元数据生成解码后的元数据的元数据处理路径。

此外,音频解码器可以包括被配置为根据多个波形子带信号并且根据解码后的元数据生成音频信号的重构帧的元数据施加和合成单元。具体而言,元数据施加和合成单元可被配置为执行用于根据多个波形子带信号(即,在这种情况下,根据多个低波段子带信号)并且根据解码后的元数据生成多个(例如,缩放后的)高波段子带信号的hfr和/或sbr方案。然后可以基于多个(例如缩放后的)高波段子带信号并且基于多个低波段信号来确定音频信号的重构帧。

可替代地或者除此之外,音频解码器可以包括被配置为使用解码后的元数据中的至少一些尤其是使用解码后的元数据内包括的一个或多个扩展参数来执行对多个波形子带信号的扩展或者被配置为使用解码后的元数据中的至少一些尤其是使用解码后的元数据内包括的一个或多个扩展参数来扩展多个波形子带信号的扩展单元。为此,扩展单元可被配置为将一个或多个扩展增益施加于多个波形子带信号。扩展单元可被配置为基于多个波形子带信号、基于一个或多个预定压缩/扩展规则或函数并且/或者基于一个或多个扩展参数来确定一个或多个扩展增益。

波形处理路径和/或元数据处理路径可以包括被配置为使多个波形子带信号和解码后的元数据时间对齐的至少一个延迟单元。具体而言,至少一个延迟单元可被配置为使多个波形子带信号和解码后的元数据对齐,并且/或者将至少一个延迟插入到波形处理路径和/或插入到元数据处理路径,以使得波形处理路径的总体延迟对应于元数据处理路径的总体延迟。可替代地或者除此之外,至少一个延迟单元可被配置为使多个波形子带信号和解码后的元数据时间对齐以使得多个波形子带信号和解码后的元数据被及时提供给元数据施加和合成单元以供元数据施加和合成单元执行处理。具体而言,多个波形子带信号和解码后的元数据可被提供给元数据施加和合成单元以使得元数据施加和合成单元在对多个波形子带信号和/或对解码后的元数据执行处理(例如,hfr或sbr处理)之前不需要缓冲多个波形子带信号和/或解码后的元数据。

换言之,音频解码器可被配置为延迟向可被配置为执行hfr方案的元数据施加和合成单元提供解码后的元数据和/或多个波形子带信号,以使得解码后的元数据和/或多个波形子带信号按照处理的需要而被提供。插入的延迟可被选择为在使得能够对包括一系列存取单元的比特流进行拼接的同时使(包括音频解码器和对应的音频编码器的)音频编解码器的总体延迟降低(例如使之最小化)。因此,音频解码器可被配置为以对音频编解码器的总体延迟的最小影响来处理包括用于确定音频信号的特定重构帧的波形数据和元数据的时间对齐后的存取单元。另外,音频解码器可被配置为在无需对元数据进行重新采样的情况下处理时间对齐后的存取单元。通过这样做,音频解码器被配置为以计算高效的方式并且在不使音频质量劣化的情况下确定音频信号的特定重构帧。因此,音频解码器可被配置为允许以计算高效的方式拼接应用,同时保持高音频质量和低总体延迟。

另外,被配置为使多个波形子带信号和解码后的元数据时间对齐的至少一个延迟单元的使用可以保证多个波形子带信号和解码后的元数据在子带域(多个波形子带信号和解码后的元数据的处理通常被执行之处)中的精确且一致的对齐。

元数据处理路径可以包括元数据延迟单元,该元数据延迟单元被配置为使解码后的元数据延迟音频信号的重构帧的帧长度n的大于零的整数倍。由元数据延迟单元引入的附加延迟可被称作元数据延迟。帧长度n可以对应于音频信号的重构帧内包括的时域样本的数据n。整数倍可以是使得元数据延迟单元所引入的延迟比波形处理路径的处理所引入的延迟(例如在不考虑引入到波形处理路径中的附加波形延迟的情况下)更大。元数据延迟可以取决于音频信号的重构帧的帧长度n。这可以是因为由波形处理路径内的处理引起的延迟取决于帧长度n的事实。具体而言,整数倍对于大于960的帧长度n可以是一并且/或者整数倍对于小于或者等于960的帧长度n可以是二。

如在上面指示,元数据施加和合成单元可被配置为在子带域中(例如在qmf域中)处理解码后的元数据和多个波形子带信号。另外,解码后的元数据可以指示子带域中的元数据(例如指示描述高波段信号的频谱包络的频谱系数)。此外,元数据延迟单元可被配置为使解码后的元数据延迟。作为帧长度n的大于零的整数倍的元数据延迟的使用可以是有益的,因为这保证了多个波形子带信号和解码后的元数据在子带域中的一致对齐(例如用于元数据施加和合成单元内的处理)。具体而言,这保证了解码后的元数据可以被施加到波形信号的正确帧(即施加到多个波形子带信号的正确帧),而无需对元数据进行重新采样。

波形处理路径可以包括波形延迟单元,该波形延迟单元被配置为使多个波形子带信号延迟以使得波形处理路径的总体延迟对应于音频信号的重构帧的帧长度n的大于零的整数倍。由波形延迟单元引入的附加延迟可被称作波形延迟。波形处理路径的整数倍可以对应于元数据处理路径的整数倍。

波形延迟单元和/或元数据延迟单元可被实现为缓冲器,这些缓冲器被配置为在对应于波形延迟的时间量内和/或在对应于元数据延迟的时间量内存储所述多个波形子带信号和/或解码后的元数据。波形延迟单元可被放置在波形处理路径内在元数据施加和合成单元上游的任何位置处。因此,波形延迟单元可被配置为使波形数据和/或多个波形子带信号(和/或波形处理路径内的任何中间数据或信号)延迟。在一个示例中,波形延迟单元可被沿着波形处理路径分布,其中分布的延迟单元各自提供总波形延迟的一部分。波形延迟单元的分布对于波形延迟单元的成本高效的实施方式可以是有益的。以类似于波形延迟单元的方式,元数据延迟单元可被放置在元数据处理路径内在元数据施加和合成单元上游的任何位置处。另外,波形延迟单元可被沿着元数据处理路径分布。

波形处理路径可以包括解码和解量化单元,该解码和解量化单元被配置为对波形数据进行解码和解量化以提供指示波形信号的多个频率系数。因此,波形数据可以包括多个频率系数或者可以指示多个频率系数,这允许生成音频信号的重构帧的波形信号。另外,波形处理路径可以包括波形合成单元,该波形合成单元被配置为根据多个频率系数生成波形信号。波形合成单元可被配置为执行频域到时域的变换。具体而言,波形合成单元可被配置为执行反修正离散余弦变换(mdct)。波形合成单元或者波形合成单元的处理可以引入取决于音频信号的重构帧的帧长度n的延迟。具体而言,波形合成单元所引入的延迟可以对应于半个帧长度n。

在根据波形数据重构波形信号之后,可以结合解码后的元数据来处理波形信号。在一个示例中,波形信号可以在用于使用解码后的元数据确定高波段信号的hfr方案或sbr方案的情况下使用。为此,波形处理路径可以包括被配置为根据波形信号生成多个波形子带信号的分析单元。该分析单元可被配置为例如通过施加正交镜像滤波器(qmf)组来执行时域到子带域的变换。通常,由波形合成单元执行的变换的频率分辨率比由分析单元执行的变换的频率分辨率更高(例如高至少5或10倍)。这可以通过术语“频域”和“子带域”来指示,其中频域可以与比子带域更高的频率分辨率相关联。分析单元可以引入独立于音频信号的重构帧的帧长度n的固定延迟。由分析单元引入的固定延迟可以取决于分析单元所使用的滤波器组中的滤波器的长度。例如,由分析单元引入的固定延迟可以对应于音频信号的320个样本。

波形处理路径的总体延迟可以进一步依赖于元数据与波形数据之间的预定超前(lookahead)。这种超前对于增加音频信号的相邻重构帧之间的连续性可以是有益的。预定超前和/或关联的超前延迟可以对应于音频样本的192或384个样本。超前延迟可以是在确定指示高波段信号的频谱包络的hfr元数据或sbr元数据的情况下的超前。具体而言,超前可以允许对应的音频编码器基于来自音频信号中的直接在后帧的预定数目的样本来确定音频信号的特定帧的hfr元数据或sbr元数据。这在特定帧包括声学瞬变的情况下可以是有益的。超前延迟可以由波形处理路径内包括的超前延迟单元施加。

因此,波形处理路径的总体延迟即波形延迟可以取决于在波形处理路径内执行的不同处理。另外,波形延迟可以取决于在元数据处理路径中引入的元数据延迟。波形延迟可以对应于音频信号中的样本的任意倍。因此,利用被配置为使波形信号延迟的波形延迟单元可以是有益的,其中波形信号被在时域中表示。换言之,对波形信号施加波形延迟可以是有益的。通过这样做,对应于音频信号中的样本的任意整数倍的波形延迟的精确且一致的施加可被保证。

一种示例解码器可以包括元数据延迟单元和波形延迟单元,元数据延迟单元被配置为对元数据施加元数据延迟,其中元数据可以被在子带域中表示,波形延迟单元被配置为对在时域中表示的波形信号施加波形延迟。元数据延迟单元可以施加对应于帧长度n的整数倍的元数据延迟,并且波形延迟单元可以施加对应于音频信号中的样本的整数倍的波形延迟。结果,供在元数据施加和合成单元内进行处理的多个波形子带信号和解码后的元数据的精确且一致的对齐可被保证。多个波形子带信号和解码后的元数据的处理可以在子带域中发生。多个波形子带信号和解码后的元数据的对齐可以在不对解码后的元数据进行重新采样的情况下被实现,从而为对齐提供计算高效且保持质量的手段。

如在上面概述,音频解码器可被配置为执行hfr或者sbr方案。元数据施加和合成单元可以包括元数据施加单元,元数据施加单元被配置为利用多个低波段子带信号和利用解码后的元数据来执行高频重构(例如sbr)。具体而言,元数据施加单元可被配置为转置多个低波段子带信号中的一个或多个以生成多个高波段子带信号。另外,元数据施加单元可被配置为将解码后的元数据施加到多个高波段子带信号以提供多个缩放后的高波段信号。多个缩放后的高波段子带信号可以指示音频信号的重构帧的高波段信号。为了生成音频信号的重构帧,元数据施加和合成单元还可以包括合成单元,该合成单元被配置为根据多个低波段子带信号并且根据多个缩放后的高波段子带信号来生成音频信号的重构帧。合成单元可被配置为例如通过施加逆qmf组来执行相对于分析单元所执行的变换的逆变换。合成单元的滤波器组内包括的滤波器的数目可以比分析单元的滤波器组内包括的滤波器的数目更高(例如以便考虑到由多个缩放后的高波段子带信号产生的扩展的频率范围)。

如在上面指示,音频解码器可以包括扩展单元。扩展单元可被配置为修改(例如增加)多个波形子带信号的动态范围。扩展单元可以位于元数据施加和合成单元的上游。具体而言,多个扩展后的波形子带信号可被用于执行hfr或sbr方案。换言之,用于执行hfr或sbr方案的多个低波段子带信号可以对应于扩展单元的输出处的多个扩展后的波形子带信号。

扩展单元优选位于超前延迟单元的下游。具体而言,扩展单元可以位于超前延迟单元与元数据施加和合成单元之间。通过使扩展单元位于超前延迟单元的下游,即通过在扩展多个波形子带信号之前向波形数据施加超前延迟,保证了元数据内包括的一个或多个扩展参数被施加到正确的波形数据。换言之,对已被延迟超前延迟的波形数据执行扩展保证了来自元数据的一个或多个扩展参数与波形数据同步。

因此,解码后的元数据可以包括一个或多个扩展参数,并且音频解码器可以包括扩展单元,该扩展单元被配置为利用这一个或多个扩展参数基于多个波形子带信号生成多个扩展后的波形子带信号。具体而言,扩展单元可被配置为使用预定压缩函数的逆来生成多个扩展后的波形子带信号。一个或多个扩展参数可以指示预定压缩函数的逆。可以根据多个扩展后的波形子带信号来确定音频信号的重构帧。

如在上面指示,音频解码器可以包括超前延迟单元,该超前延迟单元被配置为根据预定超前使多个波形子带信号延迟,以产生多个延迟后的波形子带信号。扩展单元可被配置为通过扩展多个延迟后的波形子带信号来生成多个扩展后的波形子带信号。换言之,扩展单元可以位于超前延迟单元的下游。这保证了一个或多个扩展参数与这一个或多个扩展参数可以施加于的多个波形子带信号之间的同步性。

元数据施加和合成单元可被配置为通过将解码后的元数据用于(尤其通过将sbr/hfr相关元数据用于)多个波形子带信号的时间部分来生成音频信号的重构帧。时间部分可以对应于多个波形子带信号的多个时隙。时间部分的时间长度可以是可变的,即解码后的元数据所施加于的多个波形子带信号的时间部分的时间长度可以因帧而异。换言之,解码后的元数据的组帧可以改变。时间部分的时间长度的变化可以局限于预定界限。预定界限可以分别对应于帧长度减去超前延迟以及帧长度加上超前延迟。将解码后的波形数据(或其多个部分)施加于不同时间长度的时间部分对于处理瞬时音频信号而言可以是有益的。

扩展单元可被配置为通过将一个或多个扩展参数用于多个波形子带信号的相同时间部分来生成多个扩展后的波形子带信号。换言之,一个或多个扩展参数的组帧可以与元数据施加和合成单元所使用的解码后的元数据的组帧(例如sbr/hfr元数据的组帧)相同。通过这样做,sbr方案和压缩扩展方案的一致性可以被保证并且编码系统的感知质量可以被提高。

根据另一方面,被配置为将音频信号的帧编码为数据流的存取单元的音频编码器被描述。音频编码器可被配置为执行相对于音频解码器所执行的处理任务的对应处理任务。具体而言,音频编码器可被配置为根据音频数据的帧来确定波形数据和元数据并且将波形数据和元数据插入到存取单元中。波形数据和元数据可以指示音频信号的帧的重构帧。换言之,波形数据和元数据可以使得对应的音频解码器能够确定音频信号的原始帧的重构版本。音频信号的帧可以包括低波段信号和高波段信号。波形数据可以指示低波段信号并且元数据可以指示高波段信号的频谱包络。

音频编码器可以包括波形处理路径,该波形处理路径被配置为(例如使用诸如高级音频编码器aac之类的音频核心解码器)根据音频信号的帧—例如根据低波段信号—来生成波形数据。另外,音频编码器包括元数据处理路径,该元数据处理路径被配置为根据音频信号的帧—例如根据高波段信号并且根据低波段信号—来生成元数据。例如,音频编码器可被配置为执行高效率(he)aac,并且对应的音频解码器可被配置为根据heaac对接收到的数据流进行解码。

波形处理路径和/或元数据处理路径可以包括至少一个延迟单元,该至少一个延迟单元被配置为使波形数据和元数据时间对齐以使得音频信号的帧的存取单元包括音频信号的同一帧的波形数据和元数据。该至少一个延迟单元可被配置为使波形数据和元数据时间对齐以使得波形处理路径的总体延迟对应于元数据处理路径的总体延迟。具体而言,该至少一个延迟单元可以是被配置为在波形处理路径中插入附加延迟以使得波形处理路径的总体延迟对应于元数据处理路径的总体延迟的波形延迟单元。可替代地或者除此之外,该至少一个延迟单元可被配置为使波形数据和元数据时间对齐以使得波形数据和元数据被及时地提供给音频编码器的存取单元生成单元以根据波形数据并且根据元数据生成单个存取单元。具体而言,波形数据和元数据可被提供以使得单个存取单元可以在不需要用于缓冲波形数据和/或元数据的缓冲器的情况下被生成。

音频编码器可以包括被配置为根据音频信号的帧来生成多个子带信号的分析单元,其中这多个子带信号可以包括指示低波段信号的多个低波段信号。音频编码器可以包括压缩单元,该压缩单元被配置为利用压缩函数来压缩多个低波段信号,以提供多个压缩后的低波段信号。波形数据可以指示多个压缩后的低波段信号并且元数据可以指示压缩单元所使用的压缩函数。指示高波段信号的频谱包络的元数据可以可施加于音频信号中与指示压缩函数的元数据相同的部分。换言之,指示高波段信号的频谱包络的元数据可以与指示压缩函数的元数据同步。

根据另一方面,分别包括音频信号的一系列帧的一系列存取单元的数据流被描述。来自这一系列存取单元的一个存取单元包括波形数据和元数据。波形数据和元数据与音频信号的一系列帧中的同一特定帧相关联。波形数据和元数据可以指示该特定帧的重构帧。在一个示例中,音频信号的特定帧包括低波段信号和高波段信号,其中波形数据指示低波段信号并且其中元数据指示高波段信号的频谱包络。元数据可以使得音频解码器能够利用hfr方案根据低波段信号生成高波段信号。可替代地或者除此之外,元数据可以指示被施加于低波段信号的压缩函数。因此,元数据可以使得音频解码器能够(利用压缩函数的逆)执行对接收到的低波段信号的动态范围的扩展。

根据另一方面,一种根据接收到的数据流的存取单元来确定音频信号的重构帧的方法被描述。存取单元包括波形数据和元数据,其中波形数据和元数据与音频信号的同一重构帧相关联。在一个示例中,音频信号的重构帧包括低波段信号和高波段信号,其中波形数据指示低波段信号(例如指示描述低波段信号的频率系数)并且其中元数据指示高波段信号的频谱包络(例如指示高波段信号的多个比例因数波段的比例因数)。该方法包括根据波形数据生成多个波形子带信号和根据元数据生成解码后的元数据。另外,该方法包括如在本文档中描述使多个波形子带信号和解码后的元数据时间对齐。此外,该方法包括根据时间对齐后的多个波形子带信号和解码后的元数据来生成音频信号的重构帧。

根据另一方面,一种用于将音频信号的帧编码为数据流的存取单元的方法被描述。音频信号的帧被编码以使得存取单元包括波形数据和元数据。波形数据和元数据指示音频信号的帧的重构帧。在一个示例中,音频信号的帧包括低波段信号和高波段信号,并且该帧被编码以使得波形数据指示低波段信号并且使得元数据指示高波段信号的频谱包络。该方法包括根据音频信号的帧—例如根据低波段信号—生成波形数据以及根据音频信号的帧—例如根据高波段信号以及(例如根据hfr方案)根据低波段信号—生成元数据。此外,该方法包括使波形数据和元数据时间对齐以使得音频信号的帧的存取单元包括音频信号的同一帧的波形数据和元数据。

根据另一方面,一种软件程序被描述。该软件程序可以适用于在处理器上执行并且适用于当在处理器上执行时执行在本文档中概述的方法步骤。

根据另一方面,一种存储介质(例如,非瞬时存储介质)被描述。该存储介质可以包括适用于在处理器上执行并且适用于当在处理器上执行时执行在本文档中概述的方法步骤的软件程序。

根据另一方面,一种计算机程序产品被描述。该计算机程序可以包括当在计算机上执行时用于执行在本文档中概述的方法步骤的可执行指令。

应当注意到,包括如在本专利申请中概述的其优选实施例的方法和系统可被独立使用或者与在本文档中公开的其他方法和系统结合使。另外,在本专利申请中概述的方法和系统的所有方面可以被任意地结合。具体而言,权利要求的特征可以以任意方式相互结合。

附图说明

下面参考附图以例示性方式说明了本发明,在附图中

图1示出了示例音频解码器的框图;

图2a示出了另一示例音频解码器的框图;

图2b示出了一个示例音频编码器的框图;并且

图3a示出了配置为执行音频扩展的示例音频解码器的框图;

图3b示出了配置为执行音频压缩的示例音频编码器的框图;并且

图4例示出音频信号的帧序列的示例组帧。

具体实施方式

如在上面指出,本文档涉及元数据对齐。在下面,元数据的对齐在mpeghe(高效率)aac(高级音频编码)方案的上下文中被概述。然而应当注意到,在本文档中描述的元数据对齐的原理也适用于其他音频编码/解码系统。具体而言,在本文档中描述的元数据对齐方案适用于利用hfr(高频率重构)和/或sbr(频带复制)的音频编码/解码系统以及将来自音频编码器的hfr/sbr元数据发送到对应的音频解码器的音频编码/解码系统。另外,在本文档中描述的元数据对齐方案适用于利用子带(尤其是qmf)域中的应用的音频编码/解码系统。这种应用的一个示例是sbr。其他示例是a耦合、后期处理等。在下文中,元数据对齐方案是在sbr元数据的对齐的上下文中描述的。然而应当注意到,元数据对齐方案也适用于其他类型的元数据,尤其适用于子带域中的其他类型的元数据。

mpeghe-aac数据流包括sbr元数据(也称作a-spx元数据)。数据流的特定编码帧(也称作数据流的au(存取单元))中的sbr元数据通常涉及过去的波形(w)数据。换言之,数据流的au内包括的sbr元数据和波形数据通常不对应于原始音频信号的同一帧。这是由于以下事实:在对波形数据的解码之后,波形数据被提交到若干处理步骤(诸如imdct(逆修改离散余弦变换)和qmf(正交镜像滤波器)分析),其引入信号延迟。在sbr元数据被应用于波形数据的时刻,sbr元数据与经处理的波形数据同步。因此,sbr元数据和波形数据被插入到mpeghe-aac数据流中以使得当音频解码器处的sbr处理需要sbr元数据时sbr元数据到达音频解码器。这种形式的元数据递送可被称作“及时”(jit)元数据递送,因为sbr元数据被插入到数据流中以使得sbr元数据可以被直接应用在音频解码器的信号或处理链内。

jit元数据递送对于传统的编码—发送—解码处理链可以是有益的,以降低总体编码延迟并且以降低音频解码器处的存储器要求。然而,沿着传输路径的数据流的拼接可能导致波形数据与对应的sbr元数据之间的失配。这种失配可能导致拼接点处的听得见的假象,这是因为错误的sbr元数据被用于音频解码器处的频带复制。

鉴于以上,希望提供一种在保持低总体编码延迟的同时允许数据流的拼接的音频编码/解码系统。

图1示出了解决上面提到的技术问题的示例音频解码器100的框图。具体而言,图1中的音频解码器100允许对具有包括音频信号的特定段(例如帧)的波形数据111的au110和包括音频信号的特定段的对应元数据112的au110的数据流进行解码。通过提供对包括具有时间对齐的波形数据111和对应的元数据112的au110的数据流进行解码的音频解码器100,实现数据流的一致拼接。具体而言,保证了可以以保持对应的成对波形数据111和元数据112的方式拼接数据流。

音频解码器100包括在波形数据111的处理链内的延迟单元105。延迟单元105在音频解码器100内可被放置在mdct合成单元102的后面或者下游并且在qmf合成单元107的前面或者上游。具体而言,延迟单元105可被放置在元数据施加单元106(例如,sbr单元106)的前面或者上游,元数据施加单元106被配置为将解码后的元数据128施加于处理后的波形数据。延迟单元105(也称作波形延迟单元105)被配置为将延迟(称作波形延迟)施加于经处理的波形数据。波形延迟被优选地选择为使得波形处理链或者波形处理路径的总体处理延迟(例如,从mdct合成单元102到元数据施加单元106中的元数据的施加)总计为正好一个帧(或者其整数倍)。通过这样做,参数控制数据可以被延迟一个帧(或其倍数)并且au110内的对齐被实现。

图1示出了示例音频解码器100的组件。从au110得到的波形数据111在波形解码和解量化单元101内被解码和解量化以提供(频域中的)多个频率系数121。多个频率系数121利用在低波段合成单元102(例如mdct合成单元)内施加的频域到时域的变换(例如逆mdct,modifieddiscretecosinetransform,修正离散余弦变换)而被合成为(时域)低波段信号122。接下来,低波段信号122利用分析单元103而被变换为多个低波段子带信号123。分析单元103可被配置为将正交镜像滤波器(qmf)组施加于低波段信号122以提供多个低波段子带信号123。元数据112通常被施加于多个低波段子带信号123(或者其转置版本)。

来自au110的元数据112在元数据解码和解量化单元108内被解码和解量化以提供解码后的元数据128。另外,音频解码器100可以包括另一个延迟单元109(称作元数据延迟单元109),该延迟单元109被配置为将延迟(称作元数据延迟)施加于解码后的元数据128。元数据延迟可以对应于帧长度n的整数倍,例如d1=n,其中d1是元数据延迟。因此,元数据处理链的总体延迟对应于d1,例如d1=n。

为了保证处理后的波形数据(即延迟后的多个低波段子带信号123)和处理后的元数据(即延迟后的解码元数据128)在相同时间到达元数据施加单元106,波形处理链(或者路径)的总体延迟应当对应于元数据处理链(或者路径)的总体延迟(即对应于d1)。在波形处理链内,低波段合成单元102通常插入n/2的延迟(即一半帧长度的延迟)。分析单元103通常插入(例如320个样本的)固定延迟。另外,超前(即元数据与波形数据之间的固定偏移)可能需要被考虑在内。在mpeghe-aac的情况下,这种sbr超前可以对应于(由超前单元104表示的)384个样本。超前单元104(其也可被称作超前延迟单元104)可被配置为使波形数据111延迟(例如使多个低波段子带信号123延迟)固定的sbr超前延迟。超前延迟使得对应的音频编码器能够基于音频信号中的后一帧来确定sbr元数据。

为了提供与波形处理链的总体延迟相对应的元数据处理链的总体延迟,波形延迟d2应当使得:

d1=320+384+d2+n/2,

即d2=n/2–320–384(在d1=n的情况下)。

表1示出了多个不同帧长度n的波形延迟d2。可见he-aac的不同帧长度n的最大波长延迟d2在总体最大解码器等待时间为2177个样本的情况下是928个样本。换言之,单个au110内的波形数据111和对应的元数据112的对齐引起最大为928个样本的附加pcm延迟。对于帧尺寸n=1920/1536的块,元数据被延迟1个帧,并且对于帧尺寸n=960/768/512/384,元数据被延迟2个帧。这意味着音频解码器100处的播出延迟独立于块尺寸n而被增加,并且总体编码延迟被增加1个或2个全帧。对应的音频编码器处的最大pcm延迟是1664个样本(对应于音频解码器100的固有等待时间)。

表1

因此,在本文档中提出通过利用信号对齐的元数据112(sam)来解决jit元数据的缺点,该信号对齐的元数据112与对应的波形数据111被对齐为单个au110。具体而言,提出将一个或多个附加的延迟单元引入到音频解码器100中并且/或者引入到对应的音频编码器中以使得每一个编码帧(或者说au)携带其在后一处理阶段—例如在元数据被施加到底层的波形数据时的处理阶段—使用的(例如a-spx)元数据。

应当注意到,在原理上,可以考虑施加与帧长度n的一部分相对应的元数据延迟d1。通过这样做,总体编码延迟可以有可能被降低。然而,如在图1中示出,元数据延迟d1是在qmf域中(即在子带域中)施加的。鉴于此并且鉴于元数据112通常针对每一个帧仅被定义一次的事实,即鉴于元数据112通常针对每一个帧包括一个专用参数集的事实,与帧长度n的一部分相对应的元数据延迟d1的插入可能导致相对于波形数据111的同步问题。另一方面,波形延迟d2是在时域中施加的(如在图1中示出),其中与帧的一部分相对应的延迟可以被以精确方式实现(例如通过使时域信号延迟与波形延迟d2相对应的样本数目)。因此,使元数据112延迟帧的整数倍(其中该帧对应于针对其定义元数据112的最低时间分辨率)和使波形数据111延迟可以具有任意值的波形延迟d2是有益的。与帧长度n的整数倍相对应的元数据延迟d1可以被在子带域中以精确方式实现,并且与样本的任意倍数相对应的波形延迟d2可以被在时域中以精确方式实现。结果,元数据延迟d1和波形延迟d2的结合允许元数据112和波形数据111的精确同步。

与帧长度n的一部分相对应的元数据延迟d1的施加可以通过根据元数据延迟d1对元数据112进行重新采样来实现。然而,元数据112的重新采样通常涉及大量的计算成本。另外,元数据112的重新采样可能导致元数据112的失真,从而影响音频信号的重构帧的质量。鉴于此,鉴于计算效率并鉴于音频质量而将元数据延迟d1限制为帧长度n的整数倍是有益的。

图1还示出了对延迟后的元数据128和延迟后的多个低波段子带信号123的进一步处理。元数据施加单元106被配置为基于多个低波段子带信号123并且基于元数据128来生成多个(例如缩放后的)高波段子带信号126。为此,元数据施加单元106可被配置为转置多个低波段子带信号123中的一个或多个以生成多个高波段子带信号。转置可以包括多个低波段子带信号123中的一个或多个的向上复制(copy-up)处理。另外,元数据施加单元106可被配置为将元数据128(例如元数据128内包括的比例因数)施加到多个高波段子带信号,以生成多个缩放后的高波段子带信号126。多个缩放后的高波段子带信号126通常是利用比例因数来缩放的,以使得多个缩放后的高波段子带信号126的频谱包络模仿音频信号的原始帧的高波段信号的频谱包络(其对应于基于多个低波段子带信号123并且根据多个缩放后的高波段子带信号126生成的音频信号127的重构帧)。

另外,音频解码器100包括合成单元107,合成单元107被配置为(例如利用逆qmf组)根据多个低波段子带信号123并且根据多个缩放后的高波段子带信号126来生成音频信号127的重构帧。

图2a示出了另一个示例音频解码器100的框图。图2a中的音频解码器100包括与图1中的音频解码器100相同的组件。另外,多声道音频处理的示例组件210被示出。可见在图2a的示例中,波形延迟单元105直接位于逆mdct单元102的后面。可以针对多声道音频信号中的(例如5.1或者7.1多声道音频信号中的)每一个声道执行对音频信号127的重构帧的确定。

图2b示出了与图2a中的音频解码器100相对应的示例音频编码器250的框图。音频编码器250被配置为生成包括携带多对对应的波形数据111和元数据112的au110的数据流。音频编码器250包括用于确定元数据的元数据处理链256、257、258、259、260。元数据处理链可以包括用于使元数据与对应的波形数据对齐的元数据延迟单元256。在示出的示例中,音频编码器250的元数据延迟单元256不引入任何附加延迟(因为元数据处理链所引入的延迟比波形处理链所引入的延迟更大)。

另外,音频编码器250包括被配置为根据音频编码器250的输入处的原始音频信号来确定波形数据的波形处理链251、252、253、254、255。波形处理链包括波形延迟单元252,波形延迟单元252被配置为将附加延迟引入到波形处理链中,以使波形数据与对应的元数据对齐。由波形延迟单元252引入的延迟可以使得元数据处理链的(包括波形延迟单元252所插入的波形延迟的)总体延迟对应于波形处理链的总体延迟。在帧长度n=2048的情况下,波形延迟单元252的延迟可以是2048-320=1728个样本。

图3a示出了包括扩展单元301的音频解码器300的选段。图3a中的音频解码器300可以对应于图1和/或图2a中的音频解码器100并且还包括被配置为利用从存取单元110中的解码后的元数据128得到的一个或多个扩展参数310根据多个低波段信号123来确定多个扩展后的低波段信号。通常,一个或多个扩展参数310与存取单元110内包括的sbr(例如a-spx)元数据相耦合。换言之,一个或多个扩展参数310通常可施加于音频信号中与sbr元数据相同的选段或部分。

如在上面概述,存取单元110中的元数据112通常与音频信号的帧的波形数据111相关联,其中该帧包括预定数目n个样本。sbr元数据通常基于多个低波段信号(也称作多个波形子带信号)来确定,其中多个低波段信号可以利用qmf分析来确定。qmf分析产生音频信号的帧的时间-频率表示。具体而言,音频信号的帧的n个样本可以由q(例如q=64)个低波段信号表示,这q个低波段信号各自包括n/q个时隙。对于具有n=2048个样本的帧并且对于q=64,每一个低波段信号包括n/q=32个时隙。

在特定帧内的瞬变的情况下,基于直接在后帧的样本来确定sbr元数据可能是有益的。该特征被称作sbr超前。具体而言,sbr元数据可以基于来自后一帧的预定数目的时隙来确定。例如,后一帧的多达6个时隙可被考虑在内(即,q*6=384个样本)。

sbr超前的使用在图4中被示出,图4示出了将不同的组帧400、430用于sbr或hfr方案的音频信号的一系列帧401、402、403。在组帧400的情况下,sbr/hfr方案不利用sbr超前所提供的灵活性。然而,固定的偏移—即固定的sbr超前延迟—480被用来实现使用sbr超前。在示出的示例中,固定偏移对应于6个时隙。作为该固定偏移480的结果,特定帧402的特定存取单元110的元数据112可部分地施加于位于特定存取单元110之前(并且与直接在前帧401相关联)的存取单元110内包括的波形数据111的时隙。这由sbr元数据411、412、413与帧401、402、403之间的偏移示出。因此,存取单元110内包括的sbr元数据411、412、413可能可施加于被偏移了sbr超前延迟480的波形数据111。sbr元数据411、412、413被施加于波形数据111以提供重构帧421、422、423。

组帧430利用sbr超前。可见sbr元数据431例如由于帧401内的瞬变的发生而可施加于波形数据111的多于32个时隙。另一方面,在后sbr元数据432可施加于波形数据111的少于32个时隙。sbr元数据433再一次可施加于32个时隙。因此,sbr超前允许关于sbr元数据的时间分辨率的灵活性。应当注意到,无论sbr超前的使用并且无论sbr元数据431、432、433的适用性,针对帧401、402、402使用固定偏移480来生成重构帧421、422、423。

音频编码器可被配置为利用音频信号的同一选段或同一部分来确定sbr元数据和一个或多个扩展参数。因此,如果sbr元数据是利用sbr超前来确定的,则一个或多个扩展参数可被确定并且可能可施加于同一sbr超前。具体而言,一个或多个扩展参数可以可施加于与对应的sbr元数据431、432、433相同数目的时隙。

扩展单元301可被配置为将一个或多个扩展增益施加于多个低波段信号123,其中这一个或多个扩展增益通常取决于一个或多个扩展参数310。具体而言,一个或多个扩展参数310可以对用来确定一个或多个扩展增益的一个或多个压缩/扩展规则有影响。换言之,一个或多个扩展参数310可以指示已被对应音频编码器的压缩单元使用的压缩函数。一个或多个扩展参数310可以使得音频解码器能够确定该压缩函数的逆。

一个或多个扩展参数310可以包括指示对应的音频编码器是否已经压缩多个低波段信号的第一扩展参数。如果尚未施加压缩,则音频解码器将不施加扩展。因此,第一扩展参数可以用来打开或者关闭压缩扩展特征。

可替代地或者除此之外,一个或多个扩展参数310可以包括指示相同的一个或多个扩展增益是否将被施加于多声道音频信号的所有声道的第二扩展参数。因此,第二扩展参数可以在压缩扩展特征的每声道施加或者每多声道施加之间进行切换。

可替代地或者除此之外,一个或多个扩展参数310可以包括指示是否要针对帧的所有时隙施加相同的一个或多个扩展增益的第三扩展参数。因此,第三扩展参数可以用来控制压缩扩展特征的时间分辨率。

利用一个或多个扩展参数310,扩展单元301可以通过施加在对应音频编码器处施加的压缩函数的逆来确定多个扩展后的低波段信号。利用一个或多个扩展参数310将已经在对应音频编码器处施加的压缩函数通过信号通知给音频解码器300。

扩展单元301可以位于超前延迟单元104的下游。这保证了一个或多个扩展参数310被施加于多个低波段信号123的正确部分。具体而言,这保证了一个或多个扩展参数310被施加于多个低波段信号123中与(sbr施加单元106内的)sbr参数相同的部分。因此,保证了扩展对与sbr方案相同的时间组帧400、430进行操作。由于sbr超前,组帧400、430可以包括可变数目的时隙,结果,扩展可以对可变数目的时隙进行操作(如在图4的情况下概述)。通过将扩展单元301置于超前延迟单元104的下游,保证了正确的组帧400、430被施加于一个或多个扩展参数。结果,即使在拼接点之后也可以保证高质量的音频信号。

图3b示出了包括压缩单元351的音频编码器350的选段。音频编码器350可以包括图2b中的音频编码器250的组件。压缩单元351可被配置为利用压缩函数来压缩多个低波段信号(例如降低其动态范围)。另外,压缩单元351可被配置为确定指示已被压缩单元351使用的压缩函数的一个或多个扩展参数310,以使得音频解码器300的对应扩展单元301能够施加压缩函数的逆。

可以在sbr超前258的下游执行对多个低波段信号的压缩。另外,音频编码器350可以包括sbr组帧单元353,sbr组帧单元353被配置为保证sbr元数据是针对音频信号中与一个或多个扩展参数310相同的部分来确定的。换言之,sbr组帧单元353可以保证sbr方案对与压缩扩展方案相同的组帧400、430进行操作。鉴于sbr方案(例如在瞬变的情况下)可以对扩展后的帧进行操作的事实,压缩扩展方案也可以对扩展后的帧(包括附加时隙的)进行操作。

在本文档中,已经分别描述了音频编码器和对应的音频解码器,其允许将音频信号编码为一系列时间对齐的au,这些时间对齐的au包括与音频信号的一系列段相关联的波形数据和元数据。时间对齐的au的使用实现了拼接数据流,同时在拼接点处减少了假象。另外,音频编码器和音频解码器被设计为使得可拼接的数据流被以计算高效的方式处理并且使得总体编码延迟保持低。

在本文档中描述的方法和系统可被实现为软件、固件和/或硬件。某些组件例如可被实现为在数字信号处理器或者微处理器上运行的软件。其他组件例如可被实现为硬件和/或实现为专用集成电路。在所描述的方法和系统中遇到的信号可被存储在诸如随机存取存储器或者光学存储介质之类的介质上。它们可以经由诸如无线电网络、卫星网络、无线网络或有线网络—例如因特网—之类的网络而被传送。利用在本文档中描述的方法和系统的典型设备是便携式电子设备或者用来存储和/或渲染音频信号的其他消费者设备。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1