用于校正影响音频信息的播放响度和动态范围的元数据的方法

文档序号:7537996阅读:467来源:国知局
专利名称:用于校正影响音频信息的播放响度和动态范围的元数据的方法
技术领域
一般而言,本发明涉及音频编码和播放,具体来说,涉及控制播放过程中的音频信息的响度和动态范围。
背景技术
随着广播和电视节目和预先记录的音频材料中的音频的响度的变化,在消费者和音频专业人员等人士中出现不满意的状况越来越严重。随着听众从一个电台(电视台)调谐到另一个电台(电视台),随着从一个给定电台(电视台)接收到的节目在主节目和商业广告之间切换,以及随着听众在其播放系统中改变介质,如在不同的CD或不同的DVD之间切换,常常会发生响度变化比较大的情况。听众常常被迫调整它们的接收器和播放系统的音量控制器,以保持相对的响度。
已经提出的用于克服此问题的一个解决方案是使用伴随音频信息的控制信息或“元数据”。在节目或记录的信号中可以提供元数据或描述音频数据的数据,以控制音频信息的播放响度。在2001年8月20日发布的标题为“Revision A to Digital Audio Compression(AC-3)Standard”的Advanced Television Systems Committee(ATSC)A/52A文档中描述了这种元数据的一个示例。此特别的标准规定了包括涉及播放信号电平和动态范围的DIALNORM、COMPR和DYNRNG参数的元数据。信号电平和动态范围两者都影响信号的感觉到的或主观级别,被称为“响度”。符合此ATSC音频标准的接收器使用DIALNORM参数来控制播放信号电平,并可以使用COMPR和DYNRNG参数来控制播放信号动态范围的压缩。
如果这种元数据在音频内容创建、分发、播放和记录过程中被正确地使用,则可以消除或至少大大地缩小播放响度的过度的变化的问题。令人遗憾的是,元数据有时被滥用或根本不使用,因为它被错误地理解,因为相应的人不知道如何正确地使用它,或因为它用于以不合适的方式产生艺术效果。

发明内容
本发明的目的是提供用于校正播放过程中的音频信息的播放响度和动态范围的方法。
根据本发明的一个方面,用于校正音频信息的播放响度和动态范围的方法接收输入信号,该输入信号传送代表第一响度规范化级别、第一动态范围调整级别以及由编码过程产生的编码音频信息的数据;通过对输入信号应用解码过程获取解码音频信息;通过对解码音频信息的分析获取响度的度量,并从响度的度量导出第二响度规范化级别;通过对解码音频信息的分析,并从第一动态范围调整级别,获取由编码过程使用的压缩配置文件的估计;以及生成输出信号,该输出信号有条件地传送代表第二响度规范化级别和动态范围调整级别的数据,所述数据是响应音频信息振幅,第二响度规范化级别和压缩配置文件的估计而获得的。
通过参考下列讨论和附图,可以更好地理解本发明的各种功能以及其优选实施例,在几个附图中,类似的参考编号表示相同的元素。下列讨论和图形的内容是只作为示例来阐述的,不应该理解为对本发明的范围的限制。


图1是在典型的广播和记录系统中发生的过程的简要方框图。
图2是用于提供具有音频信息和元数据的输出信号的设备的简要方框图,其中,元数据可以用来校正音频信息的播放响度和动态范围。
图3-4简要图2中所显示的设备内的组件的简要方框图。
图5-8是传送编码音频信息和元数据的信号的示意图。
图9-11是元数据如何用来校正三段音频信息的响度和动态范围的假设图解说明。
图12是显示了可以用来利用修改过的元数据参数生成输出信号的帧的过程中的步骤的图表。
图13是可以用来实现本发明的各个方面的设备的简要方框图。
具体实施例方式
A.引言图1是在典型的广播或记录系统中发生的过程的示意图。源过程1代表通过合成或通过从诸如现场音乐会或体育赛事之类的来源获取音频信息的活动。分发过程2代表各种各样的活动从一个或多个来源接收音频信息并将其中的所有或部分组合为一个完整的节目,用于广播或记录。也可以获取视频信息以及其他信息类型,并以各种方式组合为完整的节目。传送过程3代表使完整的节目播放或记录并随后提供给播放过程4的活动。在这些过程中的一些或所有过程中,可以对音频信息进行编码,以降低其信息容量要求,以便它可以存储在较小的空间中或使用较低的带宽进行传输。
在播放和记录系统的优选的实现方式中,如图1所示的每一个过程都允许音频内容作者和音频工程师指定元数据,该元数据定义在音频信息的播放过程中音频信息的预定的响度和动态范围。令人遗憾的是,甚至在这些优选的实现方式中,这种元数据要么被错误地使用,要么被故意滥用。本发明的目的是提供可以用来校正播放过程中的音频信息的播放响度和动态范围的方法和设备。本发明可以在图1中所显示的任何过程中使用一次或多次;然而,可以预料,本发明可以在分发过程2的快结束时或传送过程3的快开始时最有效地使用。例如,本发明可以在播放或记录完整的节目紧之前使用。
下面所描述的本发明的实现方式包括与以符合上文所提及的ATSC标准的格式传送编码音频信息的信号一起使用的相关的功能。这些特定的实现方式和功能仅仅是示例。本发明的原理可以有益地适用于基本上任何形式的传送音频信息和涉及该音频信息的响度和动态范围的元数据的信号。
B.设备概述图2是集成了本发明的各个方面的设备10的简要方框图,它们可以用来校正播放过程中的音频信息的播放响度和动态范围。设备10从通信路径11中接收传送编码音频信息和元数据的输入信号,对此信息进行处理,并沿着路径18生成输出信号,该输出信号传送编码音频信息和修改过的元数据。元数据代表供在播放音频信息过程中使用的响度规范化级别和动态范围调整级别。
解码器12对输入信号进行处理,以获取音频信息的元数据和解码表示法,具体做法是,执行对用于生成输入信号的过程的补充过程。解码音频信息被沿着路径13传递。元数据沿着路径14传递。如果设备10和具有符合上文所提及的ATSC标准的格式的输入信号一起使用,则解码器12执行判断如何分配比特以代表音频信号的频谱含量的过程,使用此分配方案从输入信号中恢复量化的频谱分量,并用合成滤波器对恢复的频谱分量进行处理,以生成解码音频信息。可以从上文所提及的ATSC文档中获取附加信息。
由解码器12执行的解码过程只与由常规播放系统执行的解码过程稍微有点不同,因为解码器12不使用响度规范化级别和动态范围调整级别元数据来对解码信息做任何调整。
在一种实现方式中,解码器12与常规解码器有显著的不同之处,在于它不将编码音频信息解码为时间域信息。相反,它将编码音频信息解码为去量子化的频谱分量或对系数进行转换,这些系数沿着路径13进行传递,供随后进行处理。解码器12的这种实现方式的变化影响了响度分析器15、动态范围分析器23、动态范围计算器25、定标器31以及编码器33(下面将对它们进行讨论)的实现方式的细节,但不会改变这些组件执行的过程的特性。
响度分析器15对它从路径13接收到的解码音频信息进行分析,以获取响度的度量,然后,沿着路径16传递。基本上,就原理而论,可以使用任何分析;然而,分析的选择可能会影响响度度量的精度。优选情况下,通过隔离主要为语音的音频信息的段来获取响度的度量。在2002年8月30日提出的,2004年3月4日发布的出版物编号US 2004-0044525的Vinton et al.作出的标题为“Controlling Loudness of Speech in Signals That Contain Speech andOther Types of Audio Material”的编号为10/233,073的美国专利申请中描述了这样作的一些方式。主要是语音的段的标识不是必需的,但它通常会改善响度度量的精度。如果不存在语音或语音不是占主导地位,整个音频信息的平均响度度量可以提供足够的度量。
可以获取整个音频节目的响度的度量,或者,可以获取基本上可能希望的任何长度的段的响度度量。可以计算响度度量Leqm的一种方式可以表示为Leqm10log10(1T∫T0(P(t)P0)2dt)]]>其中P(t)=在时间t时信号的频率-加权声压级;P0=在时间t=0时信号的频率-加权声压级;以及m表示施加于信号的频率加权。
可以使用的频率加权的一个已知的示例是所谓的“相等-响度”加权。也可以使用标准B或C加权的幂度量。或者,也可以使用响度的音质模型,如“Acoustics-Method for calculating loudness level,″ISO 532(1975)”中所描述的那种。优选情况下,响度的度量是以dB为单位,相对于数字”满刻度”正弦曲线的振幅来计算的(0 dB FS),这是通过能够用于代表音频信息的有限-长度数字值表达的最大的数字电平。
输出信号生成器20对从路径11接收到的输入信号、从路径14接收到的响度规范化级别和动态范围调整级别元数据、从路径13接收到的音频信息的解码表示法、从路径16接收到的导出的响度的度量进行处理,并沿着路径18生成输出信号,该输出信号传送音频信号的编码表示法,以及一组元数据,该元数据可以用于校正播放过程中的音频信息的响度和动态范围。
下面将描述该实现方式的其他细节。
C.信号格式这里所描述的设备10的实现方式对输入信号进行处理,该输入信号具有编码音频信息和元数据,它们以符合上文所提及的ATSC标准的格式传输。输入信号包括以帧的形式排列的二进制数据。每一个帧都包含了编码音频信息和元数据,代表从数字音频信号的一个到六个信道。元数据是可配置的,并可以包括诸如所说的音频内容的语言,是否对音频内容进行版权保护之类的信息,以及定时信息。元数据还包括供在播放音频信息过程中使用的响度规范化级别和动态范围调整级别。
每一个输入信号帧都被分成图5所概要显示的部分。同步信息(SI)部分,如图6所示,传送同步字(SW),以及用于检测前5/8帧中的误码的两个循环冗余代码中的第一个(CRC1)。比特流信息(BSI)部分,如图7所示,传送帧的大部分元数据。六个音频块(AB0到AB5)传送编码音频信息和额外的元数据,如图8所示。帧的其余部分包括Waste(W)比特部分,该部分传送在对音频内容进行编码之后剩余的未使用的比特,以便每一个帧都具有恒定的比特数,辅助(AUX)部分,该部分可以传送与本发明不相关的额外的元数据,以及用于检测后3/8帧中的误码的两个循环冗余代码(CRC2)中的第二个(CRC2)。
响度规范化每一个帧的BSI部分都传送被称为DIALNORM的元数据参数,这是供在播放过程中使用的响度规范化级别。此参数用于表示音频信息中的语音或对话的平均或占主导地位的响度。在没有语音的情况下,该参数可以代表音频项目的全部内容的平均响度。“音频项目”是一段音频信息,如,30秒电视广告的音频,或全长电影的完整声音轨。
图9是三个假设的音频项目的信号电平的图解说明。每一个音频项目的“数字级别”是其音频信息的振幅相对于数字满刻度正弦曲线的振幅(0 dB FS)。图中显示了每一个音频项目的最大和最小信号电平以及其DIALNORM参数的值。每一个音频项目的DIALNORM值被四舍五入为1 dB单位。
在播放期间,播放过程4使用DIALNORM参数的值来放大用于播放的信号的振幅,以便语音的被感觉到的响度在不同的音频项目之间是一致的。图10用图形方式显示了此过程。播放过程4调整每一个音频项目中的信号,以便DIALNORM参数所表示的其响度,被放大到等于-31 dB FS的基准电平。在每一个播放系统中可以校准此基准电平,以匹配所希望的声压级。
动态范围调整输入信号的每一个帧都可以传送被称为COMPR和DYNRNG的元数据参数,这是供播放过程中使用的动态范围调整级别。请参看图7和8,帧的BSI部分可以包括适用于整个帧的COMPR参数,每一个音频块都可以具有其自己的相应的DYNRNG参数。使用几个压缩配置文件中的某一个的编码过程中确定这些参数的值。每一个配置文件都包括典型的压缩参数,指定压缩器的诸如压缩比、攻击和释放时间常量,以及压缩的幅度范围之类的操作特征。参考DIALNORM参数,确定这些动态范围压缩参数的值,以便音频项目的平均响度不会通过压缩被改变。
再请参看图9,该图显示了三个假设的音频项目的最大和最小信号电平,以及DIALNORM参数的值。在播放过程中,播放过程4可以使用COMPR参数或DYNRNG参数,对用于播放的信号进行压缩,以便缩小动态范围。图11用图形方式显示了此过程。播放过程4对每一个音频项目中的信号进行压缩,以便音频项目的动态范围更加一致。
缩小音频项目的动态范围的能力在各种情况下有用。例如,在深夜观看时常常需要缩小电影或电视节目的音频播放电平,以避免干扰家庭成员或邻居睡眠。当音频项目具有非常大的动态范围时,如许多电影那样,缩小播放电平,以使最响的段保持在可容忍的级别,会导致许多对话难以听见,也几乎无法理解。动态范围压缩可以用来缩小最响的段的响度,允许播放响度被设置在较高的级别,以便可以理解对话段。此外,此外,动态范围压缩还可以用来增大比较安静的段的响度,否则,在播放环境中环境噪声下可能听不见。
为保证动态范围压缩正确起作用,需要对DIALNORM参数进行适当的设置。如果DIALNORM参数设置得不正确,那么,很可能动态范围压缩将改变对话电平,会非常烦人。
适当的值的重要性当适当地设置DIALNORM参数时,播放系统可以通过缩小响度和动态范围中的明显的差别(否则将存在于不同的音频项目的播放中),提供比较一致的和可预测的收听体验。可以消除,或至少大大地缩小电视广告、电视娱乐和新闻节目之间的,以及不同的电视台之间的烦人的差异。
直到现在,播放和记录系统不得不依赖音频内容作者和音频工程师来正确地设置DIALNORM。已经预期,将正确地度量音频项目的平均或占主导地位的对话电平,将相应地设置DIALNORM参数。令人遗憾的是,有时不能正确地设置或不能明确地设置DIALNORM参数,导致播放系统使用不合适的默认值。这会导致在由DIALNORM参数表示的电平和音频中的对话的实际电平之间产生差异,这妨碍了或至少损害了播放系统在不同的音频项目之间提供一致的收听体验的能力。
在大多数情况下,每一个帧都传送适用于所有信道的对于响度规范化和动态范围调整的单一参数集合;然而,ATSC标准允许帧对于双信道系统中的每一个信道,传送单独的参数集合。请参看图7和8,第二个参数集合被显示为DIALNORM2、COMPR2和DYNRNG2。下列讨论只引用第一个参数集合。当对于一个帧存在两组参数时,使用第二参数集合的方式与使用第一参数集合的方式相同。
D.输出信号生成器图3是上文结合图2所讨论的输出信号生成器20的简要方框图。比较器21将从路径14接收到的响度规范化级别(DIALNORM)与从路径16接收到的导出的响度的度量进行比较,并沿着路径22生成表示DIALNORM参数是否足够准确的控制信号。如果两个输入之间的差的绝对值小于阈值,则DIALNORM参数可以被视为足够准确。如果需要,可以将此阈值设置为等于零,但在优选实现方式中,阈值的选择必须在以下几个方面取得平衡元数据参数的精度、实现本发明所需要的计算资源的成本,以及DIALNORM参数的计算值和其他元数据参数的值不正确以及它们的使用将降低播放过程中的音频信息的质量的可能性。阈值3 dB适用于许多应用场合。
信号组合器30从路径22接收控制信号,并从路径11接收输入信号。如果控制信号表明DIALNORM参数足够准确,则输入信号按原样传递到路径18。如果控制信号表明DIALNORM参数不够准确,那么,信号组合器30使用从路径16接收到的导出的响度的度量来为输出信号提供修改过的DIALNORM参数。
每当改变DIALNORM参数的值时,很可能也应该改变COMPR和DYNRNG参数的值。COMPR和DYNRNG参数代表可以由常规播放系统中的解码器应用的增益变化。COMPR参数代表可以应用于从整个帧解码的所有音频信息的定标因数。相应的音频块中的DYNRNG参数代表可以应用于从该音频块解码的音频信息的定标因数。
由生成了输入信号的编码器来计算这些参数的值。在输出信号中,原始值可以保持原样不变,但常规播放系统对所产生的输出信号的解码将产生严重的增益波动,并可能剪辑音频信号。本发明的优选实现方式提供了COMPR和/或DYNRNG参数的修改过的值(当它被保证时)。由动态范围分析器23和动态范围计算器25生成这些修改过的值;然而,如果可以获得有关编码器如何计算原始元数据值的附加信息,则可以更加准确地生成修改过的值。
所需要的附加信息是编码器所使用的压缩配置文件。令人遗憾的是,在输入信号中没有传送此信息。动态范围分析器23通过对从路径14接收到的DIALNORM、COMPR和DYNRNG参数、和从路径13接收到的音频信息的解码表示法进行分析,估计编码器使用了什么压缩配置文件。通过反复地使用由编码器使用的相同的计算过程,来计算已知由当前编码器实现方式使用的每一个压缩配置文件的COMPR和/或DYNRNG参数,可以估计配置文件。产生了与输入信号中所传送的原始值最近的计算出的参数值的配置文件被认为是由编码器使用的压缩配置文件。估计的配置文件的指示被沿着路径24传递到动态范围计算器25。
可以对于每一个帧,更新压缩配置文件的估计,也可以不是那么太频繁地更新。频率的选择可以在精度和计算复杂性之间取得平衡。
估计的压缩配置文件有可能是不正确的;因此,只有在原始DIALNORM参数值的值被判断不足够准确的(如上文所讨论的)情况下,可能需要将修改过的元数据插入到输出信号中。
E.输出信号组合器每当向输出信号中插入修改过的元数据时,所产生的输出信号都应该符合ATSC标准所规定的所有要求。这是通过信号组合器30来实现的。图4中显示了信号组合器的一种实现方式,并在下面进行了讨论。
输出信号重新包装图12中显示了可以用来生成符合ATSC标准的输出信号的一个进程中的步骤,并在下面进行了讨论。
步骤50判断是否将用修改过的DIALNORM生成输出信号的帧。如上文所描述的,这可以通过判断原始DIALNORM参数值是否足够准确来完成。如果不需要对DIALNORM参数值进行修改,则继续执行步骤61。否则,继续执行步骤51。
步骤51改变输出信号的帧中的DIALNORM参数的值。DIALNORM参数由符合ATSC标准的所有信号帧中的八个比特来代表。可以通过仅仅改变代表原始DIALNORM参数的比特的值来轻松地修改输出信号中的DIALNORM参数的值。
步骤52判断COMPR参数或任何DYNRNG参数的值是否有任何变化。如果没有,则继续执行步骤61,用修改过的DIALNORM参数值生成输出信号的帧。否则,继续执行步骤53。
修改COMPR和DYNRNG参数值所需要的步骤比修改DIALNORM参数值所需要的步骤更复杂,因为帧中并不总是存在COMPR和DYNRNG参数。修改可以改变代表这些参数所需要的比特数量。步骤53判断代表修改过的COMPR参数值或任何修改过的DYNRNG参数值所需要的比特数量是否有任何更改。如果没有,则继续执行步骤60,插入向帧的合适的位置中插入修改过的值,来修改这些参数。然后,步骤61用修改过的DIALNORM参数值和COMPR和DYNRNG参数的一个或多个修改过的值,生成输出信号的帧。
如果步骤53判断代表修改过的COMPR参数值或任何修改过的DYNRNG参数值所需要的比特数量有更改,那么,数据必须在一个帧内移动,以接纳改变。在此特定实现方式中,只有在向帧中添加参数或从帧删除参数的情况下,才会发生代表参数所需要的比特数量更改的情况。如果要添加参数,则移动数据,以为新的参数产生空间。如果要删除参数,则将数据移动到由删除的参数所腾出的空间。
当COMPR和DYNRNG参数在帧中存在时,它们各自都由八个比特代表。由一个比特的COMPRE标记来表示在帧中存在COMPR参数。当设置为1时,COMPRE标记表示COMPR参数存在于输入信号帧的BSI部分。在相应的音频块(AB0到AB5)中是否存在DYNRNG参数由该块中的一个比特DYNRNGE标记来表示。当设置为1时,DYNRNGE标记表示在相应的音频块中存在DYNRNG参数值。如果在音频块AB0中不存在DYNRNG参数,则暗示了默认参数值0 dB(没有压缩)。如果在随后的音频块AB1到AB5中的任何一个音频块中不存在DYNRNG参数,那么,该音频块的参数值隐式等于紧前面的块的参数值。
步骤54计算代表这些参数中的每一个参数的值的变化所需要的比特的净变化。这可以表达为Δ(k)=M(k)-O(k)其中Δ(k)=代表参数k所需要的比特的净变化;M(k)=代表修改过的参数k值所需要的比特数;以及O(k)=代表原始参数k值所需要的比特数。
这里使用了简单的表示法来代表元数据参数。在此表示法中,参数0-5分别对应于音频块AB0到AB5的DYNRNG参数,参数6对应于COMPR参数。
步骤55使用参数0,1和6的Δ(k)值来判断对音频块AB0和AB1的COMPR参数和DYNRNG参数的值的所提出的修改是否将违犯这里被称为的“5/8规则”。ATSC标准要求,一个帧中的音频块AB1和AB2之间的边界必须位于该帧的前5/8的范围内。如果代表音频块AB0和AB1中的COMPR参数和/或DYNRNG参数的修改过的值所需要的额外的比特数将需要在违犯了5/8规则的帧内移动数据,那么,继续执行步骤56,降低代表这些修改过的参数值中的一个或多个所需要的比特数量。否则,继续执行步骤57。
步骤56对代表音频块AB0和AB1中的修改过的DYNRNG参数所需要的比特数作最初步的减少。这是通过分析对音频块AB0和AB1的DYNRNGE标记的所提出的修改来实现的。如果只有音频块AB0中的修改过的DYNRNGE标记将被设置为1,那么,此标记被重置为0。如果只有音频块AB1中的修改过的DYNRNGE标记将被设置为1,那么,此标记被重置为0。如果音频块AB0和AB1两者中的修改过的DYNRNGE标记都将被设置为1,那么,这些标记中的一个将根据下列测试重置如果音频块AB0的修改过的DYNRNG参数值和0dB之间的绝对差小于音频块AB0和AB1的修改过的DYNRNG参数值之间的绝对差,那么,音频块AB0的修改过的DYNRNGE标记被重置为0。否则,音频块AB1的修改过的DYNRNGE标记被重置为0,音频块AB0的修改过的DYNRNG参数值被重置为音频块AB0和AB1的两个提出的修改过的DYNRNG参数值中的较小的那一个。如果在音频块AB0和AB1两者中DYNRNGE标记都将被设置为0,那么,COMPRE标记被设置为0。从输出信号的帧中将省略与被重置为0的标记关联的参数。调整对应的净变化Δ(k)的值,以显示八个比特的减少。
如果初始的减少不够,则进一步地减少所需的比特数量。将被设置为1的音频块AB0和AB1中的剩余的DYNRNGE标记被重置为0。将从输出信号的帧中省略关联的DYNRNG参数,调整对应的净变化Δ(k)的值,以显示八个比特的减少。可保证在此步骤中作出的一个或多个减少,以满足5/8规则,假设输入信号的帧最初满足5/8规则。
如果动态范围计算器25计算了等于0的音频块AB2的修改过的DYNRNGE标记,那么,该计算是在这样的假设执行的音频块AB2的修改过的DYNRNG参数值将等于音频块AB1的参数值。对音频块AB0和AB1的修改过的DYNRNGE标记作出满足5/8规则的任何更改都可能将违犯此假设,导致音频块AB2的DYNRNG参数值的计划的更改。将不会违犯此假设的唯一的情况是音频块AB0和AB1两者的修改过的DYNRNGE标记将被设置为1,但只有音频块AB0的标记被重置为0。对于所有其他情况,本发明的一个首选的实现方式是,音频块AB2的修改过的DYNRNGE标记被重置为1,修改过的DYNRNG参数值被设置为等于由动态范围计算器25计算出的合适的值。
此过程中的生成输出信号之前的剩余的步骤确保了有足够的比特数可用来代表所有修改过的压缩参数。
步骤57确定代表对压缩参数值的所有提出的修改所需要的比特的总数,以及未使用的可以在帧中用来代表这些修改过的参数值的比特的总数。
可以通过计算下列总和来确定比特的总数NTOT,需要用该比特的总数表示对压缩参数的所有提出的修改NTOT=Σk=06Δ(k)]]>根据从帧中获取的信息来计算帧中未使用的比特的总数NAV以表示修改过的压缩参数值。请参看图5,每一个帧通常都包含许多未使用的比特,可以用来代表添加到帧中的新的元数据参数。这些未使用的比特中的一些在该帧的W范围之内,它们是在对音频信息进行编码之后剩余的未分配的比特。在音频块的Skip数据(SKIPD)区域中可能存在一些未使用的比特。每一个SKIPD区域都与SKIPL参数(该参数以8比特的字节表示SKIPD区域的长度)、一比特SKIPLE标记(如果设置为1,表示存在SKIPL参数和关联的SKIPD)关联。如果例如相应的音频块具有设置为1的SKIPLE标记和等于10的SKIPL参数,那么,该相应的音频块的SKIPD区域包含10个字节或80比特。可以通过将帧中的所有SKIPL参数的值与帧的W部分中的比特总数相加,来确定一个帧中的未使用的比特的总数。
可以根据三个已知值计算W部分中的比特的数量NW。第一个值是表示为比特数的帧的长度NL,该值可以根据帧的SI部分中传递的指定了采样速率(FSCOD)和帧大小(FRMSIZECOD)的参数来进行计算。可以从上文引用的ATSC文档中获取附加信息第二个值是用于代表帧中的SI和BSI部分,所有音频块AB0到AB5和CRC2中传达的数据的比特数。第三个值是帧的AUX部分的长度NA,以比特数表示。此长度在帧的AUX部分末尾部分传达。该计算可以表示为NW=NL-(ND+NA)步骤58判断可用的比特数量NAV是否足以满足代表修改过的压缩参数所需要比特的总数NTOT。如果有足够的比特数可用,则继续执行步骤60。如果没有,则继续执行步骤59。
步骤59改变一个或多个修改过的压缩参数,以减少代表它们所需要的比特数。这可以通过从一个或多个音频块中删除DYNRNG参数并将那些音频块与前面的音频块的DYNRNG参数关联来完成。一个帧的六个音频块中的修改过的DYNRNG参数值和DYNRNGE标记用于将多个块组合成区域。第一个区域包括音频块AB0,以及紧随其后的它们的相应的修改过的DYNRNGE标记设置为0的所有音频块。额外的区域,如果有的话,每一个都以其修改过的DYNRNGE标记设置为1音频块开始,并包括紧随在开始块之后的其相应的修改过的DYNRNGE标记设置为0的所有音频块。如果一个帧中没有音频块(除非可能是音频块AB0)将修改过的DYHRNGE标记设置为1,则区域的数量可以少则为1。如果帧中的每个音频块都具有设置为1的修改过的DYNRNGE标记,则区域的数量可以多则为6。一个区域所有音频块都共享共同的DYNRNG参数值。如果音频块AB0的DYNRNGE标记被设置为0,则如上所述,隐式指定了第一区域的此值。
如果存在三个或更多区域,那么,将第二区域的共享的修改过的DYNRNG参数值与每一个相邻区域的共享的修改过的DYNRNG参数值进行比较。具有最近的值的区域对被合并到一个区域中通过将前面的区域的第一音频块中的DYNRNG参数值设置为两个区域的两个修改过的DYNRNG参数值中的较小的那一个,并将随后的区域的第一音频块中的DYNRNGE标记设置为0。这将代表修改过的DYNRNG参数所需要的比特的总数减少了八个比特。多个区域可以以这种方式合并,直到代表修改过的DYNRNG参数值所需要的比特的总数NTOT小于或等于可用于代表的比特的总数NAV,或直到只保留两个区域。
当存在两个区域并且NAV小于NTOT时,如前段中所描述那样将两个区域组合起来。
当只有一个区域存在并且NAV小于NTOT时,可以进行进一步的缩小。如果音频块AB0的提出的修改过的DYNRNGE标记被设置为1,则将此标记重置为0将使NTOT减少八个比特。如果此标记已经被设置为0或者如果将它重置为0还不够,那么,剩余的可以进行的唯一的更改是将COMPRE标记重置为0。此最后一次更改可保证满足比特要求,假设输入信号的帧最初满足了比特要求。
当步骤59减少NTOT以便它小于或等于NAV时,继续执行步骤60。
在需要接纳添加的压缩参数或删除压缩参数时,步骤60在帧内移动数据。
要修改COMPR参数,如果原始COMPRE标记被设置为1,则原始COMPR参数值可以替换为修改过的值。如果原始COMPRE标记被设置为0并且修改过的COMPRE标记被设置为1,则跟随在COMPRE标记后面的数据向帧的末尾方向移动八个比特,以便为新的COMPR参数腾出空间。输出信号的帧中的COMPRE标记被设置为1,将新的COMPR值写入到新创建的空间中。如果原始COMPRE标记被设置为1并且修改过的COMPRE标记被设置为0,那么,输出信号的帧中的COMPRE标记被设置为0,跟随在COMPR参数后面的数据向帧的开始方向移动八个比特,因为COMPR参数不再存在于帧中。
要修改每一个音频块中的DYNRNG参数,如果原始DYNRNGE标记被设置为1,则原始DYNRNG参数值可以替换为修改过的值。如果原始DYNRNGE标记被设置为0并且修改过的DYNRNGE标记被设置为1,则跟随在DYNRNGE标记后面的数据向音频块的末尾方向移动八个比特,以便为新的DYNRNG参数腾出空间。音频块中的DYNRNGE标记被设置为1,将新的DYNRNG值写入到新创建的空间中。如果原始DYNRNGE标记被设置为1并且修改过的DYNRNGE标记被设置为0,那么,输出信号的帧中的DYNRNGE标记被设置为0,跟随在DYNRNG参数后面的数据向音频块的开始方向移动八个比特,因为DYNRNG参数不再存在于该块中。
可以只在某一音频块中进行更改,即可满足代表相应的音频块中的修改过的DYNRNG参数所需要的比特数量的变化。倘若如此,可以通过调整SKIPD区域中的比特数量并在音频块内移动数据来完成。SKIPL参数改变,以指出SKIPD区域的修改过的长度。如果将向一个音频块添力DYNRNG参数而该块中不存在SKIPD区域,那么必须从W部分或从另一个音频块中获取未使用的比特。
步骤61产生输出信号的帧。如果没有元数据参数被修改过,则输出信号帧可以与相应的输入信号帧相同。当一个帧中的任何数据发生变化时,应该重新计算该帧的两个纠错码CRC1和CRC2中的一个或两个。如果只有帧的前5/8中的数据发生了变化,则只重新计算CRC1代码就足够了。如果只有帧的后3/8中的数据发生了变化,则只重新计算CRC2代码就足够了。
重新编码根据ATSC标准,DIALNORM参数必须具有从-1到-31 dB(包括这两者)范围内的整数值。响度分析器15所获取的响度的度量超出此范围之外是有可能的。此情况可以通过将DIALNORM参数设置为该范围内的最近的值来处理,但首选的解决方案是放大音频信息和放大响度的度量,以便DIALNORM参数可以表达正确的响度的度量。例如,如果计算出的响度的度量是-36 dB,可以将音频信息的振幅提高5 dB,以便可以正确地将修改的DIALNORM参数值设置为最近的有效值-31 dB。此解决方案要求在放大之后对解码音频信息进行编码。这可以通过使用如图4所示的信号组合器30来实现。
在此实现方式中,定标器31响应从路径26接收到的计算出的响度的度量,放大从路径28接收到的解码音频信息。经过放大的音频信息沿着路径32传递到编码器33,该编码器对经过放大的音频信息进行编码。响度的度量值被调整,以负责放大,并被传递到输出信号格式器40,以包括在输出信号中。
优选情况下,编码器33在帧的BSI和AUX部分维护了DIALNORM参数之外的所有信息。使用由从路径27接收到的信息指定的配置文件,重新计算纠错码CRC1和CRC2,重新计算压缩元数据参数COMPR和/或DYNRNG。这种重新编码过程可能会降低播放过程中的感觉到的音频信息的质量;因此,如上文所讨论的,只有在原始DIALNORM参数被认为不够准确的情况下,才可能需要执行重新编码。
编码信息被沿着路径34传递到输出信号格式器40,该格式器沿着路径18生成输出信号,该输出信号传送重新编码音频信息和修改过的元数据参数值。
如果从路径22接收到的控制信号表明,原始DIALNORM参数足够准确,则不需要对音频信息进行放大和重新编码。在此情况下,输出信号格式器40通过在从路径11中接收到的输入信号中修改元数据参数值来生成输出信号。
F.硬件实现方式集成了本发明的各个方面的设备可以以各种方式来实现,包括由计算机或某些其他设备执行的软件,其他设备包括比较专业化的组件,如连接到类似于通用计算机中的那些组件的组件的数字信号处理器(DSP)电路。图13是可以用来实现本发明的各个方面的设备70的简要方框图。数字信号处理器(DSP)72提供了计算资源。RAM73是供DSP 72用来执行处理过程的系统随机存取存储器(RAM)。ROM 74代表某种形式的永久存储器,如只读存储器(ROM),用于存储对设备70进行操作所需要的程序,还可以用于实现本发明的各个方面。I/O控件75代表用于通过通信信道76、77接收和传输信号的接口电路。在所显示的实施例中,所有主要系统组件都连接到总线71,该总线可以代表一个以上的物理或逻辑总线;然而,不需要总线体系结构即可实现本发明。
在由通用计算机系统实现的实施例中,可以包括额外的组件,用于连接到诸如键盘或鼠标和显示器,以及用于控制具有诸如磁带或磁盘或光学介质之类的存储介质的存储设备78。存储介质可以用来记录操作系统的指令的程序、实用程序和应用程序,并可以包括实现本发明的各个方面的程序。可以使计算机系统能容忍硬件故障。达到这一目的的一种方式是提供冗余组件(如双电源)和冗余存储设备,并使用能够检测并对故障作出反应的操作系统。
实施本发明的各个方面所需的功能可以通过以多种方式实现的组件来执行,包括离散逻辑组件、集成电路、一个或多个ASIC和/或程序控制的处理器。实现这些组件的方式对本发明来说不重要。
本发明的软件实现方式可以通过诸如基带或调制通信路径之类的各种机器可读的介质,在包括从超声波到紫外线频率的频谱范围内进行传递,或通过使用了基本上任何记录技术(包括磁带、磁卡或磁盘、光卡或光盘),以及包括纸张的介质上的可检测的标记来传送信息的存储介质来进行传递。
权利要求
1.一种用于校正音频信息的播放响度和动态范围的方法,其中该方法包括下列步骤接收输入信号,该输入信号传送代表第一响度规范化级别、第一动态范围调整级别和第一编码音频信息的数据,其中,由输入信号传送的数据是通过编码过程产生的,所述编码过程按照音质原理生成第一编码音频信息,并响应音频信息振幅、所述第一响度规范化级别和指定信号压缩器的一个或多个操作特征的压缩配置文件,确定第一动态范围调整级别;通过对输入信号应用解码过程获取解码音频信息;通过对解码音频信息的分析获取响度的度量,并从响度的度量导出第二响度规范化级别;通过对解码音频信息的分析,并从第一动态范围调整级别,获取由编码过程使用的压缩配置文件的估计;生成输出信号,该输出信号传送代表第三响度规范化级别、第三动态范围调整级别以及代表编码形式的音频信息的第三编码音频信息的数据,其中如果第一和第二响度规范化级别之间的差异没有超过阈值,则第三响度级别代表第一响度规范化级别,第三动态范围调整级别代表第一动态范围调整级别,第三编码音频信息代表第一编码音频信息,以及如果第一和第二响度规范化级别之间的差异超过阈值,则从第二响度规范化级别导出第三响度级别,响应音频信息振幅、第三响度规范化级别和压缩配置文件的估计,获取第三动态范围调整级别。
2.根据权利要求1所述的方法,如果第一和第二响度规范化级别之间的差异超过了阈值,则通过根据音质原理对解码音频信息进行编码而生成第三编码音频信息。
3.根据权利要求1所述的方法,如果第一和第二响度规范化级别之间的差异超过了阈值,则第三编码音频信息代表第一编码音频信息。
4.根据权利要求1所述的方法,其中,输入信号传送代表第一动态范围调整级别的第一数量的比特,用重新排列的数据生成输出信号,以接纳代表第三动态范围调整级别的第二数量的比特,其中第一数量的比特数大于第二数量的比特数。
5.根据权利要求1所述的方法,其中,输入信号传送代表第一动态范围调整级别的第一数量的比特,用重新排列的数据生成输出信号,以接纳代表第三动态范围调整级别的第二数量的比特,其中第一数量的比特数小于第二数量的比特数。
6.一种用于校正音频信息的播放响度和动态范围的设备,其中该设备包括用于执行下列操作的电路接收输入信号,该输入信号传送代表第一响度规范化级别、第一动态范围调整级别和第一编码音频信息的数据,其中,由输入信号传送的数据是通过编码过程产生的,所述编码过程按照音质原理生成第一编码音频信息,并响应音频信息振幅、所述第一响度规范化级别和指定信号压缩器的一个或多个操作特征的压缩配置文件,确定第一动态范围调整级别;通过对输入信号应用解码过程获取解码音频信息;通过对解码音频信息的分析获取响度的度量,并从响度的度量导出第二响度规范化级别;通过对解码音频信息的分析,并从第一动态范围调整级别,获取由编码过程使用的压缩配置文件的估计;生成输出信号,该输出信号传送代表第三响度规范化级别、第三动态范围调整级别以及代表编码形式的音频信息的第三编码音频信息的数据,其中如果第一和第二响度规范化级别之间的差异没有超过阈值,则第三响度级别代表第一响度规范化级别,第三动态范围调整级别代表第一动态范围调整级别,第三编码音频信息代表第一编码音频信息,以及如果第一和第二响度规范化级别之间的差异超过阈值,则从第二响度规范化级别导出第三响度级别,响应音频信息振幅、第三响度规范化级别和压缩配置文件的估计,获取第三动态范围调整级别。
7.一种传送可由设备执行的指令的程序的介质,以执行用于校正音频信息的播放响度和动态范围的方法,其中该方法包括下列步骤接收输入信号,该输入信号传送代表第一响度规范化级别、第一动态范围调整级别和第一编码音频信息的数据,其中,由输入信号传送的数据是通过编码过程产生的,所述编码过程按照音质原理生成第一编码音频信息,并响应音频信息振幅、所述第一响度规范化级别和指定信号压缩器的一个或多个操作特征的压缩配置文件,确定第一动态范围调整级别;通过对输入信号应用解码过程获取解码音频信息;通过对解码音频信息的分析获取响度的度量,并从响度的度量导出第二响度规范化级别;通过对解码音频信息的分析,并从第一动态范围调整级别,获取由编码过程使用的压缩配置文件的估计;生成输出信号,该输出信号传送代表第三响度规范化级别、第三动态范围调整级别以及代表编码形式的音频信息的第三编码音频信息的数据,其中如果第一和第二响度规范化级别之间的差异没有超过阈值,则第三响度级别代表第一响度规范化级别,第三动态范围调整级别代表第一动态范围调整级别,第三编码音频信息代表第一编码音频信息,以及如果第一和第二响度规范化级别之间的差异超过阈值,则从第二响度规范化级别导出第三响度级别,响应音频信息振幅、第三响度规范化级别和压缩配置文件的估计,获取第三动态范围调整级别。
8.根据权利要求6所述的设备,如果第一和第二响度规范化级别之间的差异超过了阈值,则通过根据音质原理对解码音频信息进行编码而生成第三编码音频信息。
9.根据权利要求6所述的设备,如果第一和第二响度规范化级别之间的差异超过了阈值,则第三编码音频信息代表第一编码音频信息。
10.根据权利要求6所述的设备,其中,输入信号传送代表第一动态范围调整级别的第一数量的比特,用重新排列的数据生成输出信号,以接纳代表第三动态范围调整级别的第二数量的比特,其中第一数量的比特数大于第二数量的比特数。
11.根据权利要求6所述的设备,其中,输入信号传送代表第一动态范围调整级别的第一数量的比特,用重新排列的数据生成输出信号,以接纳代表第三动态范围调整级别的第二数量的比特,其中第一数量的比特数小于第二数量的比特数。
12.根据权利要求7所述的介质,如果第一和第二响度规范化级别之间的差异超过了阈值,则通过根据音质原理对解码音频信息进行编码而生成第三编码音频信息。
13.根据权利要求7所述的介质,如果第一和第二响度规范化级别之间的差异超过了阈值,则第三编码音频信息代表第一编码音频信息。
14.根据权利要求7所述的介质,其中,输入信号传送代表第一动态范围调整级别的第一数量的比特,用重新排列的数据生成输出信号,以接纳代表第三动态范围调整级别的第二数量的比特,其中第一数量的比特数大于第二数量的比特数。
15.根据权利要求7所述的介质,其中,输入信号传送代表第一动态范围调整级别的第一数量的比特,用重新排列的数据生成输出信号,以接纳代表第三动态范围调整级别的第二数量的比特,其中第一数量的比特数小于第二数量的比特数。
全文摘要
编码信号传送编码音频信息和元数据,该元数据可以用来控制音频信息播放过程中的音频信息的响度和动态范围。如果这些元数据参数的值没有正确地设置,则在播放过程中可能会导致烦人的响度波动。本发明通过检测信号中的不正确的元数据参数值并用校正值替换不正确的值,克服了此问题。
文档编号H03G7/00GK1973434SQ200580020484
公开日2007年5月30日 申请日期2005年4月8日 优先权日2004年7月1日
发明者迈克尔·J.·史密斯尔斯, 杰弗里·C.·瑞德米勒尔, 查尔斯·Q.·鲁宾逊, 布莱特·G.·克罗克特 申请人:杜比实验室特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1