首页> 中国专利> 分解滤波器组、合成滤波器组、编码器、解码器、混合器及会议系统

分解滤波器组、合成滤波器组、编码器、解码器、混合器及会议系统

摘要

本发明提供了一种用于对多个时域输入帧进行滤波的分解滤波器组的实施例,其中输入帧包括多个有序的输入采样,所述分解滤波器组包括:加窗器,被配置为产生多个加窗帧,其中加窗帧包括多个加窗的采样,其中加窗器被配置为使用采样前移值以重叠的方式来处理所述多个输入帧,其中所述采样前移值小于输入帧的有序输入采样的数目除以2;以及时间/频率转换器,被配置为提供包括多个输出值的输出帧,其中输出帧是加窗帧的频谱表示。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-04-03

    授权

    授权

  • 2012-02-08

    实质审查的生效 IPC(主分类):G10L19/02 申请日:20070829

    实质审查的生效

  • 2011-11-16

    公开

    公开

说明书

分案说明

本申请是申请日为2007年8月29日,申请号为200780038753.X, 题为“分解滤波器组、合成滤波器组、编码器、解码器、混合器及会 议系统”的中国专利申请的分案申请。

技术领域

本发明涉及一种分解滤波器组、合成滤波器组、以及包括上述任 一滤波器组在内的系统,这些可以在以下领域中实现:例如现代音频 编码、音频解码、或其他与音频传输相关的应用。此外,本发明还涉 及混合器以及会议系统。

背景技术

典型地,现代数字音频处理基于编码方案,与直接传输或存储相 应音频数据相比,编码方案可以实现在比特率、传输带宽以及存储空 间方面显著减小。例如,这是通过在发送机端编码音频数据,在接收 机端,在向收听者提供解码的音频数据之前对编码的数据进行解码来 实现的。

可以相对于各种各样的参数来实现这样的数字音频处理系统,这 些参数包括:针对音频数据的典型潜在标准化流的典型存储空间、比 特率、计算复杂度(尤其在实现效率方面)、适于不同应用的可实现质 量、以及分别在对音频数据进行编码和对编码的音频数据进行解码期 间引起的延迟。换言之,数字音频系统可以应用于从音频数据的超低 质量传输到高端传输和存储(例如,针对高质量音乐收听体验)范围 内的许多不同应用领域。

然而,在许多情况下,必须在如比特率、计算复杂度、质量以及 延迟之类的不同参数方面进行折衷。例如,与在可比的质量水平上具 有较高延迟的音频系统相比,包括较低延迟的数字音频系统可能需要 较高比特率的传输带宽。

发明内容

一种用于对多个时域输入帧进行滤波的分解滤波器组的实施例, 其中输入帧包括多个有序的输入采样,所述分解滤波器组包括:加窗 器,被配置为产生多个加窗帧,其中加窗帧包括多个加窗的采样,其 中加窗器被配置为使用采样前移值以重叠的方式来处理所述多个输入 帧,其中所述采样前移值小于输入帧的有序输入采样的数目除以2;以 及时间/频率转换器,被配置为提供包括多个输出值的输出帧,其中输 出帧是加窗帧的频谱表示。

一种用于对多个输入帧进行滤波的合成滤波器组的实施例,其中 每个输入帧包括多个有序的输入值,所述合成滤波器组包括:频率/ 时间转换器,被配置为提供多个输出帧,其中输出帧包括多个有序的 输出采样,输出帧是输入帧的时间表示;加窗器,被配置为产生多个 加窗帧。加窗帧包括多个加窗的采样。所述加窗器还被配置为提供所 述多个加窗的采样,以基于采样前移值以重叠的方式来对其进行处理。 所述合成滤波器组的实施例还包括:重叠/相加器,被配置为提供包括 起始部分和其余部分在内的相加帧,其中相加帧包括多个相加采样, 其中通过将来自至少三个加窗帧的至少三个加窗的采样相加来获得相 加帧的其余部分中的相加采样,通过将来自至少两个不同的加窗帧的 至少两个加窗的采样相加来获得起始部分中的相加采样。为了获得其 余部分中的相加采样而相加的加窗的采样的数目比为了获得起始部分 中的相加采样而相加的加窗的采样的数目至少多一个采样。或者,加 窗器被配置为根据有序的输出采样的顺序至少忽略最早的输出值,或 针对所述多个加窗帧中的每个加窗帧,将相应的加窗的采样设置为预 定值或至少设置为预定范围内的值。重叠/相加器(230)被配置为基 于来自至少三个不同加窗帧的至少三个加窗的采样来提供相加帧的其 余部分中的相加采样,并基于来自至少两个不同加窗帧的至少两个加 窗的采样来提供起始部分中的相加采样。

一种用于对多个输入帧进行滤波的合成滤波器组的实施例,每个 输入帧包括M个有序的输入值yk(0),...,yk(M-1),其中M是正整数,k是 指示帧索引的整数,所述合成滤波器组包括:反IV型离散余弦变换频 率/时间转换器,被配置为提供多个输出帧,输出帧包括基于输入值 yk(0),...,yk(M-1)的2M个有序的输出采样xk(0),...,xk(2M-1);加窗器,被 配置为产生多个加窗帧,加窗帧包括基于以下等式的多个加窗的采样 zk(0),...,zk(2M-1):

zk(n)=w(n)·xk(n),n=0,...,2M-1,

其中n是指示采样索引的整数,w(n)是与采样索引n相对应的实值窗函 数系数;重叠/相加器,被配置为基于以下等式来提供包括多个中间采 样mk(0),...,mk(M-1)的中间帧:

mk(n)=zk(n)+zk-1(n+M),n=0,...,M-1; 以及提升器,被配置为基于以下等式来提供包括多个相加采样 outk(0),...,outk(M-1)的相加帧:

outk(n)=mk(n)+l(n-M/2)·mk-1(M-1-n),n=M/2,...,M-1 以及

outk(n)=mk(n)+l(M-1-n)·outk-1(M-1-n),n=0,...,M/2-1 其中l(0),...,l(M-1)是实值提升系数。

一种编码器的实施例,包括用于对多个时域输入帧进行滤波的分 解滤波器组,其中输入帧包括多个有序的输入采样,所述分解滤波器 组包括:加窗器,被配置为产生多个加窗帧,其中加窗帧包括多个加 窗的采样,其中加窗器被配置为使用采样前移值以重叠的方式来处理 所述多个输入帧,其中所述采样前移值小于输入帧的有序输入采样的 数目除以2;以及时间/频率转换器,被配置为提供包括多个输出值的 输出帧,其中输出帧是加窗帧的频谱表示。

一种解码器的实施例,包括用于对多个输入帧进行滤波的合成滤 波器组,其中每个输入帧包括多个有序的输入值,所述合成滤波器组 包括:频率/时间转换器,被配置为提供多个输出帧,其中输出帧包括 多个有序的输出采样,输出帧是输入帧的时间表示;加窗器,被配置 为产生多个加窗帧,加窗帧包括多个加窗的采样,其中所述加窗器被 配置为提供所述多个加窗的采样,以基于采样前移值以重叠的方式来 对其进行处理;重叠/相加器,被配置为提供包括起始部分和其余部分 在内的相加帧,其中相加帧包括多个相加采样,其中通过将来自至少 三个加窗帧的至少三个加窗的采样相加来获得相加帧的其余部分中的 相加采样,通过将来自至少两个不同的加窗帧的至少两个加窗的采样 相加来获得起始部分中的相加采样,其中,为了获得其余部分中的相 加采样而相加的加窗的采样的数目比为了获得起始部分中的相加采样 而相加的加窗的采样的数目至少多一个采样,

或者

其中,所述加窗器被配置为根据有序的输出采样的顺序至少忽略 最早的输出值,或针对所述多个加窗帧中的每个加窗帧,将相应的加 窗的采样设置为预定值或至少设置为预定范围内的值;以及,重叠/ 相加器被配置为基于来自至少三个不同加窗帧的至少三个加窗的采样 来提供相加帧的其余部分中的相加采样,并基于来自至少两个不同加 窗帧的至少两个加窗的采样来提供起始部分中的相加采样。

一种解码器的实施例,包括用于对多个输入帧进行滤波的合成滤 波器组,其中每个输入帧包括M个有序的输入值yk(0),...,yk(M-1),其 中M是正整数,k是指示帧索引的整数,所述合成滤波器组包括:反IV 型离散余弦变换频率/时间转换器,被配置为提供多个输出帧,输出帧 包括基于输入值yk(0),...,yk(M-1)的2M个有序的输出采样 xk(0),...,xk(2M-1);加窗器,被配置为产生多个加窗帧,加窗帧包括基 于以下等式的多个加窗的采样zk(0),...,zk(2M-1):

zk(n)=w(n)·xk(n),n=0,...,2M-1,

其中n是指示采样索引的整数,w(n)是与采样索引n相对应的实值窗函 数系数;重叠/相加器,被配置为基于以下等式来提供包括多个中间采 样mk(0),...,mk(M-1)的中间帧:

mk(n)=zk(n)+zk-1(n+M),n=0,...,M-1;

以及提升器,被配置为基于以下等式来提供包括多个相加采样 outk(0),...,outk(M-1)的相加帧:

outk(n)=mk(n)+l(n-M/2)·mk-1(M-1-n),n=M/2,...,M-1 以及

outk(n)=mk(n)+l(M-1-n)·outk-1(M-1-n),n=0,...,M/2-1 其中l(0),...,l(M-1)是实值提升系数。

一种用于对多个输入帧进行混合的混合器的实施例,其中每个输 入帧是相应时域帧的频谱表示,所述多个输入帧中的每个输入帧由不 同的源来提供,所述混合器包括:熵解码器,被配置为对所述多个输 入帧进行熵解码;缩放器,被配置为在频域中对多个熵解码后的输入 帧进行缩放,并被配置为在频域中获得多个缩放后的帧,其中每个缩 放后的帧与熵解码后的帧相对应;相加器,被配置为在频域中将缩放 后的帧相加,以在频域中产生相加帧;以及熵编码器,被配置为对所 述相加帧进行熵编码以获得混合帧。

一种会议系统的实施例,包括用于对多个输入帧进行混合的混合 器,其中每个输入帧是相应时域帧的频谱表示,所述多个输入帧中的 每个输入帧由不同的源来提供,所述混合器包括:熵解码器,被配置 为对所述多个输入帧进行熵解码;缩放器,被配置为在频域中对多个 熵解码后的输入帧进行缩放,并被配置为在频域中获得多个缩放后的 帧,其中每个缩放后的帧与一个熵解码后的输入帧相对应;相加器, 被配置为在频域中将缩放后的帧相加,以在频域中产生相加帧;以及 熵编码器,被配置为对所述相加帧进行熵编码以获得混合帧。

附图说明

以下参考附图来描述本发明的实施例。

图1示出了分解滤波器组的框图;

图2示出了由分解滤波器组的实施例处理的输入帧的示意表示;

图3示出了合成滤波器组的框图;

图4示出了在由合成滤波器组处理的框架中输出帧的示意表示;

图5示出了分解滤波器组和合成滤波器组的实施例的分解窗函数 和合成窗函数的示意表示;

图6示出了分解窗函数和合成窗函数与正弦窗函数的比较;

图7示出了不同窗函数的另一种比较;

图8示出了对于图7所示三个不同窗函数的前回声(pre-echo)性 态的比较;

图9示意性地示出了人耳的一般时间掩蔽特性;

图10示出了正弦窗和低延迟窗的频率响应的比较;

图11示出了正弦窗和低重叠窗的频率响应的比较;

图12示出了编码器的实施例;

图13示出了解码器的实施例;

图14a示出了包括编码器和解码器在内的系统;

图14b示出了图14a所示的系统中包括的不同的延迟源;

图15示出了包括延迟比较的表;

图16示出了包括混合器的实施例在内的会议系统的实施例;

图17示出了作为服务器或媒体控制单元的会议系统的另一实施 例;

图18示出了媒体控制单元的框图;

图19示出了作为高效实现方式的合成滤波器组的实施例;

图20示出了包括对合成滤波器组或分解滤波器组(AAC ELD编 解码器)的实施例的计算效率的评估在内的表;

图21示出了包括对AAC LD编解码器的计算效率的评估在内的 表;

图22示出了包括对AAC LC编解码器的计算复杂度的评估在内的 表;

图23a和23b示出了包括对三个不同编解码器的RAM和ROM的存 储器效率的评估的比较在内的表;以及

图24示出了包括针对MUSHRA测试所使用的代码变换器(codex) 的列表在内的表。

具体实施方式

图1至24示出了对分解滤波器组、合成滤波器组、编码器、解码 器、混合器、会议系统的不同实施例以及本发明的其他实施例的功能 特性和特征加以描述的框图和其他图示。然而,在描述合成滤波器组 的实施例之前,将参考图1和2更详细地描述分解滤波器组的实施例以 及由分解滤波器组的实施例处理的输入帧的示意表示。

图1示出了分解滤波器组100的第一实施例,分解滤波器组100包 括加窗器110和时间/频率转换器120。更准确地,加窗器110被配置为 接收多个时域输入帧,在输入110i处,每个输入帧包括多个有序的输 入采样。加窗器110还适于产生多个加窗帧,所述加窗帧是由加窗器在 加窗器110的输出110o处提供的。每个加窗帧包括多个加窗的采样,其 中,如将在图2中更详细地说明的,加窗器110还被配置为使用采样前 移值(sample advance value)以重叠的方式来处理多个加窗帧。

时间/频率转换器120能够接收加窗器110输出的加窗帧,并被配置 为提供包括多个输出值的输出帧,使得输出帧是加窗帧的频谱表示。

为了说明和概述分解滤波器组100的实施例的功能特性和特征, 图2将五个输入帧130-(k-3)、130-(k-2)、130-(k-1)、130-k以及130-(k+1) 的示意表示示为时间的函数,如图2底部的箭头140所示。

在下文中,如图2中的虚线所示,参考输入帧130-k来更详细地描 述分解滤波器组100的实施例的操作。相对于该输入帧130-k,输入帧 130-(k+1)是未来的输入帧,而三个输入帧130-(k-1)、130-(k-2)、和 130-(k-3)是过去的输入帧。换言之,k是指示帧索引的整数,使得帧索 引越大,则相应输入帧位于“未来”越远处。相应地,索引k越小,则输 入帧位于“过去”越远处。

每个输入帧130包括至少两个等长的子部分150。更准确地,在图 2所示的示意表示所基于的分解滤波器组100的实施例的情况下,输入 帧130-k和其他输入帧130包括在输入采样方面长度相等的子部分 150-2、150-3以及150-4。输入帧130的这些子部分中的每个子部分包 括M个输入采样,其中M是正整数。此外,输入帧130还包括第一子部 分150-1,第一子部分150-1可以也包括M个输入帧。在这种情况下, 如将在以后的阶段更详细地说明的,第一子部分150-1包括输入帧130 的初始部分160,初始部分160可以包括输入采样或其他值。然而,根 据分解滤波器组的实施例的具体实现,第一子部分150-1完全不需要包 括初始部分160。换言之,与其他子部分150-2、150-3、150-4相比, 第一子部分150-1原则上可以包括较少数目的输入采样。随后还将说明 针对这种情况的示例。

可选地,除了第一子部分150-1以外,其他子部分150-2、150-3、 150-4典型地包括相同数目M的输入采样,数目M等于所谓的采样前移 值170,采样前移值170指示两个连续输入帧130相对于时间和彼此而移 动的输入采样的数目。换言之,如图1和2所示,在分解滤波器组100 的实施例的情况下,箭头170所指示的采样前移值M等于子部分150-2、 150-3、150-4的长度,加窗器110以重叠的方式来产生和处理输入帧 130。此外,采样前移值M(箭头170)还与子部分150-2至150-4的长 度相同。

因此,对于大量输入采样而言,在两个输入帧都包括这些输入采 样的意义上,输入帧130-k和130-(k+1)是相等的,同时这两个输入帧130 相对于其各自的子部分150具有偏移。更准确地,输入帧130-k的第三 子部分150-3等于输入帧130-(k+1)的第四子部分150-4。相应地,输入 帧130-k的第二子部分150-2与输入帧130-(k+1)的第三子部分150-3相 同。

再换言之,在图2所示实施例的情况下,与帧索引k和(k+1)相对应 的两个输入帧130-k、130-(k+1)在两个子部分150方面是相同的,但是 对于具有帧索引(k+1)的输入帧而言采样已经移动了。

两个前述输入帧130-k和130-(k+1)还共享来自输入帧130-k的第一 子部分150-1的至少一个采样。更准确地,在图2所示的实施例的情况 下,输入帧130-k的第一子部分150-1中不是初始部分160的一部分的所 有输入采样表现为输入帧130-(k+1)的第二子部分150-2的一部分。然 而,根据分解滤波器组的实施例的具体实现,与前一输入帧130-k的初 始部分160相对应的第二子部分150-2中的输入采样可以或可以不基于 相应输入帧130的初始部分160中的输入值或输入采样。

如果存在初始部分160使得第一子部分150-1中的输入帧的数目等 于其他子部分150-2至150-4中的输入采样的数目,则原则上需要考虑 两种不同情况,尽管将要说明这两种“极端”情况之间的其他情况也是 可能的。

如果初始部分160包括“有意义”(在初始部分160中的输入采样确 实表示时域中的音频信号的意义上)的编码的输入采样,则这些输入 采样还将是下一输入帧130-(k+1)的子部分150-2的一部分。然而,这种 情况在分解滤波器组的实施例的许多应用中不是最优实现,因为该选 项可能导致额外的延迟。

然而,在初始部分160不包括“有意义”的输入采样的情况下(在这 种情况下还可以将输入采样称作输入值),初始部分160的相应输入值 可以包括随机值、预定的、固定的、可适配的或可编程的值,例如可 以利用可以与分解滤波器组实施例的加窗器110的输入110i耦合的单 元或模块以算法计算、确定或其他固定的方式来提供这些值。然而, 在这种情况下,典型地需要该模块提供以下输入帧作为输入帧 130-(k+1):该输入帧在第二子部分150-2中与前一输入帧的初始部分 160相对应的区域中包含“有意义”的输入采样,该有意义的输入采样确 实与相应音频信号相对应。此外,典型地与加窗器110的输入110i耦合 的单元或模块还需要提供与输入帧130-(k+1)的第一子部分150-1的框 架中的音频信号相对应的有意义的输入采样。

换言之,在这种情况下,在收集了足够的输入采样之后,将与帧 索引k相对应的输入帧130-k提供给分解滤波器组100的实施例,使得可 以使用这些输入采样来填充该输入帧的子部分150-1。然后,利用输入 采样或输入值(可以包括随机值或任何其他值,如预定的、固定的、 可适配的或可编程的值或这些值的任何其他组合)来填充第一子部分 150中的余下部分,即初始部分160。因为与典型采样频率相比,原则 上可以以非常高的速度来实现这一点,所以在典型的采样频率(如在 几kHz直到几百kHz的范围内的采样频率)所给出的标度上,为输入帧 130-k的初始部分160提供这样“无意义”的输入采样并不需要很长一段 时间。

然而,该单元或模块继续根据音频信号来采集输入采样,以将这 些输入采样结合入与帧索引k+1相对应的下一输入帧130-(k+1)中。换 言之,尽管该模块或单元未完成采集足够的输入采样来为输入帧130-k 的第一子部分150-1提供足够的输入采样从而将该输入帧的第一子部 分150-1完全填满,然而,一旦有足够的输入采样可用,该单元或模块 就将该输入帧提供给分解滤波器组100的实施例,使得可以在没有初始 部分160的情况下利用输入采样来填充第一子部分150-1。

后续的输入采样将用于填充下一输入帧130-(k+1)的第二子部分 150-2的其余输入采样,直到收集到足够的输入采样为止,使得还可以 对该下一输入帧的第一子部分150-1进行填充,直到该帧的初始部分 160的起始为止。接着,再一次,将利用随机数或其他“无意义”的输入 采样或输入值来填充初始部分160。

因此,尽管在图2中指示了在图2所示的实施例的情况下采样前移 值170长度等于子部分150-2至150-4的长度,然而在图2中,从输入帧 130-k的初始部分160的起始处直到下一输入帧130-(k+1)的初始部分 160起始处,示出了表示采样前移值170的误差。

因此,与音频信号(与初始部分160相对应)中的事件相对应的 输入采样在后两种情况下将不会出现在相应的输入帧130-k中,而是出 现在下一输入帧130-(k+1)中第二子部分150-2的框架中。

换言之,分解滤波器组100的许多实施例可以为输出帧提供减小 的延迟,这是因为,与初始部分160相对应的输入采样不是相应输入帧 130-k的一部分,而只会影响随后的输入帧130-(k+1)。换言之,分解滤 波器组的实施例可以在许多应用和实现中提供更快地基于输入帧来提 供输出帧的优点,这是因为,第一子部分150不需要包括与其他子部分 150-2至150-4相同数目的输入采样。然而,在下一帧130中,在该相应 输入帧130的第二子部分150-2的框架中包括在“缺失部分”中所包括的 信息。

然而,如之前所述,还可能存在以下情况:没有任何输入帧130 确实包括初始部分160。在这种情况下,每个输入帧130的长度不再是 采样前移值170或子部分150-2至150-4的长度的整数倍。更准确地,在 这种情况下,每个输入帧130的长度与采样前移值的相应整数倍相差的 输入采样数目是为加窗器110提供相应输入帧的模块或单元未提供完 整的第一子部分150-1而所缺少的数目。换言之,这样的输入帧130的 总长度与采样前移值的相应整数倍相差的差值是第一子部分150-1的 长度与其他子部分150-2至150-4的长度之差。

然而,在所提到的后两种情况下,该模块或单元(例如可以包括 采样器、采样与保持级、采样与保持器、或量化器)可以开始提供达 不到预定输入采样数目的相应输入帧130,以便以较短的延迟(与利用 相应输入采样来填充完整的第一子部分150-1的情况相比)将每个输入 帧130提供给分解滤波器组100的实施例。

如上所述,例如,这种单元或模块(可以耦合到加窗器110的输 入110i)可以包括采样器和/或量化器,如模拟/数字转换器(A/D转换 器)。然而,根据具体实现,这样的模块或单元还可以包括一些存储器 或寄存器,以存储与音频信号相对应的输入采样。

此外,这样的单元或模块可以基于采样前移值M,以重叠的方式 来提供每个输入帧。换言之,输入帧包括比针对每帧或每块所收集的 采样数目的两倍更多的输入采样。在许多实施例中,这样的单元或模 块适于使得两个连续产生的输入帧基于在时间上偏移了采样前移值的 多个采样。在这种情况下,两个连续产生的输入帧中后一输入帧基于 至少一个新的输出采样,因为在两个输入帧中的前一输入帧中,最早 的输出采样和前述多个采样向后偏移了采样前移值。

尽管目前为止针对每个输入帧130包括四个子部分150的情况描 述了分解滤波器组100的实施例,其中第一子部分150不需要包括与其 他子部分相同数目的输入采样,然而,子部分的数目不需要如在图2 所示的情况下那样等于4。更准确地,输入帧130原则上可以包括大于 采样前移值M(箭头170)的两倍大小的任意数目的输入采样,其中初 始部分160的输入值(如果存在的话)的数目需要包含在该数目中,因 为考虑基于使用帧的系统的实施例的一些实现方式可能是有帮助的, 其中每一帧包括与采样前移值相同的采样数目。换言之,在分解滤波 器组100的实施例的框架中,可以使用任意数目的子部分,每个子部分 的长度与采样前移值M(箭头170)相同,在基于帧的系统中,子部分 的数目大于或等于3。否则,原则上可以使用每输入帧130任何数目的 输入采样,只要该数目大于采样前移值的两倍。

如图1所示,分解滤波器组100的实施例中的加窗器110被配置为: 采用如先前所述的重叠的方式,基于采样前移值M(箭头170)来产生 基于相应输入帧130的多个加窗帧。更准确地,根据加窗器110的具体 实现,将加窗器110配置为根据加权函数来产生加窗帧,所述加权函数 例如可以包括对人耳的听觉特性进行建模的对数依赖关系。然而,还 可以实现其他加权函数,如对人耳的心理声学特性进行建模的加权函 数。然而,例如,在分解滤波器组的实施例中实现的加窗器函数还可 以被实现为将输入帧的每个输入采样与包括实值采样专用窗系数的实 值加窗器函数相乘。

在图2中示出了这种实现的示例。更准确地,图2示出了一种可能 的窗函数或加窗函数180的示意性粗略表示,如图1所示的加窗器110 基于相应的输入帧130,使用该函数180来产生加窗帧。根据分解滤波 器组100的具体实现,加窗器110还可以以不同的方式将加窗帧提供给 时间/频率转换器120。

加窗器110被配置为基于每个输入帧130来产生加窗帧,其中每个 加窗帧包括多个加窗的采样。更准确地,可以采用不同的方式来配置 加窗器110。根据输入帧130的长度以及根据要提供给时间/频率提供器 120的加窗帧的长度,对于如何将加窗器110实现为产生加窗帧,可以 实现多种可能性。

例如,如果输入帧130包括初始部分160,使得在图2所示实施例 的情况下,每个输入帧130的第一子部分150-1与其他子部分150-2至 150-4包括相同数目的输入值或输入采样,则例如将加窗器110配置为 使得加窗帧也包括与输入帧130所包括的输入值的输入采样相同数目 的加窗的采样。在这种情况下,如上所述,由于输入帧130的结构,可 以利用加窗器110基于前述加窗函数或窗函数来处理除输入帧130的输 入值以外输入帧中的所有输入采样。在这种情况下,可以将初始部分 160的输入值设置为预定值或预定范围内的至少一个值。

例如,在分解滤波器组100的一个实施例中,该预定值可以等于 值0(零),而在其他实施例中可能需要不同的值。例如,原则上对于 输入帧130的初始部分160可以使用任何值,这表示相应的值对于音频 信号无关紧要。例如,该预定值可以是音频信号的输入采样的典型范 围以外的值。例如,可以将加窗帧中与输入帧130的初始部分160相对 应的部分中的加窗的采样设置为输入音频信号的最大幅度的两倍或更 大的值,这表示这些值与要进一步处理的信号不相对应。例如,还可 以使用实现专用的绝对值的负值。

此外,在分解滤波器组100的实施例中,还可以将加窗帧中与输 入帧130的初始部分160相对应的加窗的采样设置为预定范围内的一个 或更多个值。原则上,这样的预定范围例如可以是较小值的范围,该 范围对于音频体验没有意义,因此无法可听地辨别结果或不显著干扰 收听体验。在这种情况下,例如可以将预定范围表示为值的集合,该 集合中的值的绝对值小于或等于预定的、可编程的、可适配的或固定 的最大阈值。例如,可以将这样的阈值表示为10的幂或2的幂,如10s或2s,其中s是依赖于具体实现的整数值。

然而,原则上,该预定范围还可以包括比一些有意义的值更大的 值。更准确地,该预定范围还可以包括绝对值大于或等于可编程的、 预定的、或固定的最小阈值的值。原则上同样可以以2的幂或10的幂(如 2s或10s)来表示这样的最小阈值,其中s也是依赖于分解滤波器组的实 施例的具体实现的整数。

在数字实现的情况下,该预定范围例如可以包括:在预定范围包 括较小值的情况下能够通过设置或不设置最低有效位或多个最低有效 位来表示的值。在该预定范围包括更大的值的情况下,如上所述,该 预定范围可以包括:能够通过设置或不设置最高有效位或多个最高有 效位来表示的值。然而,预定值以及预定范围还可以包括其他值,所 述其他值例如可以是基于上述值和阈值,通过将其乘以因子而产生的 值。

根据分解滤波器组100的实施例的具体实现,还可以将加窗器110 适配为使得在输出110o处提供的加窗帧不包括与输入帧130的初始部 分160的输入帧相对应的加窗的采样。在这种情况下,例如,加窗帧的 长度与相应输入帧130的长度可能相差初始部分160的长度。换言之, 在这种情况下,可以将加窗器110配置为或适配为忽略按照如先前所述 输入帧的顺序在时间上最近的输入采样。换言之,在分解滤波器组100 的一些实施例中,可以对加窗器110进行配置,以忽略输入帧130的初 始部分160中一个或更多个或甚至所有的输入值或输入采样。在这种情 况下,加窗帧的长度等于输入帧130的长度与输入帧130的初始部分160 的长度之差。

作为另一选项,如上所述,每个输入帧130可以完全不包括初始 部分160。在这种情况下,第一子部分150-1在相应子部分150的长度方 面或在输入采样的数目方面与其他子部分150-2至150-4不同。在这种 情况下,加窗帧可以包括或可以不包括加窗的采样或加窗的值,使得 与输入帧130的第一子部分150-1相对应的加窗帧的类似第一子部分包 括与输入帧130的子部分150相对应的其他子部分相同数目的加窗的采 样或加窗的值。在这种情况下,如上所述,可以将另外的加窗的采样 或加窗的值设置为预定值或预定范围内的至少一个值。

此外,在分解滤波器组100的实施例中,可以将加窗器110配置为 使得输入帧130和所产生的加窗帧都包括相同数目的值或采样,其中输 入帧130和所产生的加窗帧都不包括初始部分160或与初始部分160相 对应的采样。在这种情况下,与加窗帧的相应子部分的输入帧130的其 他子部分150-2至150-4相比,输入帧130的第一子部分150-1以及加窗 帧的相应子部分包括更少的值或采样。

原则上应注意,加窗帧不需要与包括初始部分160的输入帧130的 长度相对应,或与不包括初始部分160的输入帧130相对应。原则上, 加窗器110也可以适配为使得加窗帧包括与输入帧130的初始部分160 中的值相对应的一个或多个值或采样。

在本文中,还应注意,在分解滤波器组100的一些实施例中,初 始部分160表示或至少包括与输入帧130的输入值或输入采样的连通子 集相对应的采样索引n的连通子集。因此,如果可应用,则包括相应初 始部分的加窗帧还包括与加窗帧的相应初始部分相对应的加窗的采样 的采样索引n的连通子集,其中所述加窗帧的相应初始部分也称为加窗 帧的起始部分或开始部分。加窗帧非初始部分或起始部分的余下部分 有时也称作其余部分。

如先前已经指出的,在分解滤波器组100的实施例中,可以将加 窗器110适配为:基于窗函数来产生加窗帧中与输入帧130的初始部分 160(如果存在的话)不相对应的加窗的值的加窗的采样,所述窗函数 可以例如以基于以相应输入采样为基础的对数计算来产生加窗的采样 的方式来结合心理声学模型。然而,在分解滤波器组100的不同实施例 中,加窗器110还可以适于使得通过将相应输入采样与在定义集合上定 义的窗函数的采样专用加窗后的系数相乘来产生每个加窗的采样。

在分解滤波器组100的许多实施例中,相应加窗器110适于使得由 窗系数所描述的窗函数在定义集合上关于定义集合的中点不对称。此 外,在分解滤波器组100的许多实施例中,在定义集合中相对于中点的 第一半部分中,窗函数的窗系数的绝对值大于窗函数的所有窗系数的 最大绝对值的10%、20%或30%、50%,其中,在定义集合中相对于中 点的第二半部分中,窗函数包括较少的窗系数其绝对值大于窗系数最 大绝对值的前述百分比。在图2中每个输入帧130的情况下,示意性地 将这样的窗函数示为窗函数180。将在图5至11的情况下描述窗函数的 更多示例,包括对分解滤波器组和合成滤波器组的一些实施例所提供 的频谱和其他特性及机会的简要讨论,其中所述分解滤波器组和合成 滤波器组实现如这些图中所示并在段落中描述的窗函数。

除了加窗器110以外,分解滤波器组100的实施例还包括时间/频率 转换器120,从加窗器110向所述时间/频率转换器120提供加窗帧。时 间/频率转换器120继而适于针对每个加窗帧产生输出帧或多个输出 帧,使得输出帧是相应加窗帧的频谱表示。如随后将更详细说明的, 时间/频率转换器120适于使得输出帧包括的输出值数目少于输入帧的 输入采样数目的一半、或少于加窗帧的加窗的采样的半数的一半。

此外,可以将时间/频率转换器120实现为使得所述时间/频率转换 器120基于离散余弦变换和/或离散正弦变换,从而输出帧的输出采样 的数目小于输入帧的输入采样数目的一半。然而,将简短概述分解滤 波器组100的可能实施例的更多实现细节。

在分解滤波器组的一些实施例中,将时间/频率转换器120配置为 使得时间/频率转换器120输出多个输出采样,所述输出采样的数目等 于起始部分150-2、150-3、150-4的输入采样的数目或与采样前移值170 相同,所述起始部分150-2、150-3、150-4不是输入帧130的第一子部 分150-1的起始部分。换言之,在分解滤波器组100的许多实施例中, 输出采样的数目等于整数M,整数M表示输入帧130前述子部分150长 度的采样前移值。在许多实施例中,采样前移值或M的典型值是480 或512。然而,应注意,在分解滤波器组的实施例中还可以容易地实现 不同的整数M,如M=360。

此外,应注意,在分解滤波器组的一些实施例中,输入帧130的 初始部分160,或其他子部分150-2、150-3、150-4中采样数目与输入 帧130的第一子部分150-1中采样数目之差等于M/4。换言之,在M=480 的分解滤波器组100的实施例的情况下,初始部分160的长度或前述差 值等于120(M/4)个采样,而在分解滤波器组100的一些实施例中, 在M=512的情况下,前述差值的初始部分160的长度等于128(M/4)。 然而,还应注意,在这种情况下,还可以实现不同长度,不表示对分 解滤波器组100的实施例的限制。

如之前也指出的,因为时间/频率转换器120可以例如基于离散余 弦变换或离散正弦变换,所以有时也关于参数N=2M来讨论和说明分 解滤波器组的实施例,其中N=2M表示修正离散余弦变换(MDCT) 转换器的输入帧的长度。因此,在分解滤波器组100的前述实施例中, 参数N等于960(M=480)和1024(M=512)。

如随后将更详细地说明的,分解滤波器组100的实施例可以提供 的优点在于:在完全不降低音频质量或不以某种方式显著降低音频质 量的前提下,使数字音频处理的延迟更低。换言之,分解滤波器组的 实施例提供了以下机会:例如在(音频)编解码器(编解码器=编码 器/解码器或编码/解码)的框架中,实现增强的低延迟编码模式,提 供更低的延迟,与许多可用代码变换器相比具有至少可比的频率响应 和增强的前回声性态。此外,如将在会议系统的实施例的情况下更详 细地说明的,在分解滤波器组的一些实施例以及包括分解滤波器组100 的实施例在内的系统实施例中,针对所有类型信号只要单个窗函数就 能够实现前述优点。

要强调的是,分解滤波器组100的实施例的输入帧不需要包括如 图2所示的四个子部分150-1至150-4。这仅仅表示为了简单起见而选择 的一种可能性。相应地,也不需要将加窗器适配为使加窗帧也包括四 个相应的子部分,或将时间/频率转换器120适配为使其能够基于包括 四个子部分的加窗帧来提供输出帧。这仅仅是在图2的情况下简单选择 的,以能够以清楚简要的方式来说明分解滤波器组100的一些实施例。 然而,如在与初始部分160及其在输入帧130中的出现有关的不同选项 的情况下说明的,还可以将在输入帧130的长度方面关于输入帧的叙述 转移至加窗帧的长度。

在下文中,关于为将容错高级音频编解码器低延迟实现(ER AAC LD)的分解滤波器组适配为达到有时也称为低延迟(分解滤波器组) 的分解滤波器组100的实施例而进行的修改,对根据ER AAC LD的分 解滤波器组的实施例的可能实现加以说明。换言之,如以下限定的, 为了实现充分减小的延迟或低延迟,在ER AAC LD情况下对标准编码 器的一些修改可能是有用的。

在这种情况下,分解滤波器组100的实施例中的加窗器110被配置 为根据以下方程或表达式来产生加窗的采样zi,n

zi,n=w(N-1-n)·x′i,n    (1)

其中,i是指示加窗帧和/或输入帧的帧索引或块索引的整数,n是指示 -N到N-1范围内的采样索引的整数。

换言之,在输出帧130的框架中包括初始序列160的实施例中,通 过针对采样索引n=-N,...,N-1实现上述表达式或方程,将加窗扩展为通 过(pass),其中,如将在图5至11的情况下更详细说明的,w(n)是与 窗函数相对应的窗系数。在分解滤波器组100的实施例的情况下,如通 过比较窗函数w(n-1-n)的自变量可以看出的,通过反转顺序将合成窗 函数w用作分解窗函数。如在图3和4的情况下概述的,通过镜像(例 如相对于定义集合的中点)来得到镜像版本,可以基于分解窗函数来 构造或产生用于合成滤波器组的实施例的窗函数。换言之,图5示出了 低延迟窗函数的图,其中,简单地,分解窗是合成窗的时间反转副本。 在这种情况下还应注意,x′i,n表示与块索引i和采样索引n相对应的输入 采样或输入值。

换言之,与以基于正弦窗的1024或960个值的窗长度N为基础的前 述ER AAC LD实现(例如以编解码器的形式)相比,通过将加窗扩展 至过去,在分解滤波器组100的实施例的加窗器110中包含的低延迟窗 的窗长度是2N(=4M)。

如将在图5至11的情况下更详细说明的,在一些实施例中,对于 n=0,...,2N-1的窗系数w(n)可以按照在附录的表1以及附录的表3中针 对N=960和N=1024给出的关系。此外,在一些实施例的情况下,窗系 数可以分别包括在附录的表2和4中针对N=960和N=1024给出的值。

对于时间/频率转换器120,在ER AAC LD编解码器的框架中实现 的核心MDCT算法(MDCT=修正离散余弦变换)基本不变,但是包括 了如所述的更长的窗,使得n现在从-N行进至N-1而不是从0行进至N-。 基于以下方程或表达式来产生输出帧的频谱系数或输出值Xi,k

Xi,k=-2Σn=-NN-1zi,n·cos(2πN(n+n0)·(k+12)),0k<N2---(2)

其中zi,n是时间/频率转换器120的加窗帧或加窗的输入序列中与如先前 所述的采样索引n和块索引i相对应的加窗的采样。此外,k是指示频谱 系数索引的整数;N是整数,指示输出帧的输出值数目的两倍,或如 先前所述,指示基于在ER AAC LD编解码器中实现的 windows_sequence值的一个变换窗的窗长度。整数n0是由以下等式给 出的偏移值:

n0=-N2+12.

根据如在图2的情况下说明的输入帧130的具体长度,可以基于加 窗帧来实现时间/频率转换器,所述加窗帧包括与输入帧130的初始部 分160相对应的加窗的采样。换言之,在M=480或N=960的情况下,上 述方程基于包括长度为1920个加窗的采样的加窗帧。在加窗帧不包括 与输入帧130的初始部分160相对应的加窗的采样的分解滤波器组100 的实施例的情况下,在M=480的前述情况下,加窗帧长度为1800个加 窗的采样。在这种情况下,可以对以上给出的方程进行适配以便执行 相应的方程。在加窗器110的情况下,如果如先前所述与加窗帧的其他 子部分相比,在第一子部分中缺失M/4=N/8个加窗的采样,则这可以 例如导致采样索引n行进于-N,...,7N/8-1。

相应地,在时间/频率转换器120的情况下,通过相应地修改求和 索引以不使用加窗帧的初始部分或起始部分的加窗的采样,可以容易 地适配以上给出的方程。当然,还是如先前所述的,在输入帧130的初 始部分160的长度不同的情况下,或在加窗帧的第一子部分的长度与其 他子部分之间长度有差别的情况下,还可以相应容易地获得其他修改。

换言之,根据分解滤波器组100的实施例的具体实现,并不需要 执行上述表达式和方程所示的所有计算。分解滤波器组的其他实施例 还可以包括以下实现:在该实现中,甚至可以进一步减小计算数量, 从而原则上得到了更高的计算效率。将参考图19的情况来描述合成滤 波器组情况下的示例。

具体地,如还将在合成滤波器组实施例的情况下说明的,可以在 从前述ER AAC LD编解码器导出的所谓的容错高级音频编解码器增 强型低延迟(ER AAC ELD)的框架中实现分解滤波器组100的实施例。 如所述的,将ER AAC LD编解码器的分解滤波器组修改成达到分解滤 波器组100的实施例,从而采用低延迟分解滤波器组作为分解滤波器组 100的实施例。如将更详细地说明的,ER AAC ELD编解码器包括分解 滤波器组100的实施例和/或随后将更详细地说明的合成滤波器组的实 施例,ER AAC ELD编解码器提供了将一般低比特率音频编码的使用 扩展到要求编码/解码链延迟非常低的应用的能力。例如,示例来自于 全双工实时通信领域,其中可以使用不同实施例,如分解滤波器组、 合成滤波器组、解码器、编码器、混合器、以及会议系统的实施例。

在更详细地描述本发明的其他实施例之前,应该注意,以相同的 参考标记来表示具有相同或相似功能特性的对象、结构以及部件。除 非明确指出,否则关于具有类似或等同功能特性和特征的对象、结构 以及部件的描述可以互相交换。此外,在以下图中之一所示的一个实 施例或结构中,如果不讨论特定对象、结构或部件的特性或特征,则 将针对相同或相似的对象、结构或部件使用概括参考标记。例如,在 输入帧130的情况下,已经使用了概括参考标记。。在关于图2中输入帧 的描述中,如果涉及特定输入帧,则使用该输入帧的特定参考标记, 例如130-k,而在涉及所有输入帧或不具体与其他输入帧区分的一个输 入帧的情况下,使用概括参考标记130。从而,使用概括参考标记可以 实现对本发明实施例的更紧凑且更清楚的描述。

此外,这种情况下应该注意,在本发明的框架中,与第二部件耦 合的第一部件可以直接连接到第二部件或经由另外的电路或另外的部 件连接到第二部件。换言之,在本发明的框架中,彼此接近的两个部 件包括两种选择:彼此直接连接或经由另外的电路或另外的部件来连 接。

图3示出了用于对多个输入帧进行滤波的合成滤波器组200的实 施例,其中每个输入帧包括多个有序的输入值。合成滤波器组200的实 施例包括串联耦合的频率/时间转换器210、加窗器220、以及重叠/相 加器230。

首先由频率/时间转换器210对提供给合成滤波器组200的实施例 的多个输入帧进行处理。频率/时间转换器210能够基于输入帧来产生 多个输出帧,使得每个输出帧是相应输入帧的时间表示。换言之,频 率/时间转换器210针对每个输入帧执行从频域到时域的变换。

然后,耦合到频率/时间转换器210的加窗器220能够处理由频率/ 时间转换器210所提供的每个输出帧,从而基于该输出帧来产生加窗 帧。在合成滤波器组200的一些实施例中,加窗器220能够通过对每个 输出帧的每个输出采样进行处理来产生加窗帧,其中每个加窗帧包括 多个加窗的采样。

根据合成滤波器组200的实施例的具体实现,加窗器220能够通过 基于加权函数对输出采样进行加权来基于输出帧产生加窗帧。如先前 在图1的加窗器110的情况下说明的,加权函数例如可以基于结合了人 耳听觉能力或特性(如音频信号响度的对数依赖关系)的心理声学模 型。

此外或可选地,加窗器220还可以通过将输出帧的每个输出采样 与窗、加窗函数或窗函数的采样专用值相乘来基于输出帧产生加窗帧。 这些值也称作窗系数或加窗系数。换言之,在合成滤波器组200的至少 一些实施例中,加窗器220可以适于通过将其与窗函数相乘来产生加窗 帧的加窗的采样,所述窗函数将实值窗系数归于定义集合中的元素集 合的每个元素。

将在图5至11的情况下更详细地讨论这样的窗函数的示例。此外, 应注意,这些窗函数可以关于定义集合的中点而不对称(asymmetric) 或非对称(non-symmetric),继而不需要是定义集合自身的元素。

此外,如将在图4的情况下更详细说明的,加窗器220产生多个加 窗的采样,以便由重叠/相加器230基于采样前移值以重叠的方式对其 进行进一步处理。换言之,每个加窗帧包括比耦合至加窗器220的输出 的重叠/相加器230所提供的相加采样数目的两倍更多的加窗的采样。 因此,在合成滤波器组200的实施例中,针对至少一些相加采样,重叠 /相加器能够将来自至少三个不同加窗帧的至少三个加窗的采样相加 来产生相加帧。

然后,耦合到加窗器220的重叠/相加器230能够针对每个新接收的 加窗帧来产生或提供相加帧。然而,如先前所提到的,重叠/相加器230 以重叠的方式来操作加窗帧,以产生单个相加帧。如将在图4的内容中 更详细解释的,每个相加帧包括起始部分和其余部分,并且还包括多 个相加采样:将来自至少三个不同加窗帧的至少三个加窗的采样相加, 以获得相加帧其余部分中的相加采样;以及将来自至少两个不同加窗 帧的至少两个加窗的采样相加,以获得起始部分中的相加采样。根据 实现,为获得其余部分中的相加采样而相加的加窗的采样的数目可以 比为获得起始部分中的相加采样而相加的加窗的采样的数目至少多一 个采样。

可选地或附加地,根据合成滤波器组200的实施例的具体实现, 还可以将加窗器220配置为根据有序的输出采样的顺序来忽略最早的 输出值,以针对多个加窗帧中的每个加窗帧,将相应的加窗的采样设 置为预定值或至少设置为预定范围内的值。此外,如将在图4的情况下 说明的,在这种情况下,重叠/相加器230能够基于来自至少三个不同 加窗帧的至少三个加窗的采样来提供相加帧其余部分中的相加采样, 以及基于来自至少两个不同加窗帧的至少两个加窗的采样来提供起始 部分中的相加采样。

图4示出了与帧索引k、k-1、k-2、k-3以及k+1相对应的相应标记 的五个输出帧240的示意表示。与图2所示的示意表示相类似,根据图4 所示的五个输出帧相对于由箭头250所示时间的顺序来布置这五个输 出帧。相对于输出帧240-k,输出帧240-(k-1)、240-(k-2)以及240-(k-3) 是过去的输出帧240。相应地,输出帧240-(k+1)相对于输出帧240-k是 后续或未来的输出帧。

如在图2中输入帧130的情况下已经讨论的,在图4所示的实施例 的情况下,图4所示的输出帧240也各包括四个子集260-1、260-2、260-3 和260-4。根据合成滤波器组200的实施例的具体实现,如在图2的框架 中在输入帧130的初始部分160的情况下已经讨论的,每个输出帧240 的第一子部分260-1可以包括或可以不包括初始部分270。因此,在图4 所示的实施例中,与其他子部分260-2、260-3和260-4相比,第一子部 分260-1可以更短。然而,其他子部分260-2、260-3和260-4可以分别包 括与前述采样前移值M相等数目的输出采样。

如在图3的情况下描述的,在图3所示实施例中,为频率/时间转换 器210提供多个输入帧,频率/时间转换器210基于这些输入帧产生多个 输出帧。在合成滤波器组200的一些实施例中,每个输入帧的长度与采 样前移值M相同,其中M同样是正整数。然而,频率/时间转换器210 所产生的输出帧确实包括比输入帧的输入值数目的至少两倍更多的采 样数目。更准确地,在根据图4所示情况的实施例中,输出帧240包括 的输出采样数目甚至比输入值数目的三倍更多,在关于所示情况的实 施例中,每个输入值数目也包括M个输入值。因此,可以将输出帧分 成子部分260,其中输出帧240的每个子部分260(可选地,如前所述, 没有第一子部分260-1)包括M个输出采样。此外,在一些实施例中, 初始部分270可以包括M/4个采样。换言之,在M=480或M=512的情况 下,初始部分270(如果存在)可以包括120或128个采样或值。

再换言之,如在之前的分解滤波器组100的实施例的情况下所解 释的,采样前移值M还与输出帧240的子部分260-2、260-3和260-4的长 度相同。根据合成滤波器组200的实施例的具体实现,输出帧240的第 一子部分260-1也可以包括M个输出采样。然而,如果输出帧240的初 始部分270不存在,则每个输出帧240的第一子部分260-1比输出帧240 中其余子部分260-2、260-3和260-4更短。

如前面提到的,频率/时间转换器210向加窗器220提供多个输出帧 240,其中每个输出帧包括比采样前移值M的两倍更大数目的输出采 样。然后,加窗器220能够基于频率/时间转换器210所提供的当前输出 帧240来产生加窗帧。更明确地,如先前提到的,与输出帧240相对应 的每个加窗帧是基于加权函数来产生的。在基于图4所述情况的实施例 中,加权函数继而基于窗函数280,在每个输出帧240上方示意性地示 出了窗函数280。在这种情况下,还应注意,窗函数280不为输出帧240 的初始部分270(如果存在)中的输出采样产生任何贡献。

然而,因此,根据合成滤波器组200的实施例的具体实现,需要 再次考虑不同的情况。根据频率/时间转换器210,可以以非常不同的 方式来适配或配置加窗器220。

例如,如果一方面输出帧240的初始部分270存在,使得输出帧240 的第一子部分260-1也包括M个输出采样,则可以将加窗器220适配为 使其可以或可以不基于包括相同数目的加窗的采样的输出帧来产生加 窗帧。换言之,可以实现加窗器220,使得加窗器220产生也包括初始 部分270的加窗帧,例如,如先前在图1和2的情况下讨论的,这可以通 过以下方式来实现:将相应的加窗的采样设置成预定值(例如,0、最 大允许信号幅度的两倍等等)或设置成预定范围内的至少一个值。

在这种情况下,输出帧240以及基于输出帧240的加窗帧都可以包 括相同数目的采样或值。然而,加窗帧的初始部分270中的加窗的采样 不必须依赖于输出帧240中的相应输出采样。然而,对于不在初始部分 270中的采样,加窗帧的第一子部分260基于频率/时间转换器210所提 供的输出帧240。

总之,如在图1和图2中的分解滤波器组的实施例的情况下说明 的,如果输出帧240的初始部分270的至少一个输出采样存在,则可以 将相应的加窗的采样设置成预定值或设置成预定范围内的值。如果初 始部分270包括多于一个的加窗的采样,则同样的方式也适用于初始部 分270的这个或这些其他加窗的采样或值。

此外,可以将加窗器220适配为使得加窗帧完全不包括初始部分 270。在这样的合成滤波器组200的实施例的情况下,可以将加窗器220 配置为忽略在输出帧240的初始部分270中的输出帧240的输出采样。

在任何这些情况下,根据这样的实施例的具体实现,加窗帧的第 一子部分260-1可以包括或可以不包括初始部分270。如果加窗帧的初 始部分存在,则该部分中的加窗的采样或值完全不需要依赖于相应输 出帧的相应输出采样。

另一方面,如果输出帧240不包括初始部分270,则还可以将加窗 器220配置为基于本身包括或不包括初始部分270的输出帧240来产生 加窗帧。如果第一子部分260-1的输出采样的数目小于采样前移值M, 则在合成滤波器组200的一些实施例中,加窗器220能够将与加窗帧的 初始部分270的“缺失输出采样”相对应的加窗的采样设置成预定值或 预定范围内的至少一个值。换言之,加窗器220在这种情况下能够利用 预定值或预定范围内的至少一个值来填充加窗帧,使得产生的加窗帧 所包括的加窗的采样的数目是采样前移值M、输入帧的大小或相加帧 的长度的整数倍。

然而,作为可以实现的另一选项,输出帧240和加窗帧都可以完 全不包括初始部分270。在这种情况下,可以将加窗器220配置为:简 单地对输出帧的至少一些输出采样进行加权,以获得加窗帧。此外或 可选地,加窗器220可以采用窗函数280等。

如先前在图1和2所示的分解滤波器组100的实施例的情况下说明 的,输出帧240的初始部分270与输出帧250中的最早的采样相对应(在 这些值与具有最小采样索引的“最新”采样相对应的意义上)。换言之, 考虑输出帧240的所有输出采样,这些采样是指:与输出帧240的其它 输出采样相比,与在回放重叠/相加器230所提供的相应相加采样时所 逝去的最小时间量相对应的采样。换言之,在输出帧240内以及在输出 帧的每个子部分260内,最新输出采样与相应输出帧240或子部分260 中左边的位置相对应。再换言之,箭头250所指示的时间与输出帧240 的序列相对应而不与每个输出帧240内的输出采样序列相对应。

然而,在更详细地描述重叠/相加器220对加窗帧240进行的处理之 前,应该注意,在合成滤波器组200的许多实施例中,将频率/时间转 换器210和/或加窗器220适配为使得输出帧240和加窗帧的初始部分 270完全存在或完全不存在。在第一种情况下,第一子部分260-1中输 出或加窗的采样的数目相应地等于输出帧中输出采样的数目(等于 M)。然而,还可以实现合成滤波器组200的实施例,其中可以将频率/ 时间转换器210和加窗器220中其一或两者配置为使得初始部分存在, 而第一子部分260-1中的采样数目仍然小于频率/时间转换器210的输 出帧中的输出采样的数目。此外,应注意,在许多实施例中,这样处 理任何帧的所有采样或值,尽管当然可以使用相应值或采样中的单个 或一部分。

如图4底部所示,耦合到加窗器220的重叠/相加器230可以提供相 加帧290,相加帧290包括起始部分300和其余部分310。根据合成滤波 器组200的实施例的具体实现,可以实现重叠/相加器230,以便通过将 至少两个不同加窗帧的至少两个加窗的采样相加来获得相加帧起始部 分中包括的相加采样。更准确地,因为图4所示的实施例基于在每个输 出帧240和相应的加窗帧中包括4个子部分260-1至260-4的情况,所以 如箭头320所指示的,起始部分300中的相加采样基于分别来自至少3 个或4个不同加窗帧的3个或4个加窗的采样或值。在图4所使用的实施 例的情况下是使用3个还是4个加窗的采样的问题取决于实施例在基于 相应输出帧240-k的加窗帧的初始部分270方面的具体实现。

在下文中,参考图4,可以将如图4所示的输出帧240看作是由加 窗器220基于相应输出帧240提供的加窗帧,这是因为:在图4所示情况 下,通过至少将输出帧240中在初始部分270外的输出采样与从窗函数 280导出的值相乘来获得加窗帧。因此,以下关于重叠/相加器230,参 考标记240还可以用于加窗帧。

在加窗器220被适配为使得将已有初始部分270中的加窗的采样 设置成预定值或预定范围内的值的情况下,如果该预定值或预定范围 使得将来自加窗帧240-k(与输出帧240-k相对应)的初始部分270的加 窗的采样求和并不明显干扰或改变结果,则可以将初始部分270中的加 窗的采样或加窗的值用在其余三个相加采样的相加中,所述其余三个 相加采样来自:加窗帧240-(k-1)(与输出帧240-(k-1)相对应)的第二 子部分、加窗帧240-(k-2)(与输出帧240-(k-2)相对应)的第三子部分、 以及加窗帧240-(k-3)(与输出帧240-(k-3)相对应)的第四子部分。

在将加窗器220适配为使得在加窗帧中不存在初始部分270的情 况下,则通常通过将来自至少两个加窗帧的至少两个加窗的采样相加 来获得起始部分300中相应的相加采样。然而,因为图4所示的实施例 基于各包括4个子部分260的加窗帧,所以在这种情况下,通过将来自 加窗帧240-(k-1)、240-(k-2)和240-(k-3)的前述3个加窗的采样相加来获 得相加帧290的起始部分中的相加采样。

例如,这种情况可以是由以下情况引起的:加窗器220被适配为 使得加窗器220忽略输出帧的对应输出采样。此外,应注意,如果预定 值或预定范围包括可以导致相加采样的干扰的值,则可以将重叠/相加 器230配置为使得在将各加窗的采样相加以获得相加采样时,不考虑对 应的加窗的采样。在这种情况下,还可以考虑由重叠/相加器将初始部 分270中的加窗的采样忽略,因为对应的加窗的采样将不会用于获得初 始部分300中的相加采样。

如图4中的箭头330所指示的,对于其余部分310中的相加采样, 重叠/相加器230适于将来自至少3个不同加窗帧240(与3个不同输出帧 240相对应)的至少3个加窗的采样相加。同样,由于图4所示实施例中 加窗帧240包括4个子部分260的事实,重叠/相加器230通过将来自4个 不同加窗帧240的4个加窗的采样相加来产生其余部分310中的相加采 样。更准确地,重叠/相加器230通过将相应加窗的采样相加来获得相 加帧290的其余部分310中的相加采样,所述相应加窗的采样来自:加 窗帧240-k的第一子部分260-1、加窗帧240-(k-1)的第二子部分260-2、 加窗帧240-(k-2)的第三子部分260-3、以及加窗帧240-(k-3)的第四子部 分260-4。

由于上述重叠/相加过程,相加帧290包括M=N/2个相加采样。换 言之,采样前移值M等于相加帧290的长度。此外,至少在合成滤波器 组200的一些实施例的情况下,如上所述,输入帧的长度也等于采样前 移值M。

在图4所示的实施例中,分别使用至少3个或4个加窗的采样来获 得相加帧的起始部分300和其余部分310中的相加采样,这种情况仅是 出于简单起见而选择的。在图4所示实施例中,每个输出/加窗帧240 包括4个起始部分260-1至260-4。然而,原则上,可以容易地实现合成 滤波器组的实施例,其中输出或加窗帧仅包括比相加帧290的相加采样 的数目的两倍多一个的加窗的采样。换言之,可以将合成滤波器组200 的实施例适配为使得每个加窗帧仅包括2M+1个加窗的采样。

如在分解滤波器组100的实施例的情况下说明的,也可以通过修 改ER AAC LD编解码器,将合成滤波器组200的实施例并入ER AAC ELD编解码器(编解码器=编码器/解码器)的框架中。因此,合成滤 波器组200的实施例可以用于AAC LD编解码器的情况下,以定义低比 特率且低延迟的音频编码/解码系统。例如,合成滤波器组的实施例可 以与可选的SBR工具(SBR=频带复制)一起包含在ER AAC ELD编解 码器的解码器中。然而,为了实现充分低的延迟,与ER AAC LD编解 码器相比,实现一些修改是合理的,以达到合成滤波器组200的实施例 的实现。

可以对前述编解码器的合成滤波器组进行修改,以适配低(合成) 滤波器组,其中在频率/时间转换器210方面,核心IMDCT算法 (IMDCT=反修正离散余弦变换)可以基本保持不变。然而,与IMDCT 频率/时间转换器相比,可以采用更长的窗函数来实现频率/时间转换 器210,使得现在采样索引n行进到2N-1,而不是行进到N-1。

更准确地,可以将频率/时间转换器210实现为使得将频率/时间转 换器210配置为根据以下表达式来提供输出值xi,n

xi,n=-2NΣk=0N2-1spec[i][k]·cos(2πN(n+n0)(k+12)),0n<2N

其中,如上所述,n是指示采样索引的整数,i是指示窗索引的整数,k 是频谱系数索引,N是基于ER AAC LD编解码器实现中的参数 windows_sequence的窗长度,使得整数N是相加帧290的相加采样数目 的两倍。此外,n0是由以下等式给出的偏移值:

n0=-N2+12,

其中spec[i][k]是与输入帧的频谱系数索引k和窗索引I相对应的输入 值。在合成滤波器组200的一些实施例中,参数N等于960或1024。然 而,原则上,参数N还可以取任何值。换言之,合成滤波器组200的其 它实施例可以基于参数N=360或其它值来进行操作。

与ER AAC LD编解码器框架中实现的加窗和重叠/相加相比,还 可以修改加窗器220和重叠/相加器230。更准确地,与前述编解码器相 比,将窗函数的长度N替换成长度2N的窗函数,其中长度2N的窗函数 在过去有较多的重叠而在未来有较少的重叠。如将在以下图5至11的情 况下说明的,在合成滤波器组200的实施例中,实际上可以将包括 M/4=N/8个值或窗系数的窗函数设置成0。从而这些窗系数与相应帧的 初始部分160、270相对应。如上所述,完全不需要实现该部分。作为 可能的备选,可以构造相应的模块(例如加窗器110、220),使得不需 要与0值相乘。如上所述,仅提到两种可能的与实现有关的实施例的差 别:可以将加窗的采样设置成0或忽略。

相应地,在合成滤波器组的实施例包括这样的低延迟窗函数的情 况下,由加窗器220执行的加窗可以根据以下表达式来实现:

zi,n=w(n)·xi,n

其中,具有窗系数w(n)的窗函数现在长度为2N个窗系数。因此,采样 索引从N=0行进至N=2N-2,其中在针对合成滤波器组的不同实施例的 附录中的表1至4中包含不同窗函数的窗系数的关系以及值。

此外,还可以根据或基于以下表达式或方程来实现重叠/相加器 230:

outi,n=zi,n+zi-1,n+N2+zi-2,n+N+zi-3,n+N+N2,0n<N2

其中,根据合成滤波器组200的实施例的具体实现,可能之前给出的表 达式和方程进行略微改变。换言之,根据具体实现,尤其是根据加窗 帧不一定包括初始部分这一事实,例如可以在求和索引的边界方面对 以上给出的方程和表达式进行改变,以在初始部分不存在或包含没有 价值的加窗的采样(值为0的采样)的情况下,排除初始部分的加窗的 采样。换言之,通过实现分解滤波器组100或合成滤波器组200的实施 例中的至少一个,可以实现可选地具有适当SBR工具的ER AAC LD编 解码器,以得到ER AAC ELD编解码器,所述ER AAC ELD编解码器 例如可以用于实现低比特率和/或低延迟的音频编码和解码系统。将分 别在图12和13的框架中给出终端编码器和解码器的概述。

如先前多次提到的,分解滤波器组100和合成滤波器组200的实施 例都可以提供以下优点:在分解/合成滤波器组100、200的框架中,以 及在编码器和解码器的实施例的框架中,通过实现低延迟窗函数,实 现了增强的低延迟编码模式。通过实现分解滤波器组或合成滤波器组 的实施例(可以包括将在图5至11的情况下更详细描述的窗函数之一), 根据包括低延迟窗函数的滤波器组的实施例的具体实现,可以实现多 个优点。参考图2的内容,与在最新技术的代码变换器中使用的正交窗 为基础的编解码器相比,滤波器组的实施例的实现能够产生延迟。例 如,在基于参数N=960的系统的情况下,可以实现将延迟从960个采样 (在48kHz的采样频率下等同于20ms的延迟)减小至700个采样(在相 同采样频率下等同于15ms的延迟)。此外,如将示出的,合成滤波器 组和/或分解滤波器组的实施例的频率响应非常类似于使用符号窗的 滤波器组。与采用所谓的低重叠窗的滤波器组相比,频率响应甚至更 好得多。此外,前回声性态非常类似于低重叠窗,使得合成滤波器组 和/或分解滤波器组的实施例可以根据滤波器组的实施例的具体实现 来表示在质量与低延迟之间的很好的折衷。作为例如可以在会议系统 的实施例的框架中采用的另一优点,可以仅使用一个窗函数来处理所 有类型的信号。

图5示出了在分解滤波器组100的实施例的情况下以及在合成滤 波器组200的情况下,例如在加窗器110、220的框架中可能采用的窗函 数的图形表示。更准确地,在上图中的分解滤波器组的实施例的情况 下,图5所示的窗函数与针对M=480个频带或输出采样数的分解窗函数 相对应。图5中的下图示出了针对合成滤波器组的实施例的相应合成窗 函数。因为图5所示的两个窗函数都与输出帧(分解滤波器组)以及相 加帧(合成滤波器组)的M=480个频带或采样相对应,因此图5所示的 窗函数包括由分别具有索引n=0,...,1919的1920个值组成的定义集合。

此外,如图5中的两个图清楚地示出的,关于定义集合的中点(在 此情况下不是定义集合自身的一部分,因为中点位于索引N=959与 N=960之间),两个窗函数都在定义集合中关于前述中点的一半部分中 包括明显较多数目的以下窗系数:这些窗系数的绝对值大于所有窗系 数的最大绝对值的10%、20%、30%或50%。在图5的上图中分解窗函 数的情况下,定义集合的相应半部分是包括索引N=960,...1919的定义 集合,而在图5下图中合成窗函数的情况下,定义集合相对于中点的相 应半部分包括索引N=0,...,959。因此,相对于中点,分解窗函数与合 成窗函数均强烈不对称。

如在分解滤波器组的实施例的加窗器110的情况下以及在合成滤 波器组的实施例的加窗器220的情况下已经示出的,分解窗函数与合成 窗函数在索引上相反。

关于图5中两幅图所示的窗函数的一个重要方面是,在上图所示 的分解窗的情况下的最后120个加窗系数以及在图5的下图中的合成窗 函数的情况下的前120个窗系数被设置为0,或其绝对值使其可以被认 为在合理的精度内等于0。因此,换言之,可以认为两个窗函数的前述 120个加窗系数导致:通过将这120个窗系数与相应的采样相乘,将适 当数目的采样设置为预定范围内的至少一个值。换言之,如前述的, 如果合适,在分解滤波器组以及合成滤波器组的实施例中,根据分解 滤波器组100或合成滤波器组200的实施例的具体实现,这120个零值加 窗系数将导致创建加窗帧的初始部分160、270。然而,即使初始部分 160、270不存在,在分解滤波器组100和合成滤波器组200的实施例中, 加窗器110、时间/频率转换器120、加窗器220以及重叠/相加器230也 可以理解这120个零值窗系数,从而,即使在适当帧的初始部分160、 270完全不存在的情况下相应地处置或处理不同的帧。

通过实现如图5所示的、在M=480(N=960)的情况下包括120个 零值加窗系数的分解窗函数或合成窗函数,将建立适当的分解滤波器 组100和合成滤波器组200的实施例,其中,更一般而言,相应帧的初 始部分160、270包括M/4个采样,或相应的第一子部分150-1、260-1 包括的值或采样比其他子部分少M/4。

如前述的,图5中上图所示的分解窗函数以及图5中下图所示的合 成窗函数表示了分解滤波器组和合成滤波器组的低延迟窗函数。此外, 图5所示的分解窗函数和合成窗函数关于前述定义集合的中点互为镜 像版本,其中定义了定义集合的两个窗函数。

应注意,如随后将在复杂度分析过程中指出的,延迟窗的使用和 /或使用分解滤波器组或合成滤波器组的实施例在许多情况下都不引 起计算复杂度的明显提高,仅在存储需求方面有微小提高。

图5所示的窗函数包括在附录的表2中给出的值,这些值仅仅是为 简单起见而放在附录中的。然而,目前为止,对于在参数M=480上进 行操作的分解滤波器组或合成滤波器组的实施例而言,都不必要包括 在附录的表2中给出的精确值。自然,分解滤波器组和合成滤波器组的 实施例的具体实现可以容易地采用适当窗函数的框架中各种窗系数, 使得在许多情况下采用以下窗系数就足够了:所述窗系数在M=480的 情况下采用附录的表1中给出的关系。

此外,在随后将介绍的具有滤波器系数、窗系数以及提升(lifting) 系数的许多实施例中,不需要如给出的那样精确地实现所给出的附图。 换言之,在分解滤波器组和合成滤波器组的其他实施例以及本发明的 相关实施例中,还可以实现其他窗函数,这些窗函数是滤波器系数、 窗系数以及如提升系数之类的其他系数,这些系数与以下附录中给出 的系数不同,只要变化在小数点后面第三位之内或在更高位,如第四、 第五位等。

如前述的,考虑图5的下图中的合成窗函数,将前M/4=120个窗系 数设置为0。此后,大约直到索引350,窗函数包括陡峭上升,接着是 较缓和的上升,直到约600的索引。在这种情况下,应注意,在索引480 (=M)左右,窗函数变得大于单位值或大于1。索引600之后直到大约 采样1100,窗函数从其最大值回落到小于0.1的水平。在定义集合的余 下部分上,窗函数包括在零值左右的轻微震荡。

图6示出了如图5所示的窗函数的比较,在图6的上图示出了分解 窗函数的情况,在图6的下图示出了合成窗函数的情况。此外,两幅图 还包括例如在前述ER AAC编解码器AAC LC和AAC LD中使用的所谓 的正弦窗函数作为虚线。图6的两幅图中所示的正弦窗与低延迟窗函数 的直接比较示意了如在图5的情况下说明的时间窗的不同时间对象。除 了仅在960个采样上定义正弦窗的事实之外,在分解滤波器组的实施例 (上图)的情况下以及在合成滤波器组(下图)的情况下所示的两个 窗函数之间最明显的差别在于:正弦窗帧函数关于其对应的缩短的定 义集合的中点对称,并在定义集合的前120个元素中(主要地)包含大 于0的窗系数。相反,如前述的,低延迟窗(理想地)包括120个零值 加窗系数,并且关于其相应的、与正弦窗的定义集合相比延长的定义 集合的中点明显不对称。

将低延迟窗与正弦窗区分开的另一差别在于,尽管两个窗都近似 得到了大约为1的值以及480(=M)的采样索引,然而低延迟窗函数在 变成大于1之后约120个采样处达到了大于1的最大值以及大约600的采 样索引(=M+M/4;M=480),而对称的正弦窗对称地下降到0。换言 之,由于在这些情况下重叠的操作模式以及M=480的采样前移值,使 得第一帧中例如将要通过与零相乘来处理的采样将在下一帧中乘以大 于1的值。

将给出其他低延迟窗的其他描述,例如可以将其他低延迟窗用在 分解滤波器组或合成滤波器组200的其他实施例中,将参考参数 M=480、N=960来说明以图5所示的窗函数(具有M/4=120个零值或充 分小的值)可实现的延迟减小的构思。在图6中上图所示的分解窗中, 访问未来输入值的部分(采样索引1800至1920)减小了120个采样。对 应地,在图6中下图所示的合成窗中,与过去输出采样的重叠(在合成 滤波器组的情况下可能需要相应延迟)减小了另外120个采样。换言之, 在合成窗的情况下,与过去输出采样的重叠在系统包括分解滤波器组 和合成滤波器组的实施例的情况下将导致240个采样的总延迟减小,在 分解窗的情况下需要所述与过去输出帧的重叠来完成重叠/相加操作 或完成重叠/相加以及120个采样的减少。

然而,扩展的重叠并不导致任何额外延迟,这是因为扩展的重叠 仅包含来自过去的添加值,至少在采样频率的尺度上,可以容易地存 储这些添加值而不导致附加延迟。图5和图6所示的传统正弦窗与低延 迟窗集合的时间比较说明了这一点。

图7在三幅图中包含了三个不同的窗函数。更准确地,图7中上图 示出了前述的正弦窗,而中间图示出了所谓的低重叠窗,下图示出了 低延迟窗。然而,图7所示的三个窗与采样前移值或参数M=512 (N=2M=1024)相对应。同样地,与图7底部图所示的在2048个采样 索引上定义的低延迟窗函数相比,仅在包括1024个采样索引的受限或 缩短的定义集合上定义图7中最上方两个图中的正弦窗以及低重叠窗。

图7中的正弦窗、低重叠窗以及低延迟窗的窗形状图包括或多或 少与先前讨论的正弦窗和低延迟窗相同的特性。更准确地,正弦窗(图 7中顶部的图)同样关于位于索引511与512之间的定义集合的适当中点 对称。正弦窗约在值M=512处取最大值,从最大值再次下降回定义集 合的边界处的零值。

在图7底部的图所示的低延迟窗的情况下,这种低延迟窗包括128 个零值窗系数,同样是采样前移值M的四分之一。此外,低延迟窗在 采样索引M处取约为1的值,而随索引增大变得大于1之后大约128个采 样索引n(在索引640附近)处取窗系数的最大值。同样,对于窗函数 图的其他特征,图7底部的图中M=512的窗函数并不显著地区别于图5 和6所示的M=480的低延迟窗,除了由于更长的定义集合(2048个索引 相比1920个索引)而导致的可选偏移之外。图7底部的图中所示的低延 迟窗包括在附录的表4中给出的值。

然而,如前述的,合成滤波器组或分解滤波器组的实施例不一定 要实现具有表4中给出的精确值的窗函数。换言之,窗系数可以不同于 表4中给出的值,只要这些窗系数保持附录的表3中给出的关系。此外, 在本发明的实施例中,还可以容易地实现对窗系数的变化,如上所述, 只要这些变化在小数点后面第三位之内或在更高位,如第四、第五位 等。

在图7中间的图中,目前尚未描述低重叠窗。如前述的,低延迟 窗也包括含有1024个元素的定义集合。此外,低重叠窗还在定义集合 的起始处以及定义集合的结尾处包括连通子集,在所述连通子集中低 重叠窗趋于零。然而,在低重叠窗趋于零的该连通子集之后是陡峭上 升或下降,所述陡峭上升或下降分别仅包含100多个采样索引。此外, 对称的低重叠窗不包括大于1的值,并且,与在一些实施例中使用的窗 函数相比,可以包括更小的阻带衰减。

换言之,低重叠窗包括明显更小的定义集合,同时具有与低延迟 窗相同的采样前移值,并且不取大于1的值。此外,正弦窗和低重叠窗 都关于其相应的定义集合中点正交或对称,而低延迟窗以上述方式对 其定义集合的中点不对称。

引入低重叠窗是为了消除瞬变的前回声伪像。如图8所示,低重 叠窗避免了信号出现之前量化噪声的扩散。然而,通过比较图10与11 所示的频率响应可以明显看出,这种新的低延迟窗具有相同的特性, 并提供更好的频率响应。因此,低延迟窗能够替代传统的ACC LD窗 (即低重叠窗处的符号窗),使得不再需要实现动态的窗形状适配。

图8以同样顺序的图示出了图7所示的相同窗函数的正弦窗或低 重叠窗以及低延迟窗的不同窗形状的量化噪声扩散的示例。如图8底部 的图中所示的低延迟窗的前回声性态类似于图8中间的图中所示的低 重叠窗的性态,而图8顶部的图中所示的正弦窗的前回声性态在前128 (M=512)个采样中包括明显成分。

换言之,在合成滤波器组或分解滤波器组的实施例中采用低延迟 窗可以产生与改进的前回声性态相关的优点。在分解窗的情况下,访 问未来输入值并从而需要延迟的路径减小了多于一个采样,优选地, 在块长度或采样前移值为480/512个采样的情况下减小了120/128个采 样,使其与MDCT(修正离散余弦变换)相比减小了延迟。同时,这 改进了前回声性态,因为可能在这些120/128个采样中的信号出现可能 仅会推迟一块或一帧出现。相应地,在合成窗中,与过去输出采样的 重叠(以完成其重叠/相加操作,可能还需要相应的延迟)减小了另外 的120/128个采样,产生240/256个采样的总延迟减小。这还产生了改 进的前回声性态,因为这些120/128个采样还将在可能的信号出现之前 引起噪声向过去扩散。总之这意味着,前回声推迟一块或帧出现,从 合成侧单独产生的前回声缩短了120/128个采样。

根据合成滤波器组或分解滤波器组的实施例的具体实现,如图5 至7所示可以通过使用这样的低延迟窗而实现的这样的减小,在考虑考 虑人类听觉特性(尤其是掩蔽方面)时特别有用。为了说明这一点, 图9示出了人耳掩蔽性态的示意图。更准确地,图9示出了当在约200ms 的时间段期间出现特定频率的声音或音调时人耳听觉阈值水平的示意 表示作为时间的函数。

然而,如图9中箭头350所指示的,在出现前述声音或音调不久以 前,在大约20ms的短暂时间段中出现了预掩蔽,从而在出现音调或声 音期间实现了无掩蔽与掩蔽之间的平滑过渡,这有时称作同时掩蔽。 然而,如图9中箭头360所指示的,当音调或声音消失时,不立即提升 掩蔽,而是在一段时间或近似150ms的时间期间缓慢减小掩蔽,这有 时也称作后掩蔽。

这就是说,图9示出了人类听觉的一般时间掩蔽特性,包括在声 音或音调出现之前和之后的预掩蔽阶段以及后掩蔽阶段。由于通过在 分解滤波器组100和/或合成滤波器组200的实施例中使用低延迟窗而 减小了前回声性态,所以可听失真将在许多情况下受到严格限制,可 听前回声将至少在某种程度上落入图9所示的人耳时间掩蔽效应的预 掩蔽时间段中。

此外,关于附录的表1至4中的关系和值而更详细描述的、图5至7 所示的低延迟窗函数提供了类似于正弦窗的频率响应。为了说明这一 点,图10示出了对正弦窗(虚线)与低延迟窗的示例(实线)之间频 率响应的比较。通过对图10中的两个前述窗的两个频率响应进行比较 可以看出,低延迟窗在频率选择性方面与正弦窗可比。如图11所示的 与频率响应的比较所说明的,低延迟窗的频率响应类似于或可比于正 弦窗的频率响应,并且比低重叠窗的频率响应好得多。

更准确地,图11示出了对正弦窗(虚线)与低重叠窗(实线)之 间的频率响应的比较。可以看出,低重叠窗的频率响应的实线明显大 于正弦窗的相应频率响应。因为通过比较图10所示的两个频率响应可 以看出,低延迟窗和正弦窗示出了可比的频率响应,所以,由于图10 和11所示的图示出了正弦窗的频率响应并且相对于频率轴和强度轴 (db)包括相同的尺度,因此可以容易地绘制低重叠窗与低延迟窗之 间的比较。相应地,可以容易地总结出,在合成滤波器组的实施例以 及在分解滤波器组的实施例中可以容易地实现的正弦窗提供了比低重 叠窗好得多的频率响应。

因为图8所示的前回声性态的比较还表明,低延迟窗提供了相对 于前回声性态的相当大的优点,因此尽管低延迟窗的前回声性态与低 重叠窗的前回声性态可比,但是低延迟窗表现出在两个前述窗之间很 好的折衷。

因此,对于可以在分解滤波器组的实施例以及在合成滤波器组的 实施例和相关实施例的框架中实现的低延迟窗,由于这种权衡,因此 可以针对瞬变信号以及音调信号使用相同的窗函数,使得不必在不同 的块长度之间或在不同的窗之间进行切换。换言之,分解滤波器组的 实施例、合成滤波器组的实施例以及相关的实施例提供了建立不需要 在不同操作参数集合(如不同的块大小或块长度、或不同的窗或窗形 状)之间进行切换的编码器、解码器以及其他系统的可能性。换言之, 通过采用具有低延迟窗的分解滤波器组或合成滤波器组的实施例,可 以很大程度上简化编码器、解码器以及相关系统的实施例的构建。作 为另一机会,由于不需要在不同参数集合之间进行切换这一事实,可 以在频域而不是时域对来自不同源的信号进行处理,如将在以下部分 说明的,这需要附加的延迟。

再换言之,在一些实施例中,采用合成滤波器组或分解滤波器组 的实施例提供了从低计算复杂度的优点获益的可能性。例如,为了利 用正弦窗来补偿与MDCT相比更低的延迟,引入更长的重叠而不创建 另外的延迟。尽管具有更长的重叠,以及相应地,窗长度约为相应正 弦窗长度的两倍,并具有两倍的重叠量以及如上所述的频率选择性的 优点,但是,由于可能增大块长度乘法和存储器单元的大小,使得可 以以较小的附加复杂度来获得实现。然而,将在图19至24的情况下说 明该实现的其他细节。

图12示出了编码器400的实施例的示意性框图。编码器400包括分 解滤波器组100的实施例以及作为可选部件的熵编码器410,熵编码器 410被配置为对分解滤波器组100所提供的多个输出帧进行编码,并被 配置为基于输出帧来输出多个编码帧。例如,可以将熵编码器410实现 为霍夫曼编码器或利用熵有效编码方案(如算术编码方案)的其他熵 编码器。

由于在编码器400的实施例的框架中采用分解滤波器组100的实 施例,所以编码器提供频带数为N的输出,同时具有小于2N或2N-1的 重构延迟。此外,原则上,编码器的实施例还表示滤波器,编码器400 的实施例提供了多于2N个采样的有限冲击响应。这就是说,编码器400 的实施例表示能够以对延迟有效的方式来处理(音频)数据的编码器。

根据图12所示的编码器400的实施例的具体实现,这样的实施例 还可以包括量化器、滤波器或其他部件,以对提供给分解滤波器组100 的实施例的输入帧进行预处理,或在对相应帧进行熵编码之前对输出 帧进行处理。例如,可以在分解滤波器组100之前为编码器400的实施 例提供附加的量化器,以根据具体实现以及应用领域来量化数据或重 新量化数据。作为在分解滤波器组之后进行处理的示例,可以实现在 频域中对输出帧的均衡或其他增益调节。

图13示出了解码器450的实施例,解码器450包括熵解码器460以 及前述合成滤波器组200的实施例。解码器450的实施例中的熵解码器 460表示可选部件,例如可以被配置为对例如由编码器400的实施例提 供的多个编码帧进行解码。相应地,熵解码器460可以是霍夫曼或算法 解码器、或基于熵编码/解码方案的其他熵解码器,其中熵编码/解码 方案适于即将到来的解码器450的应用。此外,可以将熵解码器460配 置为向合成滤波器组200提供多个输入帧,合成滤波器组200继而在合 成滤波器组200的输出或在解码器450的输出提供多个相加帧。

然而,根据具体实现,解码器450还可以包括另外的部件,如解 量化器或如增益调节器之类的其他部件。更准确地,在熵解码器460 与合成滤波器组之间,可以实现增益调节器作为可选部件,以允许在 合成滤波器组200将音频数据转换到时域之前在频域中进行增益调节 或均衡。相应地,在合成滤波器组200之后,可以在解码器450中实现 附加的量化器,以在向解码器450的外部部件提供可选地重新量化后的 相加帧之前,提供对相加帧进行重新量化的机会。

图12所示的编码器400的实施例以及图13所示的解码器450的实 施例可以应用在音频编码/解码以及音频处理的许多领域中。例如,这 样的编码器400和解码器450的实施例可以在高质量通信领域中采用。

编码器或编码装置的实施例以及解码器的实施例提供了以下机 会:操作所述实施例而无需实现参数的改变,如切换块长度或在不同 窗之间切换。换言之,与其他编码器和解码器相比,采用合成滤波器 组、分解滤波器组形式的本发明的实施例以及相关实施例,目前不需 要实现不同的块长度和/或不同的窗函数。

最初在MPEG-4音频规范的版本2中定义的低延迟AAC编码器 (AAC LD)作为一种全频带高质量通信编码器,具有随时间增加的 适配性,不受普通语音编码器所受的限制,如聚焦于单个扬声器、语 音材料、音乐信号的低性能等等。例如,在由于工业需要而触发低延 迟AAC特性的创建的其他通信应用中,这种特定编解码器广泛用于视 频/电话会议。尽管如此,编码器的编码效率的增强是用户群体的广泛 关注所在,并且是本发明的一些实施例能够提供的贡献的主题。

目前,MPEG-4ER AAC LD编解码器在每声道64kbit/s至48kbit/s 的比特率范围内产生良好的音频质量。为了将编码器的编码效率提高 到可以与语音编码器竞争,使用经检验的频带复制工具(SBR)是一 种优秀的选择。然而,在标准化过程中未进一步继续研究关于该主题 的早期提议。

为了不失去对于许多应用(如服务电信应用)而言很关键的低编 解码器延迟,必须执行的另外的措施。在许多情况下,作为对相应编 码器的发展的需求,定义这样的编码器应该能够提供低至20ms的算法 延迟。幸运的是,仅需要对已有规范应用较少的修改以满足该目标。 具体地,结果只有两个简单的修改是必要的,在本文献中提出了其中 之一。将AAC LD编码器滤波器组替换成低延迟滤波器组100、200的 实施例,在许多应用中减轻了显著的延迟增加。伴随对SBR工具的略 微修改,通过将这些实施例引入编码器(如图12所示的编码器400的实 施例)减小了添加的延迟。

因此,增强型AAC ELD编码器或AAC EL解码器包括低延迟滤波 器组的实施例,展现出与平面AAC LD编码器的延迟可比的延迟,但 是能够根据具体实现在相同的质量水平上节省大量比特率。更准确地, 在与AAC LD编码器相比在相同质量水平上,AAC ELD编码器能够节 省多达25%或甚至多达33%的比特率。

可以在所谓的增强型低延迟AAC编解码器(AAC ELD)中实现合 成滤波器组或分解滤波器组的实施例,所述AAC ELD能够根据具体实 现以及应用规范将操作范围向下扩展到每声道24kbit/s。换言之,可以 可选地使用另外的编码工具,在作为AAC LD方案的扩展的编码框架 中实现本发明的实施例。这样的可选编码工具是频带复制(SBR)工 具,频带复制(SBR)工具可以集成或还可以应用在编码器的实施例 以及解码器的实施例的框架中。尤其在低比特率编码的领域中,SBR 是有吸引力的增强方案,因为其能够实现双速率编码器,在所述双速 率编码器中,仅利用原始采样器的采样频率的一半来对频谱的较低部 分的采样频率进行编码。同时,SBR可以实现基于该较低部分对频率 的较高频谱范围进行编码,使得总采样频率可以在原则上降低因子2。

换言之,使用SBR工具实现了尤其有吸引力且有益的延迟优化部 件,由于双核编码器的采样频率减小,原则上所节省的延迟可以使系 统的总延迟减小所节省延迟的2倍。

然而,相应地,如随后将更详细说明的,AAC LD与SBR的简单 组合将导致60ms的总算法延迟。因此,这样的组合将致使所产生的编 解码器不适于通信应用,因为一般而言,交互式双向通信的系统延迟 不应超过50ms。

因此,通过使用分解滤波器组和/或合成滤波器组的实施例,并从 而将MDCT滤波器组替换成这些专用低延迟滤波器组之一,能够如先 前说明的减轻由实现双速率编码器所导致的延迟增加。通过使用前述 实施例,AAC ELD编码器可以很好地展现出在双向通信的可接受范围 内的延迟,同时与常规AAC LD编码器相比节省高达25%至33%的速 率,同时保持音频质量水平。

因此,关于合成滤波器组、分解滤波器组的实施例,以及其他有 关实施例,本申请至少在本发明的一些实施例方面描述了可能的技术 修改以及对可实现的编码器性能的评估。根据具体实现,这样的低延 迟滤波器组能够利用如上所述具有多重叠的不同窗函数而不是使用 MDCT或IMDCT来实现实质上的延迟减小,同时提供完美重构的可能 性。这样的低延迟滤波器组的实施例能够减小重构延迟而不减小滤波 器长度,而在一些实施例的一些情况下仍保持完美的重构特性。

所产生的滤波器组具有与传统MDCT相同的余弦调制函数,但是 可以具有更长的窗函数,所述窗函数可以与一般化的或低重构延迟非 对称或不对称。如前述的,使用新的低延迟窗的这种新的低延迟滤波 器组的实施例能够在帧大小为M=480个采样至720个采样的情况下减 小来自960个采样的MDCT延迟。一般而言,如前述的,滤波器组的实 施例能够通过实现M/4个零值窗系数或通过适配适当的部件来将2M 的延迟减小至(2M-M/2),从而使得相应帧的第一子部分150-1、260-1 包括的采样比其他子部分少M/4。

在图5至7的上下文中示出了这些低延迟窗函数的示例,其中图6 和7还包括与传统符号窗的比较。然而,应注意,如前述的,简单地, 分解窗是合成窗的时间反转副本。

在下文中,为了实现低比特率和低延迟的音频编码系统,将给出 对SBR工具与AAC LD编码器的组合的技术描述。如前述的,使用双 速率系统来实现比单速率系统更高的编码增益。通过使用双速率系统, 相应的编码器将提供具有尽可能更少频带、更高能量效率的编码,这 使得由于在某种程度上从编码器所提供的帧中去除冗余信息而导致逐 比特减小。更准确地,前述低延迟滤波器组的实施例用于AAC LD核 心编码器的框架中,以达到对于通信应用而言可接受的总延迟。换言 之,在下文中,将关于AAC LD核心编码器以及AAC ELD核心编码器 来描述延迟。

通过使用合成滤波器组或分解滤波器组的实施例,可以通过实现 修正MDCT窗/滤波器组来实现延迟减小。通过使用前述并说明的具有 多重叠的不同窗函数来扩展MDCT和IMDCT以获得低延迟滤波器组, 从而实现了实质上的延迟减小。低延迟滤波器组的技术允许使用具有 多重叠的非正交窗。按照这种方式,可以获得比窗长度更低的延迟。 因此,可以实现低延迟以及仍然较长的冲击响应(产生良好的频率选 择性)。

如前述的,帧大小为M=480个采样的低延迟窗将MDCT延迟从960 个采样减小至720个采样。

总之,与MPEG-4ER AAC LD编解码器不同,在某些环境下,编 码器的实施例和解码器450的实施例能够在非常小的比特范围上产生 良好的音频质量。尽管前述ER AAC LD编解码器在每声道64kb/s至 48kb/s的比特范围产生良好的音频质量,然而,如本文献中描述的编 码器400和解码器450的实施例能够提供的音频编码器和解码器在某些 环境下能够在甚至更低的比特率(约每声道32kb/s)下产生等同的音 频质量。此外,编码器和解码器的实施例具有足够小的算法延迟以供 双向通信系统使用,这可以通过使用仅最少修改在已有技术中实现。

本发明的实施例(尤其采用编码器400和解码器450形式)通过将 已有的MPEG-4音频技术与对低延迟操作而言使低延迟操作达到本发 明的实施例所需的最小数目的适配相结合,从而实现了这一点。具体 地,可以将MPEG-4ER AAC低延迟编码器与MPEG-4频带复制(SBR) 工具相结合,以通过考虑所述修改来实现编码器400和解码器450的实 施例。通过略微修改SBR工具(不在本申请中予以描述)并使用低延 迟核心编码器滤波器组的实施例以及分解滤波器组或合成滤波器组的 实施例,减轻了所产生的算法延迟的增大。根据具体实现,与普通AAC LD编码器相比,这种增强型AAC LD编码器能够在相同的质量水平上 节省高达33%的比特率,同时对双向通信应用保持足够低的延迟。

在参考图14给出更详细的延迟分析之前,对包括SBR工具的编码 系统进行描述。换言之,在这一部分,关于图14a所示的编码系统500 的所有部件对总体系统延迟的贡献来分析这些部件。图14a给出了完整 系统的详细概述,其中图14b着重于延迟源。

图14a所示的系统包括编码器500,编码器500继而包括MDCT时间 /频率转换器,以双速率方式作为双速率编码器工作。此外,编码器500 还包括QMF分解滤波器组520,QMF分解滤波器组520是SBR工具的一 部分。MDCT时间/频率转换器510和QMF分解滤波器组(QMF=正交 镜象滤波器)输入和输出耦合在一起。换言之,向MDCT转换器510 和QMF分解滤波器组520提供相同的输入数据。然而,MDCT转换器 510提供低频带信息,而QMF分解滤波器组520提供SBR数据。将两种 数据组合成比特流并提供给解码器530。

解码器530包括IMDCT频率/时间转换器540,IMDCT频率/时间转 换器540能够对比特流进行解码,以至少在低频带部分方面获得时域信 号,所述时域信号将经由延迟器550提供给解码器的输出。此外, IMDCT转换器540的输出耦合到另一QMF分解滤波器组560,QMF分解 滤波器组560是解码器530的SBR工具的一部分。此外,SBR工具包括 HF产生器570,HF产生器570耦合到QMF分解滤波器组560的输出,并 且能够基于编码器500的QMF分解滤波器组520的SBR数据来产生更 高频率分量。HF产生器570的输出耦合到QMF合成滤波器组580,QMF 合成滤波器组580将QMF域中信号变换回时域,其中,将延迟后的低 频带信号与解码器530的SBR工具所提供的高频带信号进行组合。然后 提供所产生的数据作为解码器530的输出数据。

与图14a相比,图14b着重于图14a所示系统的延迟源。甚至更准确 地,根据编码器500和解码器530的具体实现,图14b示出了包括SBR 工具在内的MPEG-4ER AAC LD系统的延迟源。该音频系统的适当编 码器使用MDCT/IMDCT滤波器组用于512或480个采样的帧大小的时 间/频率/时间变换或转换。因此,根据具体实现,等于1024个采样的 重构延迟的结果是960个采样。如果以双速率模式与SBR相结合来使用 MPEG-4ER AAC LD编解码器,则由于采样速率转换导致延迟值必须 加倍。

更详细的总延迟分析和要求表明,在AAC LD编解码器与SBR工 具相结合的情况下,结果是:在采样速率是48kHz并且核心编码器帧 大小是480个采样的情况下,总算法延迟是16ms。图15包括的表给出 了在假定采样速率为48kHz并且核心编码器帧大小为480个采样的情 况下由不同部件产生的延迟概述,其中,由于双速率方式,核心编码 器在采样速率24kHz下高效地运行。

图15中延迟源的概述表明,在ACC LD编解码器与SBR工具一起 的情况下,将得到16ms的总算法延迟,这实质上比电信应用可允许的 延迟更高。这种评估包括AAC LD编码器与SBR工具的标准组合,该 组合包括来自MDCT/IMDCT双速率部件、QF部件以及SBR重叠部件的 延迟成分。

然而,使用前述适配并通过使用前述实施例,能够实现仅42ms 的总延迟,该总延迟包括来自双速率模式(ELD MDCT+IMDCT)下 的低延迟滤波器组的实施例以及QMF部件的延迟成分。

对于AAC核心编码器的框架中的一些延迟源,以及对于SBR模 块,可以将AAC LD核心的算法延迟描述为2M个采样,其中,同样地, M是核心编码器的基本帧长度。相反,由于引入初始部分160、270, 或在适当窗函数的框架中引入适当数目的零值或其他值,低延迟滤波 器组将采样数目减小M/2。在与SBR工具相结合来使用AAC核心时, 由于双速率系统的采样速率转换导致延迟加倍。

为了清楚,在典型的SBR解码器的框架中,在给定图15的表中的 一些数字的情况下,可以识别两个延迟源。另一方面,QMF部件包括 640个采样的滤波器组重构延迟。然而,因为核心编码器自身已经引入 了64-1=63个采样的成帧延迟,所以可以减去该成帧延迟以得到在图15 的表中给出的577个采样的延迟值。

另一方面,由于可变时间栅格(time grid),使得SBR HF重构导 致了6QMF时隙的标准SBR工具的附加延迟。相应地,在标准SBR中 延迟是64个采样的6倍:384个采样。

通过实现滤波器组的实施例以及实现改进的SBR工具,可以通过 不实现AAC LD编码器与SBR工具的直接组合(具有60ms的总延迟), 而能够实现42ms的总延迟,从而实现18ms的延迟节省。如前述的,这 些图基于48kHz的采样速率并基于M=480个采样的帧长度。换言之, 除了前述示例中M=480个采样的所谓成帧延迟之外,可以通过引入合 成滤波器组或分解滤波器组的实施例来实现低比特率和低延迟音频编 码系统来显著减小总延迟,总延迟对于延迟优化而言是次重要的方面。

可以在许多应用领域(如会议系统和其他双向通信系统)中实现 本发明的实施例。1997年左右这种构思产生时,针对低延迟一般音频 编码方案而设置的延迟要求(其导致了AAC LD编码器的设计)是要 实现20ms的算法延迟,当AAC LD运行在48kHz的采样速率以及M=480 的帧大小的情况下时能够满足这种要求。与此不同,这种编解码器的 许多实际应用(如电话会议)使用32kHz的采样速率,从而以30ms的 延迟来工作。类似地,由于基于IP的通信越来越重要,现代ITU电信 编解码器的延迟要求大约允许40ms的延迟。不同的示例包括近期的算 法延迟为40ms的G.722.1附录C编码器以及算法延迟为48ms的G.729.1 编码器。因此,包括低延迟滤波器组的实施例在内的增强型AAC LD 编码器或AAC ELD编码器实现的总延迟完全位于常见电信编码器的 延迟范围之内。

图16示出了混合器600的实施例的框图,混合器600用于混合多个 输入帧,其中每个输入帧是从不同源提供的相应时域帧的频谱表示。 例如,混合器600的每个输入帧可以由编码器400的实施例或其他合适 的系统或部件来提供。应注意,在图16中,混合器600适于从三个不同 源接收输入帧。然而,这不表示任何限制。更准确地,原则上,可以 将混合器600的实施例适配为或配置为处理和接收任意数目的输入帧, 每个输入帧是由不同的源(如不同的编码器400)提供的。

图16所示的混合器600的实施例包括熵解码器610,熵解码器610 能够对不同源提供的多个输入帧进行熵解码。根据具体实现,例如可 以将熵解码器610实现为霍夫曼熵解码器,或实现为使用其他熵解码算 法(如所谓的算术编码、一元编码(Unary Coding)、Elias Gamma编 码、Fibonacci编码、Golomb编码或Rice编码)的熵解码器。

然后,将熵解码后的输入帧提供给可选的解量化器620,解量化 器620可以被适配为使得可以将熵解码后的输入帧解量化以适应应用 专用的环境(如人耳的响度特性)。然后,将熵解码并可选地解量化后 的输入帧提供给缩放器630,缩放器630可以在频域对多个熵帧进行缩 放。根据混合器600的实施例的具体实现,例如,缩放器630可以通过 将每个值乘以常量因子1/P来对每个可选地解量化并且熵解码后的输 入帧进行缩放,其中P是指示不同的源或编码器400的数目的整数。

换言之,在这种情况下,缩放器630能够将解量化器620或熵解码 器610所提供的帧按比例减小,将其按比例减小以防止相应的信号变得 过大,从而防止溢出或其他计算错误,或防止诸如削波(clipping)等 可听失真。还可以实现缩放器630的不同实现,例如一种缩放器,根据 一个或更多个频带,通过对每个输入帧的能量进行评估,以能量节约 的方式来对所提供的帧进行缩放。在这种情况下,在这些频带中的每 个频带中,可以将频域中相应的值乘以常量因子,使得总能量相对于 所有频率范围都相同。此外或可选地,还可以将缩放器630适配为使得 每个频谱子分组的能量对于所有不同源的所有不同帧都相同,或使得 每个输入帧的总能量为常数。

缩放器630与加法器640耦合,加法器640能够将缩放器所提供的 帧相加,这些帧在频域中也称为缩放帧,从而还在频域中产生相加帧。 例如,这可以通过将与来自缩放器630所提供的所有缩放帧的相同采样 索引相对应的所有值相加来实现。

加法器640能够在频域内将缩放器6340所提供的帧相加以得到相 加帧,所述相加帧包括由缩放器630提供的所有源的信息。作为另一可 选部件,混合器600的实施例还可以包括量化器650,可以将相加器640 的相加帧提供给量化器650。根据应用专用的要求,例如,可选的量化 器650可以用于将相加帧适配为满足一些条件。例如,可以将量化器650 适配为使得可以将解量化器620的节拍(tact)反转。换言之,如果例 如已经被解量化器620去除或改变的、提供给混合器的输入帧以特殊特 性为基础,则量化器650可以适于将这些特殊条件要求提供给相加帧。 例如,量化器650可以适于针对人耳的特性来进行调节。

作为另外的部件,混合器600的实施例还可以包括熵编码器660, 熵编码器660可以对可选地量化后的相加帧进行熵编码,并将混合后的 帧提供给一个或更多个接收机(例如包括编码器450的实施例的接收 机)。同样,熵编码器660可以适于基于霍夫曼算法或前述其他算法来 对相加帧进行熵编码。

通过在编码器和解码器的框架中应用分解滤波器组、合成滤波器 组的实施例以及其他相关实施例,可以建立和实现能够在频域中混合 信号的混合器。换言之,通过实现前述增强型低延迟AAC编解码器之 一的实施例,可以实现能够在频域中直接混合多个输入帧的混合器, 而不必将相应的输入帧变换到时域中以适应可能的参数切换,而针对 语音通信的最新技术编解码器必须实现这个过程。如在分解滤波器组 和合成滤波器组的实施例的情况下说明的,这些实施例实现了在不切 换参数(如切换块长度,或在不同的窗之间进行切换)的情况下进行 操作。

图17示出了以MCU(媒体控制单元)形式的会议系统700的实施 例,例如可以在服务器的框架中实现所述MCU。会议系统700或MCU 700包括多个比特流,在图17中示出了其中两个比特流。组合的熵解码 器和解量化器610、620,以及在图17中标记为“混合器”的组合的单元 630、640。此外,将组合的单元630、640的输出提供给包括量化器650 和熵编码器660在内的组合的单元,包括量化器650和熵编码器660在内 的组合的单元提供输出比特流作为混合后的帧。

换言之,图17示出了会议系统700的实施例,会议系统700能够在 频域中混合多个输入比特流,因为该输入比特流以及输出比特流是在 编码器侧使用低延迟窗来创建的,而所需的是输出比特流,并且能够 在解码器侧基于相同的低延迟窗来对其进行处理。换言之,图17所示 的MCU 700仅基于对一个通用低延迟窗的使用。

因此,混合器600的实施例以及会议系统700的实施例适于应用于 采取分解滤波器组、合成滤波器组或其他相关实施例形式的本发明实 施例的框架中。更准确地,只采用一个窗的低延迟编解码器的实施例 的技术应用允许在频域进行混合。例如,在具有两个以上参与者或源 的(电话)会议场景中,可能经常需要接收多个编解码器信号,将这 些信号混合成一个信号,并传输所产生的编码信号。在会议系统700 和混合器600的一些实施例中,通过在编码器和解码器侧应用本发明的 实施例,与对输入信号进行解码、在时域中对解码后的信号进行混合 以及将混合后的信号再重新编码到频域的直接的方式相比,实现方法 得到了简化。

图18将以MCU的形式的这样的直接混合器的实现示为会议系统 750。会议系统750还包括针对每个输入比特流的组合的模块760,所述 组合的模块760工作在频域中,并且能够对输入比特流进行熵解码和解 量化。然而,在图18所示的会议系统750中,每个模块760耦合到IMDCT 转换器770,IMDCT转换器770之一工作在正弦窗操作模式下,另一个 当前工作在低重叠窗操作模式下。换言之,两个IMDCT转换器770将 输入比特流从频域变换到时域,这在会议系统750的情况下是必要的, 因为输入比特流基于编码器,而编码器根据音频信号使用正弦窗和低 重叠窗来对相应的信号进行编码。

会议系统750还包括混合器780,所述混合器780在时域中对来自 两个IMDCT转换器770的两个输入信号进行混合,并将混合后的时域 信号提供给MDCT转换器790,MDCT转换器790将该信号从时域转换 至频域。

然后,将MDCT 790提供的频域中的混合信号提供给组合的模块 795,然后,组合的模块795能够对信号进行量化和熵编码,以形成输 出比特流。

然而,根据会议系统750的方法具有两个缺点。由于利用两个 IMDCT转换器770和MDCT 790来进行完全解码和编码,所以实现会议 系统750将付出较高的计算代价。此外,由于引入了解码和编码,使得 引入了在特定环境下可能会较高的附加延迟。

通过在解码器和编码器上使用本发明的实施例,或更准确地,通 过实现新的低延迟窗,根据一些实施例的情况下的具体实现,可以克 服或消除这些缺点。如在图17中的会议系统700的情况下说明的,这是 通过执行频域中的混合来实现的。因此,图17所示的会议系统700的实 施例不包括在会议系统750的框架下必须实现的变换和/或滤波器组, 所述变换和/或滤波器组用于对信号进行解码和编码,从而将信号从频 域变换到时域并再次变换回频域。换言之,在不同窗形状下的比特流 混合导致了由MDCT/IMDCT转换器770、790引起的一块的附加延迟的 附加代价。

因此,在混合器600的一些实施例中以及在会议系统700的一些实 施例中,作为另外的优点,可以实现更低的计算量以及对附加延迟的 限制,使得在一些情况下甚至能够实现无附加延迟。

图19示出了低延迟滤波器组的有效实现的实施例。更准确地,在 讨论计算复杂度以及另外的与应用相关的方面之前,在图19的框架中, 将更详细地描述合成滤波器组800的实施例,例如可以在解码器的实施 例中实现所述合成滤波器组800的实施例。因此,低延迟分解滤波器组 800的实施例代表了合成滤波器组或编码器的实施例的反转。

合成滤波器组800包括反IV型离散余弦变换频率/时间转换器810, 反IV型离散余弦变换频率/时间转换器810能够将多个输出帧提供给包 括加窗器和重叠/相加器在内的组合的模块820。更准确地,时间/频率 转换器810是一种反IV型离散余弦变换转换器,为所述时间/频率转换 器810提供包括M个有序的输入值yk(0),...,yk(M-1)在内的输入帧,其中 M同样是正整数,k是指示帧索引的整数。时间/频率转换器810基于输 入值来提供2M个有序的输出采样xk(0),...,xk(2M-1),并将这些输出采样 提供给依次包括上述加窗器和重叠/相加器在内的模块820。

模块820中的加窗器能够产生多个加窗帧,其中每个加窗帧包括 基于以下方程或表达式的多个加窗的采样zk(0),...,zk(2M-1):

zk(n)=w(n)·xk(n),n=0,...,2M-1,

其中,n同样是指示采样索引的整数,w(n)是与采样索引n相对应的实 值窗函数系数。同样包括在模块820中的重叠/相加器提供或产生中间 帧,所述中间帧包括基于以下方程或表达式的多个中间采样 Mk(0),...,Mk(M-1):

mk(n)=zk(n)+zk-1(n+M),n=0,...,M-1,

合成滤波器组800的实施例还包括提升器850,所述提升器859产 生相加帧,所述相加帧包括基于以下方程或表达式的多个相加采样 outk(0),...,outk(m-1):

outk(n)=mk(n)+l(n-M/2)·mk-1(M-1-n),n=M/2,...,M-1

以及

outk(n)=mk(n)+l(M-1-n)·outk-1(M-1-n),n=0,...,M/2-1

其中,l(M-1-n),...,l(M-1)是实值提升系数。在图19中,低延迟滤波器组 800的计算效率较高的实现方式的实施例在提升器830的框架中包含多 个组合的延迟器和乘法器840以及多个加法器850,以在提升器830的框 架中执行上述计算。

根据合成滤波器组800的实施例的具体实现,在每输入帧M=512 个输入值的实施例的情况下,窗系数或窗函数系数w(n)服从附录的表5 中给出的关系。附录的表9包括在每输入帧M=480个输入值的情况下加 窗系数w(n)服从的关系集合。此外,表6和10分别包括针对M=512和 M=480的实施例的提升系数l(n)的关系。

然而,在合成滤波器组800的一些实施例中,针对每输入帧M=512 和M=480个输入值的实施例,窗系数w(n)分别包括在表7和11中给出的 值。相应地,针对每输入帧M=512和M=480个输入采样的实施例,附 录中表8和12分别包括提升系数l(n)的值。

换言之,可以如同常规MDCT转换器一样充分地实现低延迟滤波 器组800的实施例。图19中示出了这样的实施例的总体结构。以与传统 窗相同的方式来执行反DCT-IV以及反向加窗-重叠/相加,然而根据实 施例的具体实现采用前述加窗系数。如在合成滤波器组200的实施例的 框架中的加窗系数的情况下一样,在该情况下,M/4个窗系数是零值 加窗系数,从而原则上这些窗系数不涉及任何运算。在提升器830的框 架中可以看出,对于扩展至过去的扩展的重叠,仅需要M次附加的相 乘-相加运算。这些附加运算有时也称作“零延迟矩阵”。有时这些运算 也称为“提升步骤”。

作为合成滤波器组200的直接实现,图19所示的有效实现在一些 环境下可以更加高效。更准确地,根据具体实现,这种更高效的实现 可以导致节省M次运算,因为在针对M次运算的直接实现的情况下, 如图19所示的实现原则上需要的,在模块820的框架中实现2M次运算, 在提升器830的框架中实现M次运算是合理的。

对于关注低延迟滤波器组的实施例的复杂度的评估,尤其是关于 计算复杂度的评估,图20包括的表示出了在每输入帧M=512个输入值 的情况下根据图19的合成滤波器组800的实施例的实现的实施例的算 术复杂度。更准确地,图20的表包括在(修正)IMDCT转换器的情况 下以及在低延迟窗函数的情况下的加窗操作所产生的总运算次数的估 计。该总运算次数是9600。

相比之下,图21包括IMDCT的算术复杂度以及基于参数M=512的 正弦窗进行加窗所需要的复杂度的表,该表给出了如AAC LD编解码 器之类的编解码器的总运算次数。更准确地,该IMDCT转换器与正弦 窗的加窗的总算术复杂度是9216次运算,这与在图19所示的合成滤波 器组800的实施例的情况下得到的总运算次数的数量级相同。

作为另外的比较,图22包括针对AAC LC编解码器的表,AAC LC 编解码器也称作具有低复杂度的高级音频编解码器。该IMDCT转换器 的算术复杂度(包括AAC LC(M=1024)的加窗重叠的操作在内)是 19968。

总之三幅图的比较表明:包括增强型低延迟滤波器组的实施例在 内的核心编解码器的复杂度,实质上与使用常规MDCT-IMDCT滤波器 组的核心编码器可比。此外,其运算次数约为AAC LC编解码器的运 算次数的一半。

图23包括两个表,其中图23a包括对不同编解码器的存储器需求 的比较,而图23b包括关于ROM需求的相同估计。更准确地,图23a和 23b中的表格分别包括:针对前述编解码器AAC LD、AAC ELD以及 AAC LC,在RAM需求方面关于帧长度、工作缓冲器的信息以及关于 状态缓冲器的信息(图23a),以及在ROM存储器需求方面关于帧长度、 窗系数数目及总和的信息(图23b)。如前述的,在图23a和23b的表中, 缩写AAC、ELD是指合成滤波器组、分解滤波器组、编码器、解码器 的实施例或后面的实施例。总之,与采用正弦窗的IMDCT相比,低延 迟滤波器组的实施例的根据图19的所述有效实现需要:长度为M的附 加状态存储器和M个附加系数(提升系数l(0),...,l(M-1))。因此,由于 AAC LD的帧长度是AAC LC的帧长度的一半,所以所产生的存储器需 求在AAC LC的存储器需求的范围之内。

因此,关于存储器需求,图23a和23b所示的表针对三种前述编解 码器来比较RAM和ROM需求。可以看出,低延迟滤波器组的存储器 增加仅是适度的。总存储器需求仍然比AAC LC编解码器或实现要低 得多。

图24包括针对在性能评估的框架中使用的MUSHRA测试而使用 的编解码器的列表。在图24所示的表中,缩写AOT代表音频对象类型, 其中条目X代表音频对象类型ER AAC ELD(也可以被设置为39)。换 言之,AOT、X或AOT 39标识了合成滤波器组或分解滤波器组的实施 例。缩写AOT在本文中代表“音频对象类型”。

在MUSHRA测试的框架中,通过对列表中的所有组合来执行收听 测试,测试在前述编码器之上使用低延迟滤波器组的实施例所造成的 影响。更准确地,这些测试的结果实现了以下结论。在每声道32kbit/s 下的AAC ELD解码器比32kb/s下的原始AAC L解码器的性能明显更 好。此外,在每声道32kb/s下的AAC ELD解码器的性能与每声道48kb/s 下的原始AAC LD解码器在统计上不可区分。作为检查点(check point) 编码器,绑定的AAC LD与低延迟滤波器组的性能与运行在48kb/s下的 原始AAC LD编码器在统计上不可区分。这证实了低延迟滤波器组的 适用性。

因此,总体编码器性能仍然是可比的,同时实现了在编解码器延 迟方面的显著节省。此外,还可以保持编码器压力性能。

如前述的,有希望的应用场景或本发明实施例的应用,如AAC ELD编解码器的实施例,是下一代的高保真视频电话会议和IP电话应 用。这包括以高质量水平和有竞争力的比特率对如语音或音乐等的任 意音频信号的传输或在多媒体呈现情况下的传输。本发明实施例 (AAC ELD)的低算法延迟使得该编解码器对于所有类型的通信和应 用都是优秀的选择。

此外,本文描述了增强型AAC ELD解码器的结构,该增强型AAC ELD解码器可选地与频带复制(SBR)工具相结合。为了限制相关联 的延迟增加,在SBR工具和核心编码器模块中,在实时现场实现方面 进行微小修改可能变得必要。与当前由MPEG-4音频标准所提供的性 能相比,基于前述技术得到的增强型低延迟音频解码的性能显著提高。 然而,核心编码方案的复杂度仍然实质上相同。

此外,本发明的实施例包括分解滤波器组或合成滤波器组,所述 分解滤波器组或合成滤波器组包括低延迟分解窗或低延迟合成滤波 器。此外,分解信号或合成信号的方法实施例包括低延迟分解滤波步 骤或低延迟合成滤波步骤。还描述了低延迟分解滤波器或低延迟分解 滤波器的实施例。此外,公开了一种计算机程序,具有用于在计算机 上运行时实现上述方法之一的程序代码。本发明的实施例还包括具有 低延迟分解滤波器的编码器、或具有低延迟合成滤波器的解码器或相 应方法之一。

根据本发明方法的实施例的特定实现要求,可以以硬件或软件来 实现本发明方法的实施例。实现方式可以使用数字存储介质来执行, 尤其是其上存储有电子可读的控制信号的盘、DVD或CD,所述控制 信号可以与可编程计算机或处理器协作来执行本发明方法的实施例。 一般地,因此,本发明的实施例也在于具有程序代码的计算机程序产 品,所述程序代码存储在机器可读载体上,当计算机程序产品在计算 机或处理器上运行时,所述程序代码执行本发明方法的实施例。换言 之,因此,本发明方法的实施例是具有程序代码的计算机程序,当计 算机程序在计算机或处理器上运行时,所述程序代码执行本发明的方 法的至少一个实施例。在这种情况下,处理器包括CPU(中央处理单 元)、ASIC(专用集成电路)或其他集成电路(IC)。

尽管参照本发明的具体实施例来具体地说明并描述了以上内容, 但是本领域技术人员可以理解,在不脱离本发明的精神和范围的前提 下,可以做出形式和细节上的各种其他改变。应理解,在不脱离这里 所公开的并由所附权利要求所概括的更宽的概念的前提下,可以做出 各种改变来适应不同的实施例。

附录

表1(窗系数w(n);N=960)

表2(窗系数w(n);N=960)

表3(窗系数w(n);N=1024)

表4(窗系数w(n);N=1024)

表5(窗系数w(n);M=512)

表6(提升系数l(n);M=512)

表7(窗系数w(n);M=512)

表8(提升系数l(n);M=512)

表9(窗系数w(n);M=480)

表10(提升系数l(n);M=480)

表11(窗系数w(n);M=480)

表12(提升系数l(n);M=480)

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号