首页 > 乐器声学 专利正文
空间音频参数的重要性的确定及相关联的编码的制作方法

时间:2022-02-24 阅读: 作者:专利查询

空间音频参数的重要性的确定及相关联的编码的制作方法

1.本技术涉及用于声场相关的参数编码的装置和方法,但并不排他地涉及用于音频编码器和解码器的时频域方向相关的参数编码。


背景技术:

2.参数空间音频处理是使用一组参数来描述声音的空间方面的音频信号处理领域。例如,在从麦克风阵列进行参数化空间音频捕获时,从麦克风阵列信号估计一组参数是一种典型且有效的选择,该组参数诸如是频带中声音的方向、以及频带中被捕获声音的定向与非定向部分的比率。众所周知,这些参数很好地描述了在麦克风阵列的位置处的被捕获声音的感知空间特性。这些参数可以相应地在空间声音的合成中使用,以用于双耳式耳机、扬声器、或诸如全景环绕声(ambisonics)之类的其他格式。
3.因此,频带中的方向和直接对总能量比(direct

to

total energy ratio)是对空间音频捕获特别有效的参数化。
4.包括频带中的方向参数和频带中的能量比率参数(指示声音的方向性)的参数集也可以被用作用于音频编解码器的空间元数据(其还可以包括其他参数,诸如环绕相干性(surround coherence)、扩展相干性(spread coherence)、方向数量、距离等)。例如,这些参数可以从麦克风阵列捕获的音频信号来估计,并且例如可以从麦克风阵列信号生成立体声或单声道信号以与空间元数据一起传送。立体声信号例如可以用aac编码器来编码,而单声道信号可以用evs编码器来编码。解码器可以将音频信号解码成pcm信号,并(使用空间元数据)处理频带中的声音以获得空间输出,例如,双耳输出。
5.前述解决方案尤其适合于对来自(例如,移动电话、vr相机、独立麦克风阵列中的)麦克风阵列的捕获空间声音进行编码。然而,可期望这种编码器除了麦克风阵列捕获的信号之外还具有其他输入类型,例如,扬声器信号、音频对象信号、或ambisonic信号。
6.分析一阶ambisonics(foa)输入用于空间元数据提取已经在与定向音频编码(dirac)和谐波平面波展开(harpex)有关的科学文献中进行了详尽的记录。这是因为存在直接提供foa信号(更准确地:其变体,b格式信号)的麦克风阵列,并因此分析这种输入已经成为该领域的研究重点。
7.编码器的另一输入也是多通道扬声器输入,诸如5.1或7.1通道环绕声输入。
8.然而,对于空间元数据的组成部分,相干性参数的压缩和编码是相当令人感兴趣的,以便最小化表示空间音频参数所需的总比特数量。


技术实现要素:

9.根据第一方面,提供了一种用于空间音频编码的装置,其包括:用于对于一个或多个音频信号,接收或确定用于提供空间音频再现的以子带为基础的空间音频参数的部件,其中,该空间音频参数包括针对帧的多个子带中的每个子带的相干值;用于针对该帧的多个子带的相干值确定重要性度量(significance measure)的部件;以及用于使用该重要性
度量以确定是否对该帧的多个子带的相干值进行编码的部件。
10.该装置还可以包括用于针对多个子带中的每个子带接收能量比率值的部件,其中,用于针对该帧的多个子带的相干值确定重要性度量的部件可以包括:用于针对多个子带中的每个子带确定相干非定向能量比例的部件,其中,子带的相干非定向能量比例被确定为该子带的非定向能量比率乘以该子带的相干值,其中,该非定向能量比率与在该子带的能量比率值已被移除之后在该子带中剩下的能量比率相关;以及用于对于所有多个子带,对所确定的相干非定向能量比例求和的部件。
11.用于针对该帧的多个子带的相干值确定重要性度量的部件还可以包括:用于针对每个子带,将相干非定向能量比例乘以非定向能量比率的部件;用于对于所有多个子带,对每个子带的相干非定向能量比例与非定向能量比率的乘积求和的部件;以及用于通过每个子带的非定向能量比率的总和来对每个子带的相干非定向能量比例和非定向能量比率的乘积和进行归一化的部件。
12.该帧的多个子带的相干值的重要性度量可以是该帧的多个子带的相干值的第一重要性度量。
13.该帧的多个子带的相干值的重要性度量可以是该帧的多个子带的相干值的第二重要性度量。
14.用于针对该帧的多个子带的相干值确定重要性度量的部件可以包括:用于将该帧的多个子带的相干值的重要性度量确定为第一重要性度量和第二重要性度量中的最大度量的部件。
15.用于使用该重要性度量以确定是否对该帧的多个子带的相干值进行编码的部件可以包括:用于将该重要性度量与阈值相比较的部件;以及用于当该重要性度量超过阈值时对该帧的多个子带的相干值进行编码的部件。
16.多个子带中的每个子带的相干值可以是环绕相干值,其中,可以基于两个或更多个通道音频信号之间的通道间相干性来确定该环绕相干值。
17.可以由包括用于执行以下操作的部件的该装置来确定多个子带中的每个子带的环绕相干值:计算与两个或更多个通道音频信号相关联的协方差矩阵;监视具有基于该协方差矩阵而确定的最大能量的通道音频信号以及其他通道音频信号的子集,其中,该子集是在1与小于具有次最大能量的通道音频信号的总数的数量之间的所确定的数量;以及基于在具有最大能量的通道音频信号与每个次最大能量通道音频信号之间确定的归一化相干性中选择最小值,生成环绕协方差参数。
18.每个子带的能量比率值可以是每个子带的直接对总能量比值。
19.子带的非定向能量比率被确定为1减去该子带的直接对总能量比。
20.根据第二方面,存在一种用于空间音频编码的方法,其包括:对于一个或多个音频信号,接收或确定用于提供空间音频再现的以子带为基础的空间音频参数,其中,该空间音频参数包括针对帧的多个子带中的每个子带的相干值;针对该帧的多个子带的相干值确定重要性度量;以及使用该重要性度量以确定是否对该帧的多个子带的相干值进行编码。
21.该方法还可以包括针对多个子带中的每个子带接收能量比率值,其中,针对该帧的多个子带的相干值确定重要性度量可以包括:针对多个子带中的每个子带确定相干非定向能量比例,其中,子带的相干非定向能量比例被确定为该子带的非定向能量比率乘以该
子带的相干值,其中,该非定向能量比率与在该子带的能量比率值已被移除之后在该子带中剩下的能量比率相关;以及对于所有多个子带,对所确定的相干非定向能量比例求和。
22.针对该帧的多个子带的相干值确定重要性度量还可以包括:针对每个子带,将相干非定向能量比例乘以非定向能量比率;对于所有多个子带,对每个子带的相干非定向能量比例与非定向能量比率的乘积求和;以及通过每个子带的非定向能量比率的总和来对每个子带的相干非定向能量比例和非定向能量比率的乘积和进行归一化。
23.该帧的多个子带的相干值的重要性度量可以是该帧的多个子带的相干值的第一重要性度量。
24.该帧的多个子带的相干值的重要性度量可以是该帧的多个子带的相干值的第二重要性度量。
25.针对该帧的多个子带的相干值确定重要性度量的部件可以包括:将该帧的多个子带的相干值的重要性度量确定为第一重要性度量和第二重要性度量中的最大度量。
26.使用该重要性度量以确定是否对该帧的多个子带的相干值进行编码可以包括:将该重要性度量与阈值相比较;以及当该重要性度量超过阈值时对该帧的多个子带的相干值进行编码。
27.多个子带中的每个子带的相干值可以是环绕相干值,其中,可以基于两个或更多个通道音频信号之间的通道间相干性来确定该环绕相干值。
28.可以由包括以下操作的装置来确定多个子带中的每个子带的环绕相干值:计算与两个或更多个通道音频信号相关联的协方差矩阵;监视具有基于该协方差矩阵而确定的最大能量的通道音频信号以及其他通道音频信号的子集,其中,该子集是在1与小于具有次最大能量的通道音频信号的总数的数量之间的所确定的数量;以及基于在具有最大能量的通道音频信号与每个次最大能量通道音频信号之间确定的归一化相干性中选择最小值,生成环绕协方差参数。
29.每个子带的能量比率值可以是每个子带的直接对总能量比值。
30.子带的非定向能量比率可以被确定为1减去该子带的直接对总能量比。
31.根据第三方面,提供了一种用于空间音频编码的装置,该装置包括至少一个处理器和包括计算机程序代码的至少一个存储器,该至少一个存储器和计算机代码被配置为:对于一个或多个音频信号,接收或确定用于提供空间音频再现的以子带为基础的空间音频参数,其中,该空间音频参数包括针对帧的多个子带中的每个子带的相干值;针对该帧的多个子带的相干值确定重要性度量;以及使用该重要性度量以确定是否对该帧的多个子带的相干值进行编码。
32.该装置还可以进一步被使得针对多个子带中的每个子带接收能量比率值,其中,被使得针对该帧的多个子带的相干值确定重要性度量的该装置可以被使得:针对多个子带中的每个子带确定相干非定向能量比例,其中,子带的相干非定向能量比例被确定为该子带的非定向能量比率乘以该子带的相干值,其中,该非定向能量比率与在该子带的能量比率值已被移除之后在该子带中剩下的能量比率相关;以及对于所有多个子带,对所确定的相干非定向能量比例求和。
33.被使得针对该帧的多个子带的相干值确定重要性度量的该装置可以进一步被使得:针对每个子带,将相干非定向能量比例乘以非定向能量比率;对于所有多个子带,对每
个子带的相干非定向能量比例与非定向能量比率的乘积求和;以及通过每个子带的非定向能量比率的总和来对每个子带的相干非定向能量比例和非定向能量比率的乘积和进行归一化。
34.该帧的多个子带的相干值的重要性度量可以是该帧的多个子带的相干值的第一重要性度量。
35.该帧的多个子带的相干值的重要性度量可以是该帧的多个子带的相干值的第二重要性度量。
36.被使得针对该帧的多个子带的相干值确定重要性度量的该装置可以被使得:将该帧的多个子带的相干值的重要性度量确定为第一重要性度量和第二重要性度量中的最大度量。
37.被使得使用该重要性度量以确定是否对该帧的多个子带的相干值进行编码的该装置可以被使得:将该重要性度量与阈值相比较;以及当该重要性度量超过阈值时对该帧的多个子带的相干值进行编码。
38.多个子带中的每个子带的相干值可以是环绕相干值,其中,可以基于两个或更多个通道音频信号之间的通道间相干性来确定该环绕相干值。
39.可以由被使得执行以下操作的该装置来确定多个子带中的每个子带的环绕相干值:计算与两个或更多个通道音频信号相关联的协方差矩阵;监视具有基于该协方差矩阵而确定的最大能量的通道音频信号以及其他通道音频信号的子集,其中,该子集是在1与小于具有次最大能量的通道音频信号的总数的数量之间的所确定的数量;以及基于在具有最大能量的通道音频信号与每个次最大能量通道音频信号之间确定的归一化相干性中选择最小值,生成环绕协方差参数。
40.每个子带的能量比率值可以是每个子带的直接对总能量比值。
41.子带的非定向能量比率可以被确定为1减去该子带的直接对总能量比。
42.一种计算机程序,包括用于使计算机执行如上所述的方法的程序指令。
43.一种被存储在介质上的计算机程序产品可以使装置执行本文所述的方法。
44.一种电子设备可以包括如本文所述的装置。
45.一种芯片组可以包括如本文所述的装置。
46.本技术的实施例旨在解决与现有技术相关联的问题。
附图说明
47.为了更好地理解本技术,现在将通过示例的方式参考附图,其中:
48.图1示意性地示出适于实现一些实施例的装置的系统;
49.图2示意性地示出根据一些实施例的元数据编码器;
50.图3示出根据一些实施例的如图2中所示的元数据编码器的操作的流程图;
51.图4示意性地示出根据一些实施例的如图2中所示的相干编码器;
52.图5示出根据一些实施例的图4中所示的相干值重要性确定器的操作的流程图;
53.图6示出根据一些实施例的图4中所示的相干值编码确定器的操作的流程图;
54.图7示意性地示出适于实现所示装置的示例设备。
具体实施方式
55.下面更详细地描述用于提供有效空间分析导出的元数据参数的合适装置和可能机制。在下面的讨论中,将关于多通道麦克风实现来讨论多通道系统。然而,如上所述,输入格式可以是任何合适的输入格式,诸如多通道扬声器、ambisonic(foa/hoa)等。应理解,在一些实施例中,通道位置是基于麦克风的位置的,或者是基于虚拟位置或方向的。此外,示例系统的输出是多通道扬声器布置。然而,应理解,该输出可经由除了扬声器以外的手段渲染给用户。此外,多通道扬声器信号可被概括为两个或更多个播放音频信号。
56.对于每个所考虑的时频(tf)块或图块,换句话说,对于时间/频率子带,元数据至少包括方向(仰角、方位角)、所得到的方向的能量比率、以及与该方向无关的环绕相干性。另外,对于每个tf块,可以确定并包括扩展相干性。所有这些数据由编码器编码并发送(或存储),以便能够在解码器处重建空间信号。
57.编解码器的典型整体操作比特率可留出2到10kbps以用于空间元数据的传输/存储。然而,一些其他实现可允许高达20kps以用于空间元数据的传输/存储。之前已经检查了方向参数和能量比率分量的编码。然而,相干数据的编码需要进一步的研究,以便最小化编码空间元数据所需的整体操作比特率。
58.下文所讨论的概念是针对每个时频块,对相干性参数以及方向和能量比率参数进行编码。在特定场景中,可以根据相干性参数对于收听者的主观重要性来调整帧的相干性参数的编码。例如,对于音频帧,可以确定每个子带的相干性参数可相对于周围子带没有贡献主观重要性。在这种情况下,可以通过不对该帧的相干性参数进行编码来实现操作比特率的节省。
59.因此,本发明基于以下考虑:对于某些情况,用于编码相干性参数的比特数量的总体节省。这可以通过具有可提供每个子带的相干值关于周围子带的主观重要性的指示的度量,并使用该度量的结果以确定对于该帧是否应当对相干性参数进行编码来实现。
60.在这方面,图1描绘了用于实现本技术所示实施例的示例装置和系统。系统100被示出为具有“分析”部分121和“合成部分131。“分析”部分121是从接收多通道扬声器信号到元数据和下混合信号的编码的部分,而“合成”部分131是从编码的元数据和下混合信号的解码到重新生成信号的呈现(例如,以多通道扬声器的形式)的部分。
61.系统100和“分析”部分121的输入是多通道信号102。在以下示例中描述了麦克风通道信号输入,然而,在其他实施例中,可以实现任何合适的输入(或合成多通道)格式。例如,在一些实施例中,空间分析器和空间分析可以在编码器外部实现。例如,在一些实施例中,与音频信号相关联的空间元数据可以作为单独的比特流被提供给编码器。在一些实施例中,空间元数据可以被提供为一组空间(方向)索引值。
62.多通道信号被传递给传输信号生成器103和分析处理器105。
63.在一些实施例中,传输信号生成器103被配置为接收多通道信号,生成包括确定数量的通道的合适的传输信号,并输出传输信号104。例如,传输信号生成器103可以被配置为生成多通道信号的2

音频通道下混合。确定数量的通道可以是任何合适数量的通道。在一些实施例中,传输信号生成器被配置为例如通过波束成形技术来以其他方式选择或组合输入音频信号到确定数量的通道并将其输出为传输信号。
64.在一些实施例中,传输信号生成器103是可选的,并且多通道信号以与此示例中的
传输信号相同的方式在未经处理的情况下被传递给编码器107。
65.在一些实施例中,分析处理器105还被配置为接收多通道信号,并分析该信号以产生与多通道信号相关联并因此与传输信号104相关联的元数据106。分析处理器105可以被配置为生成元数据,该元数据对于每个时频分析间隔可以包括方向参数108和能量比率参数110和相干性参数112(以及在一些实施例中还包括扩散度参数)。在一些实施例中,方向、能量比和相干性参数可以被认为是空间音频参数。换句话说,空间音频参数包括旨在表征由多通道信号(或通常是两个或更多个回放音频信号)创建的声场的参数。
66.在一些实施例中,所生成的参数可在频带与频带之间不同。因此,例如,在频带x中,所有参数被生成和发送,而在频带y中,仅其中一个参数被生成和发送,此外,在频带z中,没有参数被生成或发送。这种情况的实际示例可以是对于诸如最高频带的一些频带,出于感知方面原因而不需要一些参数。传输信号104和元数据106可以被传递给编码器107。
67.编码器107可以包括音频编码器核心109,其被配置为接收传输(例如,下混合)信号104并生成这些音频信号的合适的编码。在一些实施例中,编码器107可以是计算机(运行存储在存储器上和至少一个处理器上的合适的软件),或者可替代地可以是例如使用fpga或asic的特定设备。编码可以使用任何合适的方案来实现。此外,编码器107可以包括被配置为接收元数据并输出编码或压缩形式的信息的元数据编码器/量化器111。在一些实施例中,在图1中由虚线所示的发送或存储之前,编码器107可以进一步交织、复用到单个数据流或将元数据嵌入编码的下混合信号内。复用可以使用任何合适的方案来实现。
68.在解码器侧,所接收或获取的数据(流)可以由解码器/解复用器133来接收。解码器/解复用器133可以对编码流进行解复用,并将音频编码流传递给被配置为对音频信号进行解码以获得传输信号的传输提取器135。类似地,解码器/解复用器133可以包括被配置为接收编码元数据并生成元数据的元数据提取器137。在一些实施例中,解码器/解复用器133可以是计算机(运行存储在存储器上和在至少一个处理器上的合适的软件),或者可替代地可以是例如使用fpga或asic的特定设备。
69.解码的元数据和传输音频信号可以被传递给合成处理器139。
70.系统100的“合成”部分131还示出了合成处理器139,其被配置为接收传输和元数据,并基于传输信号和元数据以任何合适的格式重新创建采用多通道信号110形式的合成空间音频(根据使用实例,其可以是多通道扬声器格式,或者在一些实施例中可以是诸如双耳或环绕立体声信号的任何合适的输出格式)。
71.因此,综上所述,首先,该系统(分析部分)被配置为接收多通道音频信号。
72.进而,该系统(分析部分)被配置为生成合适的传输音频信号(例如,通过选择或下混合一些音频信号通道)。
73.该系统进而被配置为对传输信号和元数据进行编码以用于存储/传输。
74.此后,该系统可以存储/发送编码的传输和元数据。
75.该系统可以获取/接收编码的传输和元数据。
76.进而,该系统被配置为从编码的传输和元数据参数中提取传输和元数据,例如,对编码的传输和元数据参数进行解复用和解码。
77.该系统(合成部分)被配置为基于所提取的传输音频信号和元数据来合成输出多通道音频信号。
78.关于图2,更详细地描述了根据一些实施例的示例分析处理器105和元数据编码器/量化器111(如图1中所示)。
79.在一些实施例中,分析处理器105包括时频域变换器201。
80.在一些实施例中,时频域变换器201被配置为接收多通道信号102,并应用诸如短时傅立叶变换(stft)之类的合适的时频域变换,以便将输入时域信号转换成合适的时频信号。这些时频信号可以被传递给空间分析器203。
81.因此,例如,在时频域表示中,时频信号202可以被表示为:
82.s
i
(b,n)
83.其中,b是频率点(frequency bin)索引,n是时频块(帧)索引,i是通道索引。在另一表达中,n可以被认为是具有比原始时域信号的采样率低的采样率的时间索引。这些频率点可以被分组成多个子带,这些子带将一个或多个点分组成频带索引的子带k=0,

,k

1。每个子带k具有最低点b
k,low
和最高点b
k,high
,并且该子带包含从b
k,low
到b
k,high
的所有点。子带的宽度可以近似于任何合适的分布。例如,等效矩形带宽(erb)尺度或bark尺度。
84.在一些实施例中,分析处理器105包括空间分析器203。空间分析器203可以被配置为接收时频信号202,并基于这些信号来估计方向参数108。可以基于任何基于音频的“方向”确定来确定方向参数。
85.例如,在一些实施例中,空间分析器203被配置为用两个或更多个信号输入来估计方向。这表示用于估计“方向”的最简单配置,更复杂的处理可以用甚至更多个信号来执行。
86.因此,空间分析器203可以被配置为针对音频信号的帧内的每个频带和时频块,提供至少一个方位角和仰角,分别被标示为方位角和仰角θ(k,n)。方向参数108也可以被传递给方向编码器205。
87.空间分析器203还可以被配置为确定能量比率参数110。能量比可以被认为是对可被认为是从一方向到达的音频信号的能量的确定。直接对总能量比r(k,n)可以例如使用方向性估计的稳定性度量、或者使用任何相关性度量、或者任何其他用于获得比率参数的合适的方法来估计。每个直接对总能量比对应于特定空间方向并且描述与总能量相比,来自该特定空间方向的能量有多少。也可以针对每个时频图块单独地表示此值。空间方向参数和直接对总能量比描述了每个时频图块的总能量中有多少是来自特定方向。一般地,空间方向参数也可以被认为是到达方向(doa)。
88.在实施例中,可以基于在频带k处麦克风对之间的归一化互相关参数cor

(k,n)来估计直接对总能量比参数,该互相关参数的值介于

1和1之间。通过将归一化互相关参数与扩散场归一化互相关参数cor

d
(k,n)进行比较,直接对能量比参数r(k,n)可以被确定为:
[0089][0090]
该直接对总能量比在pct公开文本wo2017/005978(其通过引用而全部并入本文中)中进一步被解释。
[0091]
该能量比率可以被传递给能量比率编码器207。
[0092]
此外,空间分析器203可以被配置为确定多个相干性参数112,其可以包括环绕相干性(γ(k,n))和扩展相干性(ζ(k,n)),这两者均在时频域中被分析。
[0093]
接下来讨论每个前述相干性问题参数。所有处理都是在时频域中进行的,所以为了简洁起见,在必要时去掉了时频索引k和n。
[0094]
让我们首先考虑使用两个间隔的扬声器(例如,左前和右前)而不是单个扬声器来相干地再现声音的情况。相干分析器可以被配置为检测这种方法已被应用于环绕混合。
[0095]
因此,在一些实施例中,空间分析器203可以被配置为针对包括一个或多个时间索引n和频率点b的给定分析间隔,计算协方差矩阵c。该矩阵大小为n
l x n
l
,其元素被表示为c
ij
,其中,n
l
是扬声器通道的数量,i和j是扬声器通道索引。
[0096]
接下来,空间分析器203可以被配置为确定最接近所估计的方向(在此示例中为方位角θ)的扬声器通道i
c

[0097]
i
c
=arg(min(|θ

α
i
|))
[0098]
其中,α
i
是扬声器i的角度。
[0099]
此外,在这种实施例中,空间分析器203被配置为确定在扬声器i
c
的左侧i
l
和右侧i
r
最接近的扬声器。
[0100]
扬声器i与j之间的归一化相干性被表示为:
[0101][0102]
使用该等式,空间分析器203可以被配置为计算i
l
与i
r
之间的归一化相干性c

lr
。换句话说,计算:
[0103][0104]
此外,空间分析器203可以被配置为使用该协方差矩阵的对角线元素来确定扬声器通道i的能量:
[0105]
e
i
=c
ii
[0106]
并确定扬声器i
l
和i
r
与扬声器i
l
、i
r
和i
c
之间的能量比为:
[0107][0108]
进而,空间分析器203可以使用这些所确定的变量以生成“立体度(stereoness)”参数:
[0109]
μ=c

lr
ξ
lr/lrc
[0110]
此“立体度”参数具有0到1之间的值。值1意味着扬声器i
l
和i
r
中存在相干声音,并且该声音主导该扇区的能量。其原因可以是例如扬声器混合器使用了幅度平移技术以用于创建声音的“轻快的(airy)”感知。值0意味着尚未应用任何此类技术,并且例如,声音可以简单地被定位到最接近的扬声器。
[0111]
此外,空间分析器203可以被配置为检测或至少识别其中使用三个(或更多个)扬声器相干地再现声音以创建“接近的(close)”感知的情形(例如,使用左前、右前和中央而不是仅中央)。这可以是因为混音工程师在对多通道扬声器混合进行环绕混合时产生了这种情形。
[0112]
在这种实施例中,相干分析器使用先前识别的相同的扬声器i
l
、i
r
和i
c
以使用先前讨论的归一化相干性确定来确定归一化相干值c

cl
和c

cr
。换句话说,以下值被计算:
[0113][0114]
进而,空间分析器203可以使用下式来确定描述这些扬声器之间的相干性的归一化相干值c

clr

[0115]
c

clr
=min(c

cl
,c

cr
)
[0116]
另外,空间分析器203可以被配置为确定描述能量如何(即均匀程度)在通道i
l
、i
r
和i
c
之间均匀地分布的参数:
[0117][0118]
使用这些变量,,空间分析器203可以确定新的相干平移参数κ为:
[0119]
κ=c

clr
ξ
clr
[0120]
此相干平移参数κ具有0到1之间的值。值1意味着在所有的扬声器i
l
、i
r
和i
c
中存在相干声音,并且该声音的能量在这些扬声器之间均匀地分布。其原因可以是例如因为扬声器混合是使用用于创建更近的声源的感知的录音混合技术而生成的。值0意味着尚未应用任何此类技术,例如,声音可以简单地被定位到最接近的扬声器。
[0121]
确定度量i
l
和i
r
中(但不在i
c
中)的相干声音量的立体度参数μ和度量所有的i
l
、i
r
和i
c
中的相干声音量的相干平移参数κ的空间分析器203被配置为使用这些参数以确定将要作为元数据输出的相干性参数。
[0122]
因此,空间分析器203被配置为组合立体度参数μ和相干平移参数κ以形成值从0到1的扩展相干性ζ参数。扩展相干性ζ值0表示点源,换句话说,应当用尽可能少的扬声器(例如,仅使用扬声器i
c
)来再现声音。随着扩展相干性ζ的值增加,更多能量扩展到扬声器i
c
周围的扬声器;直到值为0.5,能量在扬声器i
l
、i
r
和i
c
之间均匀地散布。当扩展相干性ζ的值超过0.5时,扬声器i
c
中的能量降低;直到值为1,在扬声器i
c
中没有能量,并且所有能量都在扬声器i
l
和i
r
处。
[0123]
在一些实施例中,使用上述参数μ和κ,空间分析器203被配置为使用下列表达式来确定扩展相干性参数ζ:
[0124][0125]
上面的表达式仅仅是示例,并且应当注意,空间分析器203可以采用任何其他方式来估计扩展相干性参数ζ,只要它符合上述的参数定义即可。
[0126]
除了被配置为检测先前的情形之外,空间分析器203还可以被配置为检测或至少识别其中从所有(或几乎所有)扬声器相干地再现声音以创建“头部中(inside

the

head)”或“上方(above)”的感知的情形。
[0127]
在一些实施例中,空间分析器203可以被配置为对所确定的具有最大值的能量e
i
和扬声器通道i
e
进行分类。
[0128]
进而,空间分析器203可以被配置为确定此通道与m
l
个其他最响通道之间的归一
化相干性c

ij
。进而,可以监视此通道与m
l
个其他最响通道之间的这些归一化相干性c

ij
值。在一些实施例中,m
l
可以是n
l

1,这将意味着监视最响通道与所有其他扬声器通道之间的相干性。然而,在一些实施例中,m
l
可以是更小的数量,例如,n
l

2。使用这些归一化相干值,相干分析器可以被配置为使用下列表达式来确定环绕相干性参数γ:
[0129][0130]
其中,是最响通道与m
l
个次最响通道之间的归一化相干性。
[0131]
环绕相干性参数γ具有从0到1的值。值1意味着在所有(或几乎所有)的扬声器通道之间存在相干性。值为0意味着在所有(或者甚至几乎所有)的扬声器通道之间没有相干性。
[0132]
上述表达式仅仅是对环绕相干性参数γ的估计的一个示例,并且可以使用任何其他方式,只要它符合上述的参数定义即可。
[0133]
在此之后,分析处理器203可以应用方向分析以确定方向和能量比率参数。
[0134]
进而,分析处理器203可以被配置为输出所确定的参数。
[0135]
虽然在本文中针对每个时间索引n来表示方向、能量比率和相干性参数,但在一些实施例中,这些参数可以在若干时间索引上进行组合。如已描述的,这同样适用于频率轴,若干频率点b的方向可以由包括若干频率点b的频带k中的一个方向参数来表示。这同样适用于本文中所有所讨论的空间参数。
[0136]
在一些实施例中,方向数据可以使用16个比特来表示。在这种实施例中,能量比率参数可以在8个比特上表示。对于每一帧,可以有5个子带和4个时频(tf)块。因此,在此示例中,需要(16+8)x4x5个比特来存储每帧的未压缩的方向和能量比率元数据。每个tf块的相干数据可以是在0与1之间的表示,并且最初可以在8个比特上被表示。
[0137]
同样如图2中所示,示出了根据一些实施例的示例元数据编码器/量化器111。
[0138]
元数据编码器/量化器111可以包括方向编码器205。方向编码器205被配置为接收方向参数(诸如方位角和仰角θ(k,n)108)(以及在一些实施例中,预期的比特分配),并由此生成合适的编码输出。在一些实施例中,编码是基于球体的布置(在“表面”球体上形成以环形布置的球面网格),这些球体由所确定的量化分辨率所定义的查找表来定义。换句话说,球面网格使用以下构思:用更小球体来覆盖一球体,并将更小球体的中心视为定义几乎等距离的方向的网格的点。因此,更小球体定义了关于中心点的圆锥体或立体角,其可以根据任何合适的索引算法来索引。虽然在本文中描述了球面量化,但是也可以使用任何合适的量化(线性的或非线性的)。
[0139]
此外,在一些实施例中,方向编码器205被配置为确定方位角参数值的方差,并将其传递给相干编码器209。
[0140]
编码的方向参数进而可以被传递给组合器211。
[0141]
元数据编码器/量化器111可以包括能量比率编码器207。能量比率编码器207被配置为接收能量比率,并确定用于压缩子带和时频块的能量比率的合适的编码。例如,在一些实施例中,能量比率编码器207被配置为使用3个比特以编码每个能量比率参数值。
[0142]
此外,在一些实施例中,不是发送或存储所有tf块的所有能量比率值,而是仅每子带一个加权平均值被发送或存储。可以通过考虑每个时间块的总能量来确定该平均,从而
倾向于具有更多能量的子带的值。
[0143]
在这种实施例中,量化的能量比率值对于给定子带的所有tf块是相同的。
[0144]
在一些实施例中,能量比率编码器207进一步被配置为将量化(编码)的能量比率值传递给组合器211和相干编码器209。
[0145]
元数据编码器/量化器111可以包括相干编码器209。相干编码器209被配置为接收相干值,并确定用于压缩子带和时频块的相干值的合适的编码。相干性参数值的3比特精度值已被示出以产生可接受的音频合成结果,但即便如此,对于所有tf块(在该示例中,每帧8个子带和5个tf块)需要总共3x20个比特以用于相干数据。
[0146]
因此,实施例的目的是减少用于在多个tf块的过程中表示相干数据的比特数量。
[0147]
编码的相干性参数值进而可以被传递给组合器211。
[0148]
元数据编码器/量化器111可以包括组合器211。该组合器被配置为接收编码的(或量化的/压缩的)方向性参数、能量比率参数和相干性参数,并组合这些参数以生成合适的输出(例如,元数据比特流,其可以与传输信号组合或与传输信号分开地发送或存储)。
[0149]
关于图3,示出了根据一些实施例的如图2中所示的元数据编码器/量化器的示例操作。
[0150]
如图3中步骤301所示,初始操作是获得元数据(诸如方位角值、仰角值、能量比率、相干性等)。
[0151]
如图3中步骤303所示,方向值(仰角、方位角)进而可以被压缩或编码(例如,通过应用球面量化或任何合适的压缩)。
[0152]
如图3中步骤305所示,能量比率值被压缩或编码(例如,通过生成每子带的加权平均值,然后将它们量化为3比特值)。
[0153]
如图3中步骤307所示,相干值也被压缩或编码。
[0154]
如图3中步骤309所示,编码的方向值、能量比率、相干值进而被组合以生成编码元数据。
[0155]
关于图4,示出了如图2中所示的示例相干编码器209。
[0156]
如先前所述,可以通过调整相干性参数的编码来实现技术效益,其中,对于一些音频帧,相干性参数被编码并因此形成编码比特流的一部分,而对于其他音频帧,相干性参数不被编码。技术效益是编码比特流的比特率的整体降低。
[0157]
可以基于每个子带的相干值关于周围子带的主观重要性来做出是否对相干性参数进行编码的决定。换句话说,可以基于相干性参数是否有助于终端用户的整体感知收听体验而做出对相干性参数进行编码的决定。
[0158]
收听实验已证明空间音频信号的相干的感知至少可以部分地归因于存在于各频带中的信号之间的相互作用。这可能似乎与以下前提相反:对于声音的感知,人类频率分辨率可以根据诸如等效矩形带宽(erb)之类的非线性频率标度来进行筒仓化(siloed)/划分(compartmentalized)。
[0159]
例如,通过实验(包括感知收听测试)注意到如果对于大多数频带相干性很低,则单个频带中的更高的相干性对空间音频的感知的贡献可能微不足道。因此,在这种情况下,不编码相干性参数对编码比特流的整体比特率可以是有益的。
[0160]
可替代地,通过感知收听测试还注意到如果发现单个频带的能量比率显著低于其
他的周围频带,则在该频带处相干性可在感知上很重要。在这种情况下,发现人类听觉系统可能特别敏感。因此,发送用于该帧的相干性参数以便增强空间音频的整体收听体验将是谨慎的。
[0161]
因此,实验观察的结果表明可以设计表示空间音频信号的相干的重要性的度量(或测量)。
[0162]
这些效果对于空间音频信号的环绕相干性的感知可能特别普遍。然而,在决定是否对相干性参数进行编码时,度量其他类型的相干性参数的重要性也可以有所裨益。例如,诸如这些之类的技术也可以应用于扩展相干性参数值。
[0163]
如上所述,当涉及到相干性的感知时,这些效果可以归因于频带之间的相互作用。
[0164]
在这方面,首先参考图4中的401,其中,相干值重要性确定器被描述为接收tf块n的每个子带k的相干值。此外,401还可以被设置为接收tf块n(或子帧n)的直接对总能量比r(k,n),即,与具有时间索引n的tf块的k个子带相关联的能量比率。类似地,相干值也被传送到相干值重要性确定器401,作为具有时间索引n的tf块的k个子带的k个相干值。
[0165]
在第一实施例中,相干值可以包括环绕相干性(r(k,n))。注意,k用于指示子带索引,n是tf块的索引。
[0166]
还参考图5,其描绘了用于确定包括k个子带的tf块的环绕相干值的重要性的示例处理步骤。
[0167]
最初,处理块401可以通过使用直接对总能量比r(k,n)来确定每个子带k的非定向能量比率的估计。在实施例中,非定向(环绕)能量比a(k,n)可以由下式给出:
[0168]
a(k,n)=1

r(k,n)对于k=0到k
‑1[0169]
注意,r(k,n)是总能量中在特定方向上的能量,每个频率的方向由方位角和仰角给出。如先前所述,该方向由来自方向编码器205的方向索引表示。能量比r(k,n)可以具有在0到1之间的值,其中,1意味着总能量沿着子带k的一个方向索引而集中。因此,a(k,n)表示特定子带k的环绕(或非定向)能量比率,换句话说,能量没有沿着特定方向索引而集中。
[0170]
如图5中的501示出了处理步骤:确定非定向(环绕)能量比率。
[0171]
因此,每个子带k的相干非定向(环绕)能量比例可以由下式给出:
[0172]
ρ(k,n)=a(k,n)γ(k,n)对于k=0到k
‑1[0173]
针对每个子带确定非定向(环绕)能量比例的处理步骤被描述为如图5中的处理步骤503。
[0174]
tf块n(或子帧n)的环绕相干值的重要性的第一度量(或测量)可以通过对子帧n的所有子带上的非定向能量比例求和来估计:
[0175][0176]
第一度量ξ1可以被视为给出非定向(环绕)能量在子帧n的多个子频带中是否突出(prominent)的指示。
[0177]
确定子帧n的环绕相干值的重要性的第一度量的处理步骤被描述为如图5中的处理步骤505。
[0178]
可以通过取得非定向能量ρ(k,n)比例并用特定子带k的环绕(或非定向)能量比率
a(k,n)对其进行加权来估计子帧n的环绕相干值的重要性的第二度量(或测量)ξ2。这可以跨所有子带来求和,并用环绕(或非定向)能量的“总”比率来进行归一化。第二度量ξ2可以被表示为:
[0179][0180]
其中,μ是调谐因子。实验观察已表明值μ=0.4可产生有利的结果。
[0181]
第二度量(或测量)ξ2可以被视为提供环绕相干能量在主要为非定向的子带内是否突出的度量,并因此提供关于所提供的子帧的环绕相干值是否可在感知上很重要并因此是否应当对相干值进行编码和发送的指示。
[0182]
确定tf(子帧)n的环绕相干性参数的重要性的第二度量的处理步骤被描述为如图5中的处理步骤507。
[0183]
在实施例中,可以合并第一度量和第二度量以提供tf块(子帧)n的环绕相干值的重要性的单个度量。
[0184]
该合并可以采取采用第一度量或第二度量中的最大度量的形式,以给出tf块(子帧)n的环绕相干值的重要性单个度量ξ:
[0185]
ξ(n)=max(ξ1(n),ξ2(n))
[0186]
相干值重要性确定器401的输出可以是环绕相干值的重要性的单个度量ξ。此参数可以被传递给相干值编码确定器403。处理块403可以被设置为确定是否应当对子帧的相干值进行编码。
[0187]
在图5中由步骤509示出了处理步骤:合并第一度量和第二度量以给出指示tf块n的环绕相干值的重要性的单个度量。
[0188]
在一些实施例中,环绕相干值的重要性的单个度量ξ可以仅包括环绕值的重要性的第一度量ξ1。可替代地,在其他实施例中,环绕相干值的重要性的单个度量ξ可以仅包括环绕值的重要性的第二度量ξ2。换句话说,在这两个实施例中都没有合并步骤509。因此,对于相干值重要性确定器401的操作,环绕相干值的重要性的度量ξ可以只是第一度量ξ1,或者只是第二度量ξ2。
[0189]
图6示出了可以由相干值编码确定器403执行的一组示例处理步骤。
[0190]
在实施例中,确定是否应当对tf块的环绕相干值进行编码可以采取将环绕相干值的重要性的单个度量ξ与用于子帧n的阈值τ(n)相比较的形式。这种比较可以被表示为:
[0191]
e(n)=1,如果ξ(n)>τ(n)
[0192]
e(n)=0,如果ξ(n)≤τ(n)
[0193]
其中,e(n)=1表示对tf块(或子帧)n的相干值进行编码(和发送),而e(n)=0表示不对子帧n的相干值进行编码。
[0194]
阈值可以是常数。例如,可以采取诸如τ(n)=τ=0.15之类的值。可替代地,在一些实施例中,该阈值可以随时间而改变。例如,可以基于基于编码比特率的因子来选择该阈值。
[0195]
将环绕相干值的重要性的单个度量ξ与阈值相比较的步骤被示出为如图6中的处理步骤601。
[0196]
进而,功能块403可以被设置为将tf块(子帧)n的相干值输出到相干性参数编码器405,条件是上述比较的结果指示相干值足够重要以保证编码有必要。因此,图4描绘了从相干性参数编码确定器403到相干性参数编码器405的连接路径。然而,如果环绕相干值的重要性的单个度量ξ没有超过阈值,则不对相干值进行编码。
[0197]
图6中的处理步骤603描绘了如下的情况:环绕相干值的重要性的单个度量ξ超过阈值,导致该块的相干值被发送到相干值编码器405以进行编码。相反,图6中的处理步骤605描绘了如下的情况:环绕相干值的重要性的单个度量ξ没有超过阈值,导致该tf块的相干值没有被编码。
[0198]
相干性参数编码器405被配置为从功能块403接收已被确定为在感知上很重要的相干值。这些相干值可以是在0与1之间的8比特表示。
[0199]
相干值编码器405可以被配置为在逐tf块的基础上对与tf块(或子帧)的子带相关联的相干值进行编码。相干值编码器405可以采用其中首先使用来自多个量化表的特定量化表来对每个子带的相干值进行标量量化的方法。用于量化相干值的特定量化表的选择可以取决于每个子带的能量比率值,并且每个量化表的条目数量可以彼此不同。本质上,多个量化表中的每个量化表可以包括一系列预先计算的量化相干值,它们可以被定制为特定能量比率值。
[0200]
进而,可以使用乘积类型码(product type code)(通过其用于tf块的子带的所有量化索引被级联在一起成为组合索引)或诸如golomb rice码之类的游程码(run length code)来对与每个相干值相关联的量化表索引进行编码。
[0201]
在使用golomb rice码来对相干值的量化索引进行编码的情况下,可以针对tf块移除它们的平均值。
[0202]
可以基于估计golomb rice编码器将使用的比特数量,在用于对用于tf块的子带相干值量化索引进行编码的联合组合索引与golomb rice码之间进行选择。如果这小于联合组合索引的比特,则使用golomb rice编码器来对用于tf块的子带相干值量化索引进行编码。在联合组合索引方法与golomb rice方法之间的选择可以被信令为比特流内的单个比特。
[0203]
进而,码本的索引值可以形成编码的相干值,这些编码的相干值进而在组合器211中与编码的方向值和编码的能量比率进行组合以形成空间音频元数据。
[0204]
关于图7,示出了可用作分析或合成设备的示例电子设备。该设备可以是任何合适的电子设备或装置。例如,在一些实施例中,设备1400是移动设备、用户设备、平板计算机、计算机、音频播放装置等。
[0205]
在一些实施例中,设备1400包括至少一个处理器或中央处理单元1407。处理器1407可被配置为执行诸如本文所描述的方法的各种程序代码。
[0206]
在一些实施例中,设备1400包括存储器1411。在一些实施例中,至少一个处理器1407被耦合到存储器1411。存储器1411可以是任何合适的存储部件。在一些实施例中,存储器1411包括用于存储可在处理器1407上实现的程序代码的程序代码部分。此外,在一些实施例中,存储器1411还可包括用于存储数据(例如,根据本文所描述的实施例的已被处理或将要处理的数据)的存储数据部分。无论何时只要需要,处理器1407就可经由存储器

处理器耦合来获取存储在程序代码部分中的实现程序代码和存储在存储数据部分中的数据。
[0207]
在一些实施例中,设备1400包括用户接口1405。在一些实施例中,用户接口1405可被耦合到处理器1407。在一些实施例中,处理器1407可控制用户接口1405的操作并从用户接口1405接收输入。在一些实施例中,用户接口1405可使得用户能够例如经由键盘将命令输入到设备1400。在一些实施例中,用户接口1405可使得用户能够从设备1400获得信息。例如,用户接口1405可包括被配置为将信息从设备1400显示给用户的显示器。在一些实施例中,用户接口1405可包括触摸屏或触摸界面,其能够使得信息被输入到设备1400并且还向设备1400的用户显示信息。在一些实施例中,用户接口1405可以是用于与如本文所描述的位置确定器通信的用户接口。
[0208]
在一些实施例中,设备1400包括输入/输出端口1409。在一些实施例中,输入/输出端口1409包括收发机。在这种实施例中,收发机可被耦合到处理器1407并且被配置为使得能够例如经由无线通信网络与其他装置或电子设备进行通信。在一些实施例中,收发机或任何合适的收发机或发射机和/或接收机装置可被配置为经由有线或有线耦合与其他电子设备或装置通信。
[0209]
收发机可通过任何合适的已知通信协议与其他装置通信。例如,在一些实施例中,收发机可使用合适的通用移动电信系统(umts)协议、诸如例如ieee 802.x的无线局域网(wlan)协议、诸如蓝牙的合适的短距离射频通信协议、或者红外数据通信路径(irda)。
[0210]
收发机输入/输出端口1409可被配置为接收信号,并且在一些实施例中通过使用执行合适的代码的处理器1407来确定如本文所描述的参数。此外,设备可生成合适的下混合信号和参数输出以发送到合成设备。
[0211]
在一些实施例中,设备1400可被作为合成设备的至少一部分。这样,输入/输出端口1409可被配置为接收下混合信号,并且在一些实施例中接收如本文所描述的在捕获设备或处理设备处确定的参数,以及通过使用执行合适的代码的处理器1407来生成合适的音频信号格式输出。输入/输出端口1409可被耦合到任何合适的音频输出,例如被耦合到多通道扬声器系统和/或耳机或类似物。
[0212]
通常,本发明的各种实施例可以采用硬件或专用电路、软件、逻辑或其任何组合来实现。例如,一些方面可以采用硬件实现,而其他方面可以采用可由控制器、微处理器或其他计算设备执行的固件或软件实现,但是本发明不限于此。虽然本发明的各个方面可被示出并描述为框图、流程图或使用一些其他图示表示来示出或描述,但是应当充分理解,本文所描述的这些框、装置、系统、技术或方法可以作为非限制性的示例采用硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备、或其一些组合来实现。
[0213]
本发明的实施例可由计算机软件、或由硬件、或由软件和硬件的组合来实现,计算机软件是移动设备的数据处理器可执行的,诸如在处理器实体中。此外,在此方面,应当注意附图中的逻辑流程的任何框都可表示程序步骤、或互连的逻辑电路、块和功能、或程序步骤和逻辑电路、块和功能的组合。软件可存储在物理介质上,诸如存储器芯片、或在处理器内实现的存储器块、诸如硬盘或软盘的磁介质、以及诸如dvd及其数据变体、cd的光学介质。
[0214]
存储器可以是适合于本地技术环境的任何类型,并且可使用任何合适的数据存储技术来实现,诸如基于半导体的存储器设备、磁存储器设备和系统、光存储器设备和系统、固定存储器、以及可移动存储器。数据处理器可以是适合于本地技术环境的任何类型,并且作为非限制性示例可包括通用计算机、专用计算机、微处理器、数字信号处理器(dsp)、专用
集成电路(asic)、门级电路、以及基于多核处理器架构的处理器中的一个或多个。
[0215]
本发明的实施例可在诸如集成电路模块的各种组件中实践。集成电路的设计基本上是高度自动化的过程。复杂且功能强大的软件工具可用于将逻辑级设计转换成准备在半导体衬底上蚀刻和形成的半导体电路设计。
[0216]
程序可以使用完善的设计规则以及预先存储的设计模块库在半导体芯片上布线导体和定位元件。一旦完成了对半导体电路的设计,就可以将采用标准化电子格式的设计结果传送到半导体制造设备或“fab”以进行制造。
[0217]
前面的描述已经通过示例性和非限制性示例提供了对本发明的示例实施例的完整且信息丰富的描述。然而,当结合附图和所附权利要求进行阅读时,鉴于前面的描述,各种修改和调整对于相关领域技术人员而言将变得显而易见。然而,对本发明的教导的所有这些和类似的修改仍将落入所附权利要求中限定的本发明的范围内。