元数据驱动的动态范围控制的制作方法

文档序号:17188765发布日期:2019-03-22 21:45阅读:247来源:国知局
元数据驱动的动态范围控制的制作方法
本发明的实施例通常涉及一种用于对音频信号进行编码并对其应用动态范围控制/压缩(drc)的系统和方法。此外,本文所述的系统和方法考虑到开发中的新的编解码器在mpeg-h(3d音频)中的drc需求。还描述了其他实施例。
背景技术
:动态范围控制/压缩(drc)通过(1)使得音频信号中的轻柔部分较响亮;(2)使得音频信号中的响亮部分较轻柔;或(3)同时使得轻柔部分较响亮并使得响亮部分较轻柔来在某种程度上减小音频信号的动态范围。减小的动态范围在若干个情况下可为所期望的,这些情况包括对于可仅再现小的动态范围并同时保持低失真、收听具有分心噪声的环境的音频回放系统的情况,以及在收听者不想打扰其他人的情况。尽管drc是如今音频编解码器的重要特征,但若干个新近的音频编解码器并不支持drc。例如,移动图像专家组(mpeg)设定的统一的语音和音频编码(usac)标准中缺少drc。高级音频编码(aac)结合drc工具,但该drc工具具有包括有限时间分辨率和混叠失真在内的缺点。技术实现要素:本发明描述了一种用于对动态范围控制/压缩(drc)增益值进行编码并将其应用于一条声音节目内容的系统和方法。在一个实施例中,表示一条声音节目内容的drc增益曲线的一组drc增益值可被分为与该条声音节目内容的帧对应的若干个帧。附加字段或一组字段可与表示一条声音节目内容的音频信号一起被包括。附加字段可使用线性插值或样条插值来表示drc增益值。在一个实施例中,附加字段可包括:1)用于每个drc帧的初始增益值,2)drc曲线中的特定点处的一组斜率值,3)用于每对连续斜率值的一组时间增量值,以及4)表示与斜率值对应的点之间的drc增益曲线中的drc增益值的变化的一个或多个增益增量值。如本文所述,本文的系统和方法提供了一种用于对drc增益值进行编码并将其应用于一条声音节目内容的有效技术。以上概述不包括本发明的所有方面的详尽列表。可预期的是,本发明包括可由上文概述的各个方面以及在下文的具体实施方式中公开并且在随该专利申请提交的权利要求中特别指出的各种方面的所有合适的组合来实施的所有系统和方法。此类组合具有未在上述
发明内容中具体阐述的特定优点。附图说明本发明的实施例以举例的方式进行说明,而不仅限于各个附图的图示,在附图中类似的附图标号指示类似的元件。应当指出,本公开中提到“一”或“一个”实施例未必是同一实施例,并且它们表示至少一个实施例。图1示出了根据一个实施例的在音频解码器之后的压缩后处理的框图。图2示出了根据一个实施例的动态范围控制/压缩(drc)增益表示。图3示出了根据一个实施例的编码器drc特性。图4示出了根据一个实施例的在发射器处生成的一组示例性drc元数据。图5示出了根据一个实施例的示例性差值类型。图6示出了根据一个实施例的两个延迟模式。图7示出了根据一个实施例的林奎茨-莱利(linkwitz-riley)交叉滤波器的拓扑结构。图8示出了根据一个实施例的利用具有64个子频带的滤波器组的4频带drc的加权系数的实例。图9示出了根据一个实施例的用于某些对应解码器窗口形状的动态范围控制/压缩(drc)窗口形状。图10示出了根据一个实施例的应用于单独小块窗口的drc增益值。图11示出了根据一个实施例的应用于音频信号上的drc增益值。具体实施方式现在将参考所附附图来解释本发明的若干个实施例。每当在实施例中描述的部件的形状、相对位置和其它方面未明确限定时,本发明的范围并不仅局限于所示出的部件,所示出的部件仅用于例证的目的。另外,虽然阐述了许多细节,但应当理解,本发明的一些实施例可在没有这些细节的情况下被实施。在其他情况下,未详细示出熟知的电路、结构和技术,以免模糊对本具体实施方式的理解。将动态范围控制/压缩(drc)元数据结合到比特流/格式中的元数据系统相比于在收听者端处(即,在回放处)确定drc增益值的系统提供若干个优点。这些优点包括(1)音频信号的回放处的较低复杂性;(2)drc的复杂性在回放期间出现的问题减少,这就允许实现更复杂的drc程序;以及(3)收听者端处的音频回放设备可决定是否应用drc。尽管使用drc元数据系统提供了若干个优点,但传统的drc元数据系统诸如由高级电视系统委员会(atsc)和移动图像专家组(mpeg)所提供的那些传统的drc元数据系统也提供了若干个缺点。传统的drc元数据系统(例如,由atsc和mpeg标准所限定的那些传统drc元数据系统)支持如表1所示的轻压缩和重压缩。在大多数情况下,drc增益值更新的速率为每帧一个值。在48khz的采样率下,这相当于介于21ms和43ms之间的更新间隔。轻压缩模式中的ac-3在48khz、约5ms的情况下具有快六倍的速率。此外,对于较低音频采样率,这些传统的drc元数据系统中的drc增益值以较低速率更新。表1:音频标准中的drc增益元数据的参数实际drc调谐表明,对于某些音频信号的增益变化应比可利用当前标准所实现的增益变化快得多。当前drc标准和系统(诸如mpeg-aac和atsc)的另一问题源于在应用反相mdct滤波器组之前将drc增益应用于频域中的事实。mdct滤波器组为基于时域混叠消除的转换。如果对连续重叠块应用不同的增益值,则无法实现混叠消除。增益变化可导致听觉失真诸如预回声。这对于响板记录可能很容易示出。在一个实施例中,如果在解码器重建音频信号之后将drc增益应用于时域中,则可避免mdct伪像。在频域中,每个长块或每个短块至多可修改增益一次。相比之下,本文所述的时域方法支持所期望的更高时间分辨率。尽管时域方法当前不支持多频带drc(对mpeg轻压缩可用),但可改进本文所述的实施例以支持多频带drc。由于插值和drc增益的应用,本发明提出的方案可稍微增大解码器复杂性。然而,考虑到特别是利用可在高比特率下出现并且可利用高质量回放系统重现的内容来避免不必要的失真,这些缺点显得无关紧要。drc工具概述本文所述的drc工具基于可应用于时域或子频带域音频信号(诸如he-aac解码器的qmf滤波器组的子频带)的统一drc增益编码。以下描述首先涵盖了时域应用。对于子频带域应用,仅描述了对时域方法的修改。时域应用如图1所示,本节描述了动态压缩工具如何应用于解码之后的时域音频信号。图1示出了在音频解码器之后的压缩后处理的框图。在一个实施例中,drc工具的解码器部件由元数据来驱动,该元数据有效地表示压缩增益样本和用于插值的参数。在一些实施例中,增益样本可尽可能快地更新以准确地表示下至至少1ms的更新间隔的增益变化。如果增益基本上恒定,则每drc帧仅使用单个增益样本可足以。为了使比特率最小化,编码器可仅选择足够的drc增益样本以确保解码之后的音频信号中的重建的drc增益的足够精度。实际上,在存在较大增益变化的情况下,这可能意味着较小的更新间隔。由于编码器仅提供稀疏采样的增益值,因此解码器可应用插值以实现样本之间的平滑增益转换。经插值的增益的采样率为音频采样率。所使用的插值技术可基于样条。两个相继增益样本之间的一个区段的内插值从该区段的两端处的两个增益样本及其斜率(导数)导出。因此,当从一个区段过渡到下一个区段时,由于该两个区段在过渡点处具有相同斜率,因此一阶导数是连续的。图2示出了基于经量化的drc增益样本的插值。上面的曲线a示出了以诸如音频采样率的高采样率的drc输出增益。drc增益的样本和斜率(即,圆圈和箭头)基于均匀时间网格稀疏地提取。下面的曲线b示出了经量化的增益样本坐标(时间和值)和经量化的斜率,该两者被传输至drc解码器工具。解码器工具在增益曲线应用于由虚线所示的音频信号之前对其进行插值。在一个实施例中,用于对增益曲线进行采样的最小可能时间间隔为介于0.5ms和1.0ms之间的固定值并且最大可能时间间隔为每drc帧一个增益样本。除了上述样条模式之外,“简单”模式在没有定时参数和斜率参数的情况下也可用于传输每drc帧仅一个drc增益值。该模式最适合于具有基本上恒定drc增益的帧并且占用最小数量的位。对于drc工具与音频编解码器协同应用,提供如下参数来调节drc帧尺寸和时间分辨率,使得编解码器和drc处理在复杂性和延迟方面可最有效地完成。这些参数为:·以音频采样间隔为单位的drc帧尺寸·以音频采样间隔为单位的delta_t_min·延迟模式尽管这些参数具有默认值,但编解码器规格可覆写这些默认值。修改drc特性drc工具支持通过以下若干种方式对经解码的drc增益进行的修改:·升压因子·压缩因子·自定义drc特性升压因子为以db为单位的应用于正增益值以减小放大率的介于0和1之间的值。压缩因子为应用于负增益值以减少衰减的介于0和1之间的值。包括编码器drc的drc配置在下文中可称为“样本描述”。例如,前六个静态drc特性在图3中示出。从概念上来讲,如果此类静态压缩特性无法从drc算法中明确得出,则该特性可使用1khz正弦曲线来测量。当峰值在满刻度时,正弦曲线的水平被限定在-3dbfs。图3所示的特性具有下至完全没压缩的不同压缩程度。在最简单的情况下,根据期望压缩效果来选择特性。在还必须控制过载的情况下,例如对于降混,任选地仅可将限制器应用于可能不具有静态压缩效果的编码器中。因此,在仅应用限制器而无drc的情况下,恒为0db增益的特性可为有用的。一般来讲,在比特流中传送的drc增益可为动态压缩或限制或该两者的结果。发射器处的drc元数据生成的实例在图4中示出。基于根据草案iso/iec14496-12的样本描述来对drc进行配置。音频信号在其进入drc之前可为规格化为-31lkfs的响度。drc元数据可与音频比特流一起被传输。接收器可基于样本描述中所传达的发射器的drc特性并基于自定义目标drc特性来修改静态drc特性。利用所接收的drc增益值(gainquant)开始,接收器可应用反相发射器drc特性,然后应用新的目标drc特性,如表2所示:表2:根据目标drc特性的drc增益映射发射器特性1至6的反相可根据表3和表4来计算。请注意,由于增益总是为0db,因此特性2不具有有用的反相。表3:反相编码器drc特性1至6的计算表4:drc特性1至6的参数解码器drc目标特性不被认为是标准化的。它们可由实现器任选地进行定义以实现自定义的压缩特性。以下章节更详细地解释如何应用增益映射。样本描述可包括总共11个编码器drc特性。为了与现有系统兼容,除了上述以及图3所示的前6个特性,样本描述还包含表5中所示的能够在atsc系统中可用的另外五个特性。表5:编码器drc特性7至11的索引样条区段解码器中的drc增益的插值基于成对的增益样本。每对具有增益坐标(时间和以db为单位的值)和斜率信息。解码器将选择如图5所示的三个可用类型的插值中的一个插值。在大多数情况下,选择三次插值,该插值由图5中的样条区段a示出。然而,在某些情况下,应用将线性插值和二次插值结合的混合插值来代替,该线性插值和二次插值由图5中的样条区段b和c示出。对于混合插值,在两个增益坐标之间插入节点(示出为图5中的样条区段b和c中的方块)。在该节点的一侧应用线性插值,并且在另一侧应用二次插值。下面对该方法进行充分详细的说明。组帧在drc帧中整理drc增益信息。在drc帧的持续时间内,每个drc帧包含用于生成drc增益的drc数据。对于给定音频项,drc帧持续时间为恒定不变的并且其为音频采样间隔的倍数。drc帧不重叠。实际上,只要条件合适,则建议drc帧尺寸与编解码器的帧尺寸相同以使延迟和复杂性最小化。这可作为默认设置。时间分辨率drc工具使用均匀时间网格来生成drc增益的稀疏表示。该网格的间距限定了最大可用时间分辨率delta_t_min。delta_t_min的单位在音频采样率下为一个采样间隔。出于复杂性方面的考虑,选择delta_t_min为音频采样间隔的整数倍,其对应持续时间介于[0.5…1.0]ms之间。优选地,delta_t_min为2的整数幂,使得采样率可在音频和drc之间有效地转换。基于如下公式来计算默认值:delta_t_min=2m其中fs0.0005s<delta_t_min≤fs0.001s(1)在上面的公式中,音频采样率fs以hz为单位,并且指数m为非负整数。解码器中的预先操作drc工具解码器可在两个延迟模式中的一个延迟模式中操作。低延迟模式立即应用经解码的drc增益,而默认模式利用一个drc帧的延迟来应用drc增益。默认模式支持从当前drc帧的任何位置到下一drc帧的任何位置的增益样本插值。低延迟模式要求增益值样本位于drc帧的末尾处。图6示出了两个延迟模式:低延迟模式a和默认延迟模式b。上面的图示a示出了每个drc帧具有位于帧末尾处的样条节点,使得针对该帧的整个drc增益曲线可通过插值立即生成。下面的图示b示出了插值增益曲线利用一个drc帧的延迟被应用,因为对帧n-1的插值(由圆圈表示)仅能够在接收到帧n的第一节点(由方块表示)之后完成。对于常见的感知编解码器,默认延迟模式b将不需要附加解码器延迟。由于重叠相加操作,已需要该延迟。低延迟模式可适用于不具有固有延迟(诸如由重叠相加所引起的延迟)的解码器。例如,一些无损编解码器就属于这种情况。解码增益坐标和斜率的解码过程包含以下任务序列:·采集drc配置信息·解析drc比特流·应用包括哈夫曼解码的代码表以对经量化的值进行解码·撤销差分编码drc配置信息可为样本描述的一部分。drc配置信息可包括与解码相关的如下参数:·增益序列的数量:ndrcgainsequences·针对每个声道的增益序列的分配。使用相同序列的声道被称为声道组。组的总数为ndrcchannelgroups·组中drc频带的数量:ndrcbands给出这些参数,可根据表20和表21来解析drc比特流。在下文中,为了清楚起见,伪码限于一个增益序列。在一般情况下,可添加外循环以处理表6和表9中的每个增益序列。编码值通过应用该表22和表25进行解码。该操作在表6中由伪函数decode_initial_gain()、decode_delta_gain()、decode_time_delta()和decode_slope()来表示。经差分编码的值继而根据表6转换为绝对值。经解码的结果由增益值gdrc[g][b][k]、时间值tdrc[g][b][k]和斜率值sdrc[g][b][k]来表示,其中g为声道组索引,b为频带索引,并且k为样条节点索引。时间值为以delta_t_min为单位的相对于drc帧起始的整数。与drc帧的起始一致的音频样本具有tdrc=0的时间值。表6:db域中的drc增益样本坐标和斜率的解码。增益修改和插值如上根据标题“修改drc特性”所述的,存在在drc工具解码器中适应drc特性的若干种方式。将这些调整应用于db域中的经解码的增益样本。函数tolinear()在表7中被引入,其包括用于从以db为单位的对数值生成线性增益样本的所有必要步骤(见表7)。该函数包含支持drc增益值的修改的可选的映射函数mapgain()(见表2),其目的在于实现不同于在编码器中所使用的压缩特性。映射由索引characteristicindex控制,该索引在其大于0的情况下将选择自定义解码器drc特性中的一个自定义解码器drc特性。否则,将不替换编码器特性。可基于样本描述中所传达的编码器压缩特性来生成经修改的特性。此外,还支持压缩和升压因子以分别缩放负增益和正增益。这些因子则具有1.0的值,除非用户提供范围[0,1]中的值。最后,应用响度标准化增益。在将增益应用于音频信号之前,必须将音频信号转换为线性域和必须内插于增益样本之间的增益值。为了实现较低复杂性,可在插值之前完成db到线性的转换。因此,插值过程完全是在线性域中完成的。增益修改和到线性域的转换两者均使用表7的伪码来完成。输入变量为db域中的增益样本和斜率。输出由线性域中的增益样本和斜率组成。对于响度标准化,以db为单位的响度标准化增益值(loudnessnormalizationgainsdb)可由响度控制工具或其他装置提供至解码器。如果未提供,则使用0.0的默认值。在一个实施例中,标准化增益是以目标响度和内容响应之间的以dbfs为单位的差值来计算的。目标响度为所期望的输出响度水平。内容响度等于如2013年10月在瑞士日内瓦举行的第106届mpeg会议上的iso/mpeg(106thmpegmeetinggeneva,switzerland),“14496-12pdam3-enhancedaudio(fileformat)”中所定义的程序响度或锚响度。如果程序响度和锚响度均未提供,则可将默认值用于内容响度。表7:drc增益样本和相关联的斜率从db域到线性域的转换增益插值由表8中的伪码来实现。输入变量为:·以目标采样率间隔tgainstep为单位的两个增益样本之间的时间差·以db为单位的一对相继的增益样本gain0和gain1·db域中的一对对应斜率陡度值slope0和slope1。该函数使用tolinear()来将变量转换为线性域。结果为在位于一对增益样本之间的目标采样率下的平滑增益值序列。目标采样率为经压缩的音频信号的采样率。表8:一个样条区段的drc增益的插值应用压缩将每个样条区段的内插增益值串联以生成整个drc帧的完整增益向量gain[g][b][t]。最后,应用如表9所示的增益向量。如果当前声道c属于样本描述中所指定的当前drc声道组,则函数channelindrcgroup()则返回true。请注意,对样条区段的调度取决于如表9中所指示的延迟模式(见上文标记“解码器中的预先操作”的章节)。表9:将样条区段串联成增益向量并且将该drc增益向量应用于音频声道。表9基于以下假设:·splinesegment为包含一个样条区段的增益值的向量。·持续时间为描述以音频采样间隔为单位的样条区段的持续时间的整数。·nnodes为当前drc帧中的增益值的数量。·drcframesize为drc帧中的音频采样间隔的数量。·如果delaymode==delay_mode_default,则初始化以下变量:gdrcprev[g][b][0]=0.0,sdrcprev[g][b][0]=0.0;tdrcprev[g][b][0]=drcframesize;nnodesprev[g][b]=1.多频带drc滤波器组当将drc增益应用于时域中并且使用多频带drc时,必须在drc增益应用于频带之前将时域音频信号分离成子频带。滤波器配置参数可由在mpeg文件格式中所定义的drcinstructions()来传送。mpeg文件格式可为多个频带和介于频带之间的交叉频率索引提供比特流语法。时域音频信号由具有图7所示的拓扑结构的林奎茨-瑞利(lr)滤波器分离成指定数量的频带。针对2个频带、3个频带和4个频带的林奎茨-瑞利交叉滤波器的拓扑结构在图7中示出。如图7所示,频带索引b随频带频率而增大。交叉频率fc,b随索引b(即,fc,b+1>fc,b)而增大。在全通滤波器范围内的交叉频率指定具有匹配的相位响应的对应lr低通滤波器。如果存在多于两个的频带,则全通滤波器被添加以补偿不同输出的延迟,使得它们均同相。低通滤波器和高通滤波器实现为二阶区段(双二阶)。如图7所示,每个林奎茨-瑞利(lr)交叉滤波器由形成平坦频率响应的一对互补的低通滤波器和高通滤波器构成。每个lr低通滤波器由两个相同巴特沃斯(butterworth)(bw)低通滤波器的级联来创建。类似地,每个lr高通滤波器为与bw低通滤波器具有相同阶数和截止频率的两个相同bw高通滤波器的级联。每个bw滤波器和每个全通滤波器实现为具有如下传递函数的二阶区段。基于表26中的交叉频率索引,解码器可查找归一化交叉频率fc,norm或滤波器系数参数γ和δ。然后使用用于bw滤波器的表10和用于全通滤波器的表11来计算滤波器系数。以hz为单位的交叉频率由如下公式来计算fc:fc=fs·fc,norm。(3)在多速率解码器配置诸如双速率he-aac的情况下,fs为最终输出信号的采样率。表10:巴特沃斯滤波器系数公式图7中的全通滤波器用于生成与lr低通滤波器中的一个lr低通滤波器相同的相位响应(具有图7中匹配的灰度级和匹配的fc),使得所有频带的信号在滤波器组的输出处均同相。如表11所示,全通滤波器系数从对应bw低通滤波器的系数导出。表11:全通滤波器系数公式在将drc增益应用于单个频带之后,通过添加所有频带来计算最终音频信号。应用于解码器的子频带域的drc尽管drc增益在时域中的应用对于aac是必需的,但其他mpeg编解码器使用子频带域drc。子频带域drc的概念意味着解码器的现有子频带信号受drc增益应用限制。因此,不必要添加用于多频带drc的时域频带分离并且可能在频域中进行渲染和/或降混之前应用drc增益。表12包含编解码器和应用drc增益的域的不完全列表。域可取决于解码器配置而非比特流。例如,如果mpeg-surround利用普通的aac解码器来解码,则在时域中应用drc增益。此外,子频带域可以不是核心编解码器的mdct域。相反,子频带域通常为qmf域。表12:各种mpeg解码器的drc增益应用的域为了实现多频带压缩,将压缩器频带映射到解码器子频带组。无需进行附加滤波。drc交叉频率映射到可用的最靠近的解码器子频带交叉频率。给出用于子频带s的fc,norm,sb(s)归一化子频带交叉频率,fc,norm(b)的经映射的交叉频率为:iffc,norm,sb(s)≤fc,norm(b)≤fc,norm,sb(s+1):如本文所述,可对drc增益进行解码。然而可使用表8和表9中所述的相同技术来内插drc增益,降低插值结果的采样率以匹配子频带信号的采样率。这可由因子l通过对经插值的时域drc增益进行二次采样或通过使用子频带采样率作为目标来进行直接内插来实现。为了避免drc频带之间的频谱突变,相邻drc频带的增益之间可能存在“淡入淡出”。该操作被称为重叠。重叠是由加权系数w来控制的,针对每个子频带存在一个加权系数。加权系数w可根据表14来计算并且确定当前频带的drc增益的贡献和下一频带的drc增益的贡献。图8示出了利用具有64个子频带的滤波器组的4频带drc的加权系数的实例。图8中的频带边缘表示为短划线,频带中心表示为实线,并且权重表示为虚线。在重叠之后,将每个压缩器频带的drc增益应用于与压缩器频带对应的每个子频带组。将导致滤波器组延迟的小延时d添加至drc增益以实现与音频信号的适当的时间对准。下采样和延迟操作可由表13中的伪码的第一部分来表示。下文将两个参数的值作为特定于编解码器的值进行论述。表13中伪码的变量和函数的含义在表15中进行说明。描述假设所有子频带中的采样率是相等的。如果不是这种情况,则可针对不同的子频带采样率来调整下采样因子l。表13:解码器子频带中的drc增益下采样、重叠和应用表14:重叠加权的计算。代码项含义gainsb待应用于解码器子频带的drc增益gainlr低速率(重采样的)drc增益fcross归一化交叉频率drcframesizesb一个音频帧中的每子频带的子频带样本数量ndecodersubbands解码器子频带的数量fcentersubband解码器子频带的中心频率w0,w1增益重叠的权重olapsize重叠区域相对于交叉频率的尺寸olap以归一化频率为单位的重叠区域的尺寸audiosamplesbin动态压缩之前的经解码的子频带音频样本audiosamplesbout动态压缩之后的经解码的子频带音频样本表15:代码项的说明用于传统流式场景的drc配置drc配置信息可由mpeg文件格式语法来传达。然而,如果使用传统流式格式诸如adts来承载不支持mpeg文件格式的mpeg音频流,则可将配置信息嵌入音频流中。这可通过将文件格式的audiosampleentry()语法(或其压缩版本)添加至theuni_drc_info()语法来实现。由于样本条目信息仅在相比于帧速率的低速率下才需要,因此可使用指示该信息何时可用的存在标记。扩展语法在表16中给出。表16:具有样本条目域的扩展uni_drc_info()有效载荷的语法。对于这种情况,drc信息仅可在解码器接收到样本条目之后被解码。样本条目信息的重复率确定解码延迟。优先性如果比特流包含所提出的drc元数据和其他drc元数据诸如mpeg轻压缩或重压缩,则所提出的元数据将具有优先性,除非解码器被指示应用其他drc元数据。特定于解码器的信息高级音频编码(aac)用于aac的drc元数据扩展对于aac而言,可使用用于承载填充元素中的所提出的drc元数据的具有新id的新扩展有效载荷。id使用4位代码进行编码并且当前仅定义了7位。将该drc信息嵌入在新扩展有效载荷中保证了与将忽略新有效载荷的现有解码器的向后兼容性。所提出的新的extension_type在表17中给出。其包含表20中给出的uni_drc_info()。符号扩展类型的值目的uni_drc1111统一的drc表17:对aac的新的extension_type的定义aac的延迟模式aac使用默认延迟模式。用于aac的drc帧尺寸和时间分辨率drc帧尺寸具有默认尺寸(即,其具有与aac帧尺寸相同的持续时间)。如上文标记“时间分辨率”的章节中所指定的,计算在音频采样率下的样本数的delta_t_min的值。为了方便起见,这里基于以下公式和表18来提供具体值:δtmin=2m(5)适用指数m可通过查找满足以下条件的音频采样率范围被找到:fs,min≤fs<fs,max(6)fs,min[hz].fs,max[hz]m80001600031600032000432000640005640001280006表18:用于确定aac的drc时间分辨率的表给定编解码帧尺寸ncodec,在速率delta_t_min下以drc样本为单位的drc帧尺寸为:ndrc=ncodec2-m(7)mpeg-dusacdrc元数据扩展在usac中,新扩展有效载荷可承载于扩展有效载荷元素usacextelement中。为此目的,新扩展元素类型根据表19来定义。应用依赖于默认编解码的drc设置。符号扩展类型的值目的id_ext_ele_drc3统一的drc表19:用于usac的新的usacextelementtype的定义mpeg-4he-aac、he-aacv2、mpeg-dsurround、mpeg-dsaocdrc元数据扩展如上所述,drc元数据可承载于aac核心流中。mpeg-4he-aac、he-aacv2、mpeg-dsurround和mpeg-dsaoc由核心解码器诸如aac-lc以及位于该核心解码器的顶部上的一个或多个附加层构成。附加层相比于核心增加了音频带宽或音频声道的数量。对于这些解码器,应在合成滤波器组之前即刻将drc增益应用于最高层的子频带,但并非在渲染/混合阶段之后进行。子频带中的drc增益应用对于qmf域中的drc增益应用,时域drc增益可由时域采样间隔d延迟并由因子l进行下采样。d和l的值取决于配置,诸如单一速率与双速率he-aac。对于所有配置,必须实现drc增益和音频信号之间的适当时间对准。比特流语法drc比特流在表20和表21中定义。通常,drc比特流time_domain_drc_info()承载于主机编解码器的扩展有效载荷字段中。表20:uni_drc_info()有效载荷的语法表21:drc_gain_sequence()的语法表22:初始drc增益值的编码表23:drc增益差的编码表24:斜率坡度的编码表25:nnodesmax=ndrc时的时间差的编码crossover_freq_indexfc,normγδ02/10240.00003732520.991360034513/10240.00008362070.987068083024/10240.00014802200.982794708335/10240.00023029600.978539826346/10240.00033021340.974303352752/2560.00058207610.965885289763/2560.00128778370.949266292672/1280.00225158270.932932156183/1280.00490303500.901095853592/640.00844269290.8703307793103/640.01786319280.8118317459112/320.02995458220.7570763753123/320.06049850760.6574551915132/160.09763107290.5690355937143/160.18669433310.4181633458152/80.29289321880.2928932188表26:归一化交叉频率和相关联的滤波器系数参数的编码线性插值drc编码尽管上述涉及基于使用样条插值对增益值进行编码和解码,但在一些实施例中,可使用线性插值来对增益值进行编码和应用。例如,在一个实施例中,可使用如上所述的样条节点来针对一条声音节目内容对drc值进行编码。在该实施例中,可从比特流中删除每个样条节点之间的斜率值。相反,可在样条节点之间执行线性插值而不是样条插值。以这种方式,drc增益值的编码可通过避免生成斜率值来简化。基于窗口的重叠相加drc增益插值在一个实施例中,基于窗口的重叠相加增益插值法可用于对drc增益值进行解码。在该方法中,以类似于上述的方式对增益值进行编码和接收。然而,每个增益值在解码期间用作窗口的乘法器(例如,窗口系数的向量)。经插值的增益曲线此后可通过使用重叠相加法来获得。例如,窗口的经插值的drc增益曲线可为增益值与窗口的乘积。使用窗口的一个原因在于,相比于由在子频带中应用增益值的标准化解码器产生的增益曲线可生成相同的增益曲线。此外,基于窗口的重叠相加增益插值法不生成混叠失真。下文以举例的方式来描述该基于窗口的重叠相加增益插值法的更多深入描述。图9示出了用于某些对应解码器窗口形状(虚线)的drc窗口形状(实线)。从上到下,图9示出了示例性长窗口、由长到短的过渡窗口、短窗口和由短到长的过渡窗口。drc窗口可通过解码器合成窗口的平方来计算。drc窗口可以与对应解码器合成窗口相同的时间被应用。以下公式示出了drc窗口如何根据具有aac帧尺寸n的长aac合成窗口来计算:对于n=[0,2n-1](8)短窗口和过渡窗口可以类似的方式来计算。以下公式(9)示出了由从比特流导出的drc增益值加权的连续drc窗口的重叠相加过程。时间索引和帧索引分别被表示为n和k。时间索引0位于当前合成窗口的起始(当前帧的第一输出样本)处。g(n)=gdrc(k-1)wdrc(k-1,n+n)+gdrc(k)wdrc(k,n)其中n=[0,n-1](9)drc增益继而可xaac根据以下公式(10)应用于解码器输出信号以生成最终的经压缩的音频输出xdrc。drc增益并不被应用于mdct域。xdrc(n)=g(n)xaac(n),对于n=[0,n-1](10)当在mpeg中使用轻压缩时,多频带drc元数据可用于将独立drc增益值应用于单个短块或分组短块。相比于标记“多频带”,可对每个drc增益进行编码,使其应用于短块的整个mdct频域。因此,每个drc增益作为单频带drc进行操作。如果是这种情况,drc操作可如上所述类似地在时域中完成。例如,如图10的上面图所示,如果针对8个短块给出5个drc增益值,则对应drc窗口被示出为实线。下图示出使用具有相同形状和g0到g4的对应drc增益值的8个短drc窗口。drc窗口可从使用具有参数n′=n/8的公式(8)的短窗口形状导出。通过以参数n′代替n来对应地应用公式(9)和(10)。一般来讲,比特流语法允许独立选择用于单个帧的单频带或多频带drc。利用上述时域drc具体实施,无论何时存在真实的多频带drc增益信息(“真实的多频带”意味着针对不同的子频带存在不相等的drc增益值),解码器都将切换到mdct域drc处理。该提案包括经修改的mpeg-aacdrc具体实施,该具体实施通过单频带drc的向后兼容的方式避免了混叠失真。尽管上述涉及mpeg-aacdrc,但在其他实施例中,可使用包括频域drc增益值的任何类型的比特流音频。在上述实施例中,解码器被修改以将drc应用于时域。在另一个实施例中,可将附加字段添加至比特流以提高drc增益值在时域中应用于音频信号的可变性。drc增益值的新字段可在比特流语法中的不同位置处定义。对于mpeg标准,一个选项是表27中所示的填充元素中所携带的附加扩展有效载荷的定义。在该实施例中,可将程序内容的音频声道分成drc组,其中每个组具有独立的一组drc信息,即将单独的独立drc应用于每组声道。音频声道可仅属于一个drc组或不属于drc组。可将分组信息添加至样本描述,其在轨道的起始出现一次。在该实施例中,drc组的数量被称为ndrcchannelgroups。表27:时域drc扩展有效载荷在观察实际具体实施中随时间变化的增益时,可看出增益有时可变化非常缓慢,而在音频信号表现出攻击时增益可表现出显著变化。用于对drc增益值进行编码的必要比特率通过支持用于每个所谓的drcgaininfoblock的单个可选的时间分辨率而降低。音频帧均匀分成多表28中所示的最多至8个这些信息块并且每个信息块可包含最多至16个增益值。与增益值的较大时间分辨率相关联的比特率增加进一步通过使用利用增益变化的熵编码进行的自适应方案来减轻。drc增益值可使用表27中定义的语法在每个音频帧中传输。表28:ndrcgaininfoblocks的查找表条目drcgaincodingmode确定表29中所给出的信息块的增益值的数量。每帧可存在至少一个增益值以支持随机插入。第一增益值根据表30来编码。其余增益值使用表31或表32(根据所选择的drcgaincodingmode)进行差分编码。表29:drcgaincodingmode的查找表表30:gaininitial的表示表31:drcgaincodingmode==1时的drc增益差的编码表32:drcgaincodingmode∈[2,3]时的drc增益差的编码表33:对数drc增益值[db]的解码差值的非均匀分辨率是由心理声学引起的,诸如观察到增益变化上的偏差越不易听到,增益变化越大。反之亦然,如果增益几乎恒定不变(并且音频包络也恒定不变),则增益变化上的偏差更容易听到。非对称范围适用于对音频信号中的突发攻击进行快速反应drc增益衰减。增益增加通常较慢。典型的音频解码器使用重叠相加法利用与后续块50%的重叠来重建音频信号。每个块由在任一端渐缩的窗口来加权。例如,mpeg-aac的典型帧尺寸为1024个样本。对于每个新帧,解码器重建2048个样本,其中将前1024个样本添加到前一个块的后1024个样本并且结果为解码器输出。在重建块的后半部分期间均匀调度具有帧k的信息块。每个信息块内的增益值均匀分布在信息块的持续时间内。该方案确保了所有必要drc增益值在对起始和末尾进行解码时并且对于插值均为可用的。图11示出了其中比特流的帧n包含用于合成窗口的后半部分的drc增益。帧n具有4个信息块,这些信息块分别具有1个、8个、2个和4个drc增益值。drc增益值的定时基于增益值在每个信息块内的均匀分布来计算。随后,使用线性插值来生成每个时域音频样本的增益值。表34:计算drc增益值的时间位置增益值定时的计算在表34中给出。结果tgain[g][k]指示以采样间隔为单位的始于当前输出帧的第一样本处的0.0的样本位置。帧尺寸以nframe样本来表示。给出增益值和它们的定时,针对当前输出帧的所有样本的平滑增益曲线可通过如表35所示的线性增益值的线性插值来构建。gdrcprev为前一帧的最后drc增益值。在该实施例中,需要下一帧的第一增益值来内插帧的增益值以用于输出。由于重叠相加过程,该增益值是可用的,而无需在比特流之前进行额外读取。引入函数tolinear()以包括用于从以db为单位的对数值生成线性增益值的所有必要步骤。表35:drc增益值的插值最后,如表36所示,应用经插值的drc增益。表26:drc增益值的应用上述该实施例包括针对音频标准诸如mpeg-audio的改进的drc元数据编码和处理。已解决当前标准的缺点,诸如生成混叠失真以及drc元数据的时间分辨率不足。如上所述,多种技术可用于对drc增益值进行编码并将其应用于一条声音节目内容。在一些实施例中,一种用于将频域动态范围控制(drc)增益值应用于时域中的音频信号的方法,包括:接收比特流,其中该比特流包括经编码的音频信号和频域drc增益值;由回放设备中的解码器对经编码的音频信号进行解码以产生时域中的经解码的音频信号;由解码器来确定用于将频域drc增益值应用于时域中的经解码的音频信号的drc窗口权重;基于频域drc增益值和drc窗口权重来确定时域drc增益值;以及将时域drc增益值应用于时域中的经解码的音频信号的对应帧。在一个实施例中,drc窗口权重基于解码器的合成窗口来确定。在一个实施例中,drc窗口权重利用与解码器的合成窗口相同的定时作为解码器合成窗口的平方来计算。在一个实施例中,drc窗口权重基于解码器的合成窗口和编码器的窗口的乘积来确定。在一个实施例中,经解码的音频信号的当前帧的时域drc增益值基于利用所应用的对应drc窗口权重的当前帧的频域drc增益值以及利用所应用的对应drc窗口权重的前一帧的频域drc增益值来确定。在一个实施例中,应用时域drc增益值以产生时域中的drc音频信号是基于时域drc增益值和经解码的音频信号的对应时间分割的乘积而进行的。在一个实施例中,时域drc增益值中的一个或多个时域drc增益值应用于经解码的音频信号的整个drc窗口。在一个实施例中,经编码的音频信号为移动图像专家组-高级音频编码(mpeg-aac)drc音频信号。在一个实施例中,经编码音频信号为高级电视系统委员会(atsc)drc音频信号。在一个实施例中,一种对比特流中的表示一条声音节目内容的动态范围控制(drc)增益值进行编码的方法,包括:将声音节目内容的每个音频声道从一组drc组分成单个drc组;以及将drc增益元数据插入到每个drc组的比特流中,其中每个drc组的drc增益元数据用于将对应drc增益值可变地应用于drc组中的每个帧。在一个实施例中,每个drc组的drc增益元数据包括:表示针对初始drc增益值的所选择的编码模式的第一数据值;表示初始drc增益值的第二数据值;以及表示应用于初始drc增益值的差值以生成drc组的每个帧的drc增益值的第三数据值。在一个实施例中,第一数据值表示基于初始drc增益值应用于drc组的每个帧的增益值的数量。在一个实施例中,由第一数据值所表示的所选择编码模式选自一组预定义编码模式。在一个实施例中,drc增益值使用插值而被应用。在一个实施例中,插值为线性域中的线性插值。在一个实施例中,将多个声道分配给单个drc组。在一个实施例中,非均匀时间分辨率基于由编码器drc所生成的增益变化用于drc增益值的更新率以使比特流的比特率最小化。在一个实施例中,表示初始增益值的第一数据值使用基于心理声学的非均匀量化标度来编码以使比特流的比特率最小化。在一个实施例中,表示初始增益值的第一数据值使用可变长度代码来编码以使比特流的比特率最小化。在一个实施例中,对表示应用于drc组的每个帧的初始drc增益值的差值第三数据值进行编码以使比特流的比特率最小化。在一个实施例中,对表示应用于初始drc增益值的差值的第三数据值进行可变长度代码编码以使比特流的比特率最小化。如上所述,本发明的一个实施例可为具有存储在其上的指令的机器可读介质诸如一个或多个固态存储器设备,该指令对一个或多个数据处理部件(本文中一般称为“处理器”或“计算机系统”)机型编程以执行上述操作中的一些操作。在其他实施例中,可通过包含硬连线逻辑部件的特定硬件部件来执行这些操作中的一些操作。可替代地,可通过经编程的数据处理部件和固定硬连线电路部件的任何组合来执行那些操作。虽然已描述并且在附图中示出了某些实施例,但应当理解,此类实施例仅用于说明广义的发明而非对其进行限制,并且本发明并不限于所示和所述的特定构造和布置,因为对于本领域的普通技术人员而言可想到各种其它修改。因此,要将描述视为示例性的而非限制性的。相关问题本专利申请要求于2013年3月29日提交的美国临时专利申请61/806,628;于2013年7月24日提交的美国临时专利申请61/857,966;以及于2013年10月16日提交的美国临时专利申请61/891,687的较早申请日期的权益。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1