一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

空间音频方向参数的量化的制作方法

2022-06-01 19:21:29 来源:中国专利 TAG:


1.本技术涉及用于声场相关参数编码的装置和方法,但不是仅限于音频编码器和解码器的方向相关参数编码。


背景技术:

2.参数空间音频处理是使用一组参数来描述声音的空间方面的音频信号处理领域。例如,在从麦克风阵列进行参数化空间音频捕获时,从麦克风阵列信号估计一组参数是一种典型且有效的选择,该组参数诸如是频带中声音的方向、以及频带中被捕获声音的定向与非定向部分的比率。众所周知,这些参数很好地描述了在麦克风阵列的位置处的被捕获声音的感知空间特性。这些参数可以相应地在空间声音的合成中使用,以用于双耳式耳机、扬声器、或诸如全景环绕声(ambisonic)之类的其他格式。
3.因此,频带中的方向和直接对总能量比(direct-to-total energy ratio)是对空间音频捕获特别有效的参数化。
4.包括频带中的方向参数和频带中的能量比率参数(指示声音的方向性)的参数集也可以被用作用于音频编解码器的空间元数据。例如,这些参数可以从麦克风阵列捕获的音频信号来估计,并且例如可以从麦克风阵列信号生成立体声信号以与空间元数据一起传送。立体声信号例如可以用aac编码器来编码。解码器可以将音频信号解码成pcm信号,并(使用空间元数据)处理频带中的声音以获得空间输出,例如,双耳输出。
5.前述解决方案尤其适合于对来自(例如,移动电话、vr相机、独立麦克风阵列中的)麦克风阵列的捕获空间声音进行编码。然而,可期望这种编码器除了麦克风阵列捕获的信号之外还具有其他输入类型,例如,扬声器信号、音频对象信号、或ambisonic信号。
6.分析一阶ambisonics(foa)输入用于空间元数据提取已经在与定向音频编码(dirac)和谐波平面波展开(harpex)有关的科学文献中进行了详尽的记录。这是因为存在直接提供foa信号(更准确地:其变体,b格式信号)的麦克风阵列,并因此分析这种输入已经成为该领域的研究重点。
7.用于编码器的另一输入也可以是多通道扬声器输入,诸如5.1或7.1通道环绕声输入。
8.然而,关于到编码器的输入音频对象类型,可能存在伴随的元数据,其包括在物理空间内的每个音频对象的定向分量。这些定向分量可以包括音频对象在该空间内的位置的仰角和方位角。


技术实现要素:

9.根据第一方面,提供了一种用于空间音频信号编码的方法,其包括:针对第一帧,获得多个音频方向参数,其中,每个参数包括仰角值和方位角值,并且其中,每个参数具有有序位置;针对先前帧,基于该先前帧的参数仰角值与更先前帧的参数仰角值之间以及该先前帧的参数方位角值与更先前帧的参数方位角值之间的差异,确定多个音频方向参数中
的任何音频方向参数是否被差分编码;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值(differential parameter value);针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值(difference parameter value);量化该音频方向参数与经旋转的导出音频方向参数之间的差异以及该差分参数值;以及针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值。
10.针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值可以包括:针对多个音频方向参数中的每个音频方向参数,导出对应的导出音频方向参数,该对应的导出音频方向参数包括仰角值和方位角值;将每个导出音频方向参数旋转多个音频方向参数中的在第一位置的音频方向参数的方位角值,并量化该旋转,以针对每个导出音频方向参数,确定对应的经量化旋转的导出音频方向参数;以及当与其他经旋转的导出音频方向参数的方位角值相比,音频方向参数的方位角值最接近另一经旋转的导出音频方向参数的方位角值时,将该音频方向参数的有序位置改变为与经旋转的导出音频方向参数的位置一致的另一位置,随后针对多个音频方向参数中的每个音频方向参数,确定每个音频方向参数与其对应的经量化旋转的导出音频方向参数之间的差异。
11.针对多个音频方向参数中的每个多个音频方向参数,导出对应的导出音频方向参数,该对应的导出音频方向参数包括仰角值和方位角值可以包括:导出每个导出音频方向参数的方位角值,每个导出音频方向参数的方位角值与围绕圆的圆周的多个位置中的位置相对应。
12.围绕圆的圆周的多个位置可以沿着以下之一均匀地分布:当由多个音频方向参数的仰角值和方位角值定义的空间利用占据大于半球时,该圆的360度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于半球时,该圆的180度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的四分之一时,该圆的90度;以及当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的阈值角度范围时,该圆的定义度数。
13.围绕圆的圆周的位置的数量可以由所确定的音频方向参数的数量来确定。
14.可以以由多个音频方向参数的仰角值和方位角值定义的空间利用所确定的方式来布置对应的导出音频方向参数。
15.量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值可以包括:针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数的空间范围,确定差异量化分辨率。
16.针对先前帧,确定多个音频方向参数中的任何音频方向参数是否被差分编码可以包括:针对所确定的连续先前帧的数量,确定多个音频方向参数中的任何音频方向参数是否被差分编码。
17.针对在先前帧中没有被差分编码的任何音频方向参数,生成差分参数值可以包括以下中的至少一个:基于确定该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值并且该帧的参数方位角值与先前帧的参数方位角值之间的差异小于
所确定的方位角差异阈值,生成指示符;基于确定该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值并且该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值,生成指示符;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,当该帧的参数方位角值与先前帧的参数方位角值之间的差异小于所确定的方位角差阈值时,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;以及针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,当该帧的参数仰角值与先前帧的参数仰角值之间的差异值小于所确定的仰角差异阈值时,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值。
18.针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值可以基于如果针对该音频方向参数存在经量化的差异和差分参数值两者,则确定哪个需要更少数量的比特要编码,否则是经量化的差异。
19.将每个导出音频方向参数旋转多个音频方向参数中的第一音频方向参数的方位角值可以包括:向每个导出音频方向参数的方位角值添加第一音频方向参数的方位角值,其中,每个导出音频方向参数的仰角值被设置为零。
20.量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值可以包括:标量量化第一音频方向参数的方位角值,并且该方法可以进一步包括:通过分配表示音频方向参数的位置的顺序的索引排列的索引,对在改变之后的音频方向参数的位置进行索引。
21.针对多个音频方向参数中的每个音频方向参数,确定每个音频方向参数与其对应的经量化旋转的导出音频方向参数之间的差异可以进一步包括:针对多个音频方向参数中的每个音频方向参数,至少基于以下操作,确定差异音频方向参数:确定第一个定位的音频方向参数与第一个定位的经旋转的导出音频方向参数之间的差异;和/或确定另一音频方向参数与经旋转的导出音频方向参数之间的差异,其中,该另一音频方向参数的位置没有改变;和/或确定又一音频方向参数与经旋转的导出音频方向参数之间的差异,其中,该又一音频方向参数的位置已经被改变为经旋转的导出音频方向参数的位置。
22.将音频方向参数的位置改变为另一位置可以适用于除了第一个定位的音频方向参数以外的任何音频方向参数。
23.量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值可以包括:将该差异和该差分参数值量化为向量,该向量被索引到码本,该码本包括多个被索引的仰角值和被索引的方位角值。
24.多个被索引的仰角值和被索引的方位角值可以是在以球体的形式布置的网格上的点,其中,该球形网格可以是是通过用更小球体覆盖该球体而形成的,其中,该更小球体定义该球形网格的点。
25.根据第二方面,提供了一种用于空间音频信号解码的方法,其包括:针对第一帧,获得多个编码音频方向参数以及相关联的信令;基于先前获得的帧的编码音频方向参数,确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码;基于相关联的先前获得的帧的编码音频方向参数以及经解码的指示符,对所确定的经差分编码的音频方向
参数进行解码;基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素;以及基于相关联的信令,对经差分解码的定向值和经配置解码的定向值进行重新排序。
26.基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素可以包括:基于相关联的信令内的编码空间利用参数,确定定向值配置;基于相关联的信令内的编码旋转参数,确定旋转角度;对该定向值配置应用该旋转角度以生成经旋转的定向值配置,该经旋转的定向值配置包括第一定向值和第二定向值以及其他定向值;基于经编码的差异值和经编码的空间范围值,确定一个或多个差异值;以及对相应的第二定向值和其他定向值应用该一个或多个差异值,以生成经修改的第二定向值和其他定向值。
27.基于相关联的信令内的编码空间利用参数,确定定向值配置可以包括:导出每个导出音频方向参数的方位角值,每个导出音频方向参数的方位角值与围绕圆的圆周的多个位置中的位置相对应。
28.围绕圆的圆周的多个位置可以沿着以下之一均匀地分布:当由多个音频方向参数的仰角值和方位角值定义的空间利用占据大于半球时,该圆的360度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于半球时,该圆的180度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的四分之一时,该圆的90度;以及当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的阈值角度范围时,该圆的定义度数。
29.该方法可以进一步包括:确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码以及是否缺少先前帧的编码音频方向参数;以及基于至少两个可用先前帧的编码音频方向参数的外推,或者基于其配置被旋转的所确定的定向值配置,确定经差分编码的音频方向的估计,以及确定至少一个定向差异值。
30.根据第三方面,提供了一种用于空间音频信号编码的装置,其包括被配置为执行以下操作的部件:针对第一帧,获得多个音频方向参数,其中,每个参数包括仰角值和方位角值,并且其中,每个参数具有有序位置;针对先前帧,基于该先前帧的参数仰角值与更先前帧的参数仰角值之间以及该先前帧的参数方位角值与更先前帧的参数方位角值之间的差异,确定多个音频方向参数中的任何音频方向参数是否被差分编码;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值;量化该音频方向参数与经旋转的导出音频方向参数之间的差异以及该差分参数值;以及针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值。
31.被配置为针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值的部件可以被配置为:针对多个音频方向参数中的每个音频方向参数,导出对应的导出音频方向参数,该对应的导出音频方向参数包括仰角值和方位角值;将每个导出音频方向参数旋转多个音频方向参数中的在第一位置的音频方向参数的方位角值,并量化该旋转,以针对每个导出音频方向参数,确定
对应的经量化旋转的导出音频方向参数;以及当与其他经旋转的导出音频方向参数的方位角值相比,音频方向参数的方位角值最接近另一经旋转的导出音频方向参数的方位角值时,将该音频方向参数的有序位置改变为与经旋转的导出音频方向参数的位置一致的另一位置,随后针对多个音频方向参数中的每个音频方向参数,确定每个音频方向参数与其对应的经量化旋转的导出音频方向参数之间的差异。
32.被配置为针对多个音频方向参数中的每个多个音频方向参数,导出对应的导出音频方向参数,该对应的导出音频方向参数包括仰角值和方位角值的部件可以被配置为:导出每个导出音频方向参数的方位角值,每个导出音频方向参数的方位角值与围绕圆的圆周的多个位置中的位置相对应。
33.围绕圆的圆周的多个位置可以沿着以下之一均匀地分布:当由多个音频方向参数的仰角值和方位角值定义的空间利用占据大于半球时,该圆的360度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于半球时,该圆的180度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的四分之一时,该圆的90度;以及当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的阈值角度范围时,该圆的定义度数。
34.围绕圆的圆周的位置的数量可以由所确定的音频方向参数的数量来确定。
35.可以以由多个音频方向参数的仰角值和方位角值定义的空间利用所确定的方式来布置对应的导出音频方向参数。
36.被配置为量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值的部件可以被配置为:针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数的空间范围,确定差异量化分辨率。
37.被配置为针对先前帧,确定多个音频方向参数中的任何音频方向参数是否被差分编码的部件可以被配置为:针对所确定的连续先前帧的数量,确定多个音频方向参数中的任何音频方向参数是否被差分编码。
38.针对在先前帧中没有被差分编码的任何音频方向参数,生成差分参数值的部件可以被配置为执行以下中的至少一个:基于确定该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值并且该帧的参数方位角值与先前帧的参数方位角值之间的差异小于所确定的方位角差异阈值,生成指示符;基于确定该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值并且该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值,生成指示符;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,当该帧的参数方位角值与先前帧的参数方位角值之间的差异小于所确定的方位角差阈值时,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;以及针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,当该帧的参数仰角值与先前帧的参数仰角值之间的差异值小于所确定的仰角差异阈值时,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值。
39.被配置为针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值的部件可以基于如果针对该音频方向参数存在经量化的差异和差分参数值两者,
则确定哪个需要更少数量的比特要编码,否则是经量化的差异。
40.被配置为将每个导出音频方向参数旋转多个音频方向参数中的第一音频方向参数的方位角值的部件可以被配置为:向每个导出音频方向参数的方位角值添加第一音频方向参数的方位角值,其中,每个导出音频方向参数的仰角值被设置为零。
41.被配置为量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值的部件可以进一步被配置为:标量量化第一音频方向参数的方位角值,并且上述部件可以进一步被配置为:通过分配表示音频方向参数的位置的顺序的索引排列的索引,对在改变之后的音频方向参数的位置进行索引。
42.被配置为针对多个音频方向参数中的每个音频方向参数,确定每个音频方向参数与其对应的经量化旋转的导出音频方向参数之间的差异的部件可以进一步被配置为:针对多个音频方向参数中的每个音频方向参数,至少基于以下操作,确定差异音频方向参数:确定第一个定位的音频方向参数与第一个定位的经旋转的导出音频方向参数之间的差异;和/或确定另一音频方向参数与经旋转的导出音频方向参数之间的差异,其中,该另一音频方向参数的位置没有改变;和/或确定又一音频方向参数与经旋转的导出音频方向参数之间的差异,其中,该又一音频方向参数的位置已经被改变为经旋转的导出音频方向参数的位置。
43.被配置为将音频方向参数的位置改变为另一位置的部件可以适用于除了第一个定位的音频方向参数以外的任何音频方向参数。
44.被配置为量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值的部件可以被配置为:将该差异和该差分参数值量化为向量,该向量被索引到码本,该码本包括多个被索引的仰角值和被索引的方位角值。
45.多个被索引的仰角值和被索引的方位角值可以是在以球体的形式布置的网格上的点,其中,该球形网格可以是是通过用更小球体覆盖该球体而形成的,其中,该更小球体定义该球形网格的点。
46.上述部件可以进一步被配置为:确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码以及是否缺少先前帧的编码音频方向参数;以及基于至少两个可用先前帧的编码音频方向参数的外推,或者基于其配置被旋转的所确定的定向值配置,确定经差分编码的音频方向的估计,以及确定至少一个定向差异值。
47.根据第四方面,提供了一种用于空间音频信号解码的装置,其包括被配置为执行以下操作的部件:针对第一帧,获得多个编码音频方向参数以及相关联的信令;基于先前获得的帧的编码音频方向参数,确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码;基于相关联的先前获得的帧的编码音频方向参数以及经解码的指示符,对所确定的经差分编码的音频方向参数进行解码;基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素;以及基于相关联的信令,对经差分解码的定向值和经配置解码的定向值进行重新排序。
48.被配置为基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素的部件可以被配置为:基于相关联的信令内的编码空间利用参数,确定定向值配置;基于相关联的信令内的编码旋转参数,确定旋转角度;对该定向值配置应用该旋转角度以生成经旋转的定向值配置,该经旋转的
定向值配置包括第一定向值和第二定向值以及其他定向值;基于经编码的差异值和经编码的空间范围值,确定一个或多个差异值;以及对相应的第二定向值和其他定向值应用该一个或多个差异值,以生成经修改的第二定向值和其他定向值。
49.被配置为基于相关联的信令内的编码空间利用参数,确定定向值配置的部件可以被配置为:导出每个导出音频方向参数的方位角值,每个导出音频方向参数的方位角值与围绕圆的圆周的多个位置中的位置相对应。
50.围绕圆的圆周的多个位置可以沿着以下之一均匀地分布:当由多个音频方向参数的仰角值和方位角值定义的空间利用占据大于半球时,该圆的360度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于半球时,该圆的180度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的四分之一时,该圆的90度;以及当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的阈值角度范围时,该圆的定义度数。
51.根据第五方面,提供了一种装置,其包括至少一个处理器和包括计算机程序代码的至少一个存储器,该至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少:针对第一帧,获得多个音频方向参数,其中,每个参数包括仰角值和方位角值,并且其中,每个参数具有有序位置;针对先前帧,基于该先前帧的参数仰角值与更先前帧的参数仰角值之间以及该先前帧的参数方位角值与更先前帧的参数方位角值之间的差异,确定多个音频方向参数中的任何音频方向参数是否被差分编码;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值;量化该音频方向参数与经旋转的导出音频方向参数之间的差异以及该差分参数值;以及针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值。
52.被使得针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值的该装置可以被使得:针对多个音频方向参数中的每个音频方向参数,导出对应的导出音频方向参数,该对应的导出音频方向参数包括仰角值和方位角值;将每个导出音频方向参数旋转多个音频方向参数中的在第一位置的音频方向参数的方位角值,并量化该旋转,以针对每个导出音频方向参数,确定对应的经量化旋转的导出音频方向参数;以及当与其他经旋转的导出音频方向参数的方位角值相比,音频方向参数的方位角值最接近另一经旋转的导出音频方向参数的方位角值时,将该音频方向参数的有序位置改变为与经旋转的导出音频方向参数的位置一致的另一位置,随后针对多个音频方向参数中的每个音频方向参数,确定每个音频方向参数与其对应的经量化旋转的导出音频方向参数之间的差异。
53.被使得针对多个音频方向参数中的每个多个音频方向参数,导出对应的导出音频方向参数,该对应的导出音频方向参数包括仰角值和方位角值的该装置可以被使得:导出每个导出音频方向参数的方位角值,每个导出音频方向参数的方位角值与围绕圆的圆周的多个位置中的位置相对应。
54.围绕圆的圆周的多个位置可以沿着以下之一均匀地分布:当由多个音频方向参数
的仰角值和方位角值定义的空间利用占据大于半球时,该圆的360度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于半球时,该圆的180度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的四分之一时,该圆的90度;以及当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的阈值角度范围时,该圆的定义度数。
55.围绕圆的圆周的位置的数量可以由所确定的音频方向参数的数量来确定。
56.可以以由多个音频方向参数的仰角值和方位角值定义的空间利用所确定的方式来布置对应的导出音频方向参数。
57.被使得量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值的该装置可以被使得:针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数的空间范围,确定差异量化分辨率。
58.被使得针对先前帧,确定多个音频方向参数中的任何音频方向参数是否被差分编码的该装置可以被使得:针对所确定的连续先前帧的数量,确定多个音频方向参数中的任何音频方向参数是否被差分编码。
59.被使得针对在先前帧中没有被差分编码的任何音频方向参数,生成差分参数值的该装置可以被使得执行以下中的至少一个:基于确定该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值并且该帧的参数方位角值与先前帧的参数方位角值之间的差异小于所确定的方位角差异阈值,生成指示符;基于确定该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值并且该帧的参数仰角值与先前帧的参数仰角值之间的差异小于所确定的仰角差异阈值,生成指示符;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,当该帧的参数方位角值与先前帧的参数方位角值之间的差异小于所确定的方位角差阈值时,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;以及针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,当该帧的参数仰角值与先前帧的参数仰角值之间的差异值小于所确定的仰角差异阈值时,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值。
60.被使得针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值的该装置可以被使得:基于确定哪个需要更少的要编码的比特数量来进行选择,其中,存在针对该音频方向参数的经量化的差异和差分参数值两者,否则存在经量化的差异。
61.被使得将每个导出音频方向参数旋转多个音频方向参数中的第一音频方向参数的方位角值的该装置可以被使得:向每个导出音频方向参数的方位角值添加第一音频方向参数的方位角值,其中,每个导出音频方向参数的仰角值被设置为零。
62.被使得量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值的该装置可以进一步被配置为:标量量化第一音频方向参数的方位角值,并且该部件可以进一步被使得:通过分配表示音频方向参数的位置的顺序的索引排列的索引,对在改变之后的音频方向参数的位置进行索引。
63.被使得针对多个音频方向参数中的每个音频方向参数,确定每个音频方向参数与其对应的经量化旋转的导出音频方向参数之间的差异的该装置可以进一步被使得:针对多
个音频方向参数中的每个音频方向参数,至少基于以下操作,确定差异音频方向参数:确定第一个定位的音频方向参数与第一个定位的经旋转的导出音频方向参数之间的差异;和/或确定另一音频方向参数与经旋转的导出音频方向参数之间的差异,其中,该另一音频方向参数的位置没有改变;和/或确定又一音频方向参数与经旋转的导出音频方向参数之间的差异,其中,该又一音频方向参数的位置已经被改变为经旋转的导出音频方向参数的位置。
64.被使得将音频方向参数的位置改变为另一位置的该装置可以进一步被使得:改变除了第一个定位的音频方向参数以外的任何音频方向参数的位置。
65.被使得量化音频方向参数与经旋转的导出音频方向参数之间的差异以及差分参数值的该装置可以被使得:将该差异和该差分参数值量化为向量,该向量被索引到码本,该码本包括多个被索引的仰角值和被索引的方位角值。
66.多个被索引的仰角值和被索引的方位角值可以是在以球体的形式布置的网格上的点,其中,该球形网格可以是是通过用更小球体覆盖该球体而形成的,其中,该更小球体定义该球形网格的点。
67.该装置可以进一步被使得:确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码以及是否缺少先前帧的编码音频方向参数;以及基于至少两个可用先前帧的编码音频方向参数的外推,或者基于其配置被旋转的所确定的定向值配置,确定经差分编码的音频方向的估计,以及确定至少一个定向差异值。
68.根据第六方面,提供了一种装置,其包括至少一个处理器和包括计算机程序代码的至少一个存储器,该至少一个存储器和计算机程序代码被配置为与至少一个处理器一起使该装置至少:针对第一帧,获得多个编码音频方向参数以及相关联的信令;基于先前获得的帧的编码音频方向参数,确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码;基于相关联的先前获得的帧的编码音频方向参数以及经解码的指示符,对所确定的经差分编码的音频方向参数进行解码;基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素;以及基于相关联的信令,对经差分解码的定向值和经配置解码的定向值进行重新排序。
69.被使得基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素的该装置可以被使得:基于相关联的信令内的编码空间利用参数,确定定向值配置;基于相关联的信令内的编码旋转参数,确定旋转角度;对该定向值配置应用该旋转角度以生成经旋转的定向值配置,该经旋转的定向值配置包括第一定向值和第二定向值以及其他定向值;基于经编码的差异值和经编码的空间范围值,确定一个或多个差异值;以及对相应的第二定向值和其他定向值应用该一个或多个差异值,以生成经修改的第二定向值和其他定向值。
70.被使得基于相关联的信令内的编码空间利用参数,确定定向值配置的该装置可以被使得:导出每个导出音频方向参数的方位角值,每个导出音频方向参数的方位角值与围绕圆的圆周的多个位置中的位置相对应。
71.围绕圆的圆周的多个位置可以沿着以下之一均匀地分布:当由多个音频方向参数的仰角值和方位角值定义的空间利用占据大于半球时,该圆的360度;当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于半球时,该圆的180度;当由多个音频方向
参数的仰角值和方位角值定义的空间利用占据小于球体的四分之一时,该圆的90度;以及当由多个音频方向参数的仰角值和方位角值定义的空间利用占据小于球体的阈值角度范围时,该圆的定义度数。
72.根据第七方面,提供了一种装置,其包括:获得电路,其被配置为针对第一帧,获得多个音频方向参数,其中,每个参数包括仰角值和方位角值,并且其中,每个参数具有有序位置;确定电路,其被配置为针对先前帧,基于该先前帧的参数仰角值与更先前帧的参数仰角值之间以及该先前帧的参数方位角值与更先前帧的参数方位角值之间的差异,确定多个音频方向参数中的任何音频方向参数是否被差分编码;生成电路,其被配置为针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;生成电路,其被配置为针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值;量化电路,其被配置为量化该音频方向参数与经旋转的导出音频方向参数之间的差异以及该差分参数值;以及选择电路,其被配置为针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值。
73.根据第八方面,提供了一种装置,其包括:获得电路,其被配置为针对第一帧,获得多个编码音频方向参数以及相关联的信令;确定电路,其被配置为基于先前获得的帧的编码音频方向参数,确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码;解码电路,其被配置为基于相关联的先前获得的帧的编码音频方向参数以及经解码的指示符,对所确定的经差分编码的音频方向参数进行解码;解码电路,其被配置为基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素;以及重新排序电路,其被配置为基于相关联的信令,对经差分解码的定向值和经配置解码的定向值进行重新排序。
74.根据第九方面,提供了一种包括指令的计算机程序[或包括程序指令的计算机可读介质],这些指令/程序指令用于使装置至少执行以下操作:针对第一帧,获得多个音频方向参数,其中,每个参数包括仰角值和方位角值,并且其中,每个参数具有有序位置;针对先前帧,基于该先前帧的参数仰角值与更先前帧的参数仰角值之间以及该先前帧的参数方位角值与更先前帧的参数方位角值之间的差异,确定多个音频方向参数中的任何音频方向参数是否被差分编码;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值;量化该音频方向参数与经旋转的导出音频方向参数之间的差异以及该差分参数值;以及针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值。
[0075]
根据第十方面,提供了一种包括指令的计算机程序[或包括程序指令的计算机可读介质],这些指令/程序指令用于使装置至少执行以下操作:针对第一帧,获得多个编码音频方向参数以及相关联的信令;基于先前获得的帧的编码音频方向参数,确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码;基于相关联的先前获得的帧的编码音频方向参数以及经解码的指示符,对所确定的经差分编码的音频方向参数进行解码;
基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素;以及基于相关联的信令,对经差分解码的定向值和经配置解码的定向值进行重新排序。
[0076]
根据第十一方面,提供了一种包括程序指令的非暂时性计算机可读介质,这些程序指令用于使装置至少执行以下操作:针对第一帧,获得多个音频方向参数,其中,每个参数包括仰角值和方位角值,并且其中,每个参数具有有序位置;针对先前帧,基于该先前帧的参数仰角值与更先前帧的参数仰角值之间以及该先前帧的参数方位角值与更先前帧的参数方位角值之间的差异,确定多个音频方向参数中的任何音频方向参数是否被差分编码;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值;量化该音频方向参数与经旋转的导出音频方向参数之间的差异以及该差分参数值;以及针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值。
[0077]
根据第十二方面,提供了一种包括程序指令的非暂时性计算机可读介质,这些程序指令用于使装置至少执行以下操作:针对第一帧,获得多个编码音频方向参数以及相关联的信令;基于先前获得的帧的编码音频方向参数,确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码;基于相关联的先前获得的帧的编码音频方向参数以及经解码的指示符,对所确定的经差分编码的音频方向参数进行解码;基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素;以及基于相关联的信令,对经差分解码的定向值和经配置解码的定向值进行重新排序。
[0078]
根据第十三方面,提供了一种装置,其包括:用于针对第一帧,获得多个音频方向参数的部件,其中,每个参数包括仰角值和方位角值,并且其中,每个参数具有有序位置;用于针对先前帧,基于该先前帧的参数仰角值与更先前帧的参数仰角值之间以及该先前帧的参数方位角值与更先前帧的参数方位角值之间的差异,确定多个音频方向参数中的任何音频方向参数是否被差分编码的部件;用于针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值的部件;用于针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值的部件;用于量化该音频方向参数与经旋转的导出音频方向参数之间的差异以及该差分参数值的部件;以及用于针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值的部件。
[0079]
根据第十四方面,提供了一种装置,其包括:用于针对第一帧,获得多个编码音频方向参数以及相关联的信令的部件;用于基于先前获得的帧的编码音频方向参数,确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码的部件;用于基于相关联的先前获得的帧的编码音频方向参数以及经解码的指示符,对所确定的经差分编码的音频方向参数进行解码的部件;用于基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素的部件;以及用于
基于相关联的信令,对经差分解码的定向值和经配置解码的定向值进行重新排序的部件。
[0080]
根据第十五方面,提供了一种包括程序指令的计算机可读介质,这些程序指令用于使装置至少执行以下操作:针对第一帧,获得多个音频方向参数,其中,每个参数包括仰角值和方位角值,并且其中,每个参数具有有序位置;针对先前帧,基于该先前帧的参数仰角值与更先前帧的参数仰角值之间以及该先前帧的参数方位角值与更先前帧的参数方位角值之间的差异,确定多个音频方向参数中的任何音频方向参数是否被差分编码;针对在所考虑的先前帧中没有被差分编码的任何音频方向参数,基于该帧的参数仰角值与先前帧的参数仰角值之间的差异以及该帧的参数方位角值与先前帧的参数方位角值之间的差异,生成差分参数值;针对多个音频方向参数中的每个音频方向参数,基于该音频方向参数与经旋转的导出音频方向参数之间的差异,生成差异参数值;量化该音频方向参数与经旋转的导出音频方向参数之间的差异以及该差分参数值;以及针对多个音频方向参数中的每个音频方向参数,选择经量化的差异或差分参数值。
[0081]
根据第十六方面,提供了一种包括程序指令的计算机可读介质,这些程序指令用于使装置至少执行以下操作:针对第一帧,获得多个编码音频方向参数以及相关联的信令;基于先前获得的帧的编码音频方向参数,确定多个编码音频方向参数中的任何编码音频方向参数是否被差分编码;基于相关联的先前获得的帧的编码音频方向参数以及经解码的指示符,对所确定的经差分编码的音频方向参数进行解码;基于其配置被旋转的所确定的定向值配置,对剩余的编码音频方向参数进行解码,并且至少一个定向差异值修改其至少一个元素;以及基于相关联的信令,对经差分解码的定向值和经配置解码的定向值进行重新排序。
[0082]
一种被存储在介质上的计算机程序产品可以使装置执行本文所述的方法。
[0083]
一种电子设备可以包括如本文所述的装置。
[0084]
一种芯片组可以包括如本文所述的装置。
[0085]
本技术的实施例旨在解决与现有技术相关联的问题。
附图说明
[0086]
为了更好地理解本技术,现在将通过示例的方式参考附图,其中:
[0087]
图1示意性地示出适于实现一些实施例的装置的系统;
[0088]
图2a和图2b示意性地示出根据一些实施例的如图1中所示的音频对象编码器;
[0089]
图3示意性地示出根据一些实施例的如图2b中所示的量化器分辨率确定器;
[0090]
图4示意性地示出根据一些实施例的如图2b中所示的所实现的球形量化器&索引器;
[0091]
图5示意性地示出根据一些实施例的在如图4中所示的球形量化器&索引器和球形去索引器中使用的示例球体位置配置;
[0092]
图6a、图6b和图6c示出根据一些实施例的如图2a和图2b中所示的音频对象编码器的操作的流程图;
[0093]
图7a和图7b示意性地示出根据一些实施例的如图1中所示的音频对象解码器;
[0094]
图8a和图8b示出根据一些实施例的如图7a和图7b中所示的音频对象解码器的操作的流程图;
[0095]
图9示意性地示出适于实现所示装置的示例设备。
具体实施方式
[0096]
下面更详细地描述用于针对多通道输入格式音频信号和输入音频对象提供有效空间分析导出的元数据参数的合适装置和可能机制。在下面的讨论中,将关于多通道麦克风实现来讨论多通道系统。然而,如上所述,输入格式可以是任何合适的输入格式,诸如多通道扬声器、ambisonic(foa/hoa)等。应当理解,在一些实施例中,通道位置是基于麦克风的位置的,或者是基于虚拟位置或方向的。此外,示例系统的输出是多通道扬声器布置。然而,应当理解,该输出可经由除了扬声器以外的手段渲染给用户。此外,多通道扬声器信号可译以被概括为两个或更多个播放音频信号。
[0097]
如前面所讨论的,频带中的空间元数据参数,诸如方向和直接对总能量比(或者扩散比(diffuseness-ratio)、绝对能量(absolute energy)、或指示在给定时频间隔的声音的方向性/非方向性的任何合适表示)参数,特别适合于表示自然声场的感知特性。诸如5.1扬声器混音之类的合成声音场景通常利用音频效果和幅度平移方法,其提供与自然声场中发生的声音不同的空间声音。特别地,5.1或7.1混音可以被配置以使得它包含从多个方向播放的相干声音。例如,通常在正面直接感知的5.1混音的一些声音不是由中央(通道)扬声器产生的,而是例如从左前和右前(通道)扬声器,并且还可能从中央(通道)扬声器相干地产生的。诸如方向和能量比率的空间元数据参数没有准确地表示这种空间相干特征。如此,可以从音频信号的分析中确定诸如相干性(coherence)参数之类的其他元数据参数,以表示通道之间的音频信号关系。
[0098]
除了多通道输入格式音频信号之外,还可能需要编码系统对表示物理空间内的各种声源的音频对象进行编码。无论它是采用元数据的形式还是某些其他机制,每个音频对象都可以伴随有以方位角和仰角值的形式的定向数据,其指示音频对象在物理空间内的位置。
[0099]
如上所述,将音频对象的方向信息合并为元数据的示例是使用所确定的方位角和仰角值。然而,常规的均匀方位角和仰角采样会产生非均匀的方向分布。
[0100]
如本文讨论的实施例中进一步详细讨论的构思,诸如增益和空间范围(spatial extent)之类的对象元数据的其他分量被用于确定用于每个对象的定向信息的量化分辨率。另外,在一些实施例中,为了确保在对象位置中没有跳跃,实现量化以使得量化角度值的时间演化遵循非量化角度值的时间演化。
[0101]
进而,所提出的用于音频对象的方向索引可以与下混合信号(“通道”)一起使用,以定义例如可用于沉浸式语音和音频服务(ivas)编解码器的参数化沉浸式格式。
[0102]
在下文中,还讨论了对这种所索引的方向参数的解码以产生量化方向参数,该量化方向参数可以在基于音频对象声场相关参数化的空间音频合成中使用。
[0103]
关于图1,示出了用于实现本技术的实施例的示例装置和系统。系统100被示出为具有“分析”部分121和“合成”部分131。“分析”部分121是从接收多通道扬声器信号到元数据和下混合信号的编码的部分,而“合成”部分131是从编码的元数据和下混合信号的解码到重新生成信号的呈现(例如,以多通道扬声器的形式)的部分。
[0104]
系统100和“分析”部分121的输入是多通道信号102。在以下示例中描述了麦克风
通道信号输入,然而,在其他实施例中,可以实现任何合适的输入(或合成多通道)格式。
[0105]
多通道信号被传递给下混合器103和分析处理器105。
[0106]
在一些实施例中,下混合器103被配置为接收多通道信号,将这些信号下混合到确定数量的通道,并输出下混合信号104。例如,下混合器103可以被配置为生成多通道信号的2-音频通道下混合。确定数量的通道可以是任何合适数量的通道。在一些实施例中,下混合器103是可选的,并且多通道信号以与此示例中的下混合信号相同的方式未经处理地被传递给编码器107。
[0107]
在一些实施例中,分析处理器105还被配置为接收多通道信号,并分析这些信号以产生与多通道信号相关联并因此与下混合信号104相关联的元数据106。分析处理器105可以被配置为生成元数据,针对每个时频分析间隔,该元数据可以包括方向参数108、能量比率参数110、相干性参数112、以及扩散度(diffuseness)参数114。在一些实施例中,方向、能量比率和扩散度参数可以被认为是空间音频参数。换句话说,空间音频参数包括旨在表征由多通道信号(或者通常是两个或更多个播放音频信号)创建的声场的参数。相干性参数可以被认为是旨在表征多通道信号之间的关系的信号关系音频参数。
[0108]
在一些实施例中,所生成的参数可在频带与频带之间不同。因此,例如,在频带x中,所有参数被生成和发送,而在频带y中,仅其中一个参数被生成和发送,此外,在频带z中,没有参数被生成或发送。这方面的实际示例可以是对于诸如最高频带之类的一些频带,出于感知方面原因而不需要某些参数。下混合信号104和元数据106可以被传递给编码器107。
[0109]
编码器107可以包括ivas立体声核心109,其被配置为接收下混合(或其他)信号104并生成这些音频信号的合适的编码。在一些实施例中,编码器107可以是计算机(运行存储在存储器上和至少一个处理器上的合适的软件),或者可替代地可以是例如使用fpga或asic的特定设备。编码可以使用任何合适的方案来实现。此外,编码器107可以包括被配置为接收元数据并输出编码或压缩形式的信息的元数据编码器或量化器109。另外,在编码器107内还可以有音频对象编码器121,在实施例中,其可以被设置为沿着输入120来编码与多个音频对象相关联的数据(或元数据)。与多个音频对象相关联的数据可以包括至少一部分定向数据。
[0110]
在一些实施例中,在图1中由虚线所示的发送或存储之前,编码器107可以进一步交织、复用到单个数据流或将元数据嵌入编码的下混合信号内。复用可以使用任何合适的方案来实现。
[0111]
在解码器侧,所接收或获取的数据(流)可以由解码器/解复用器133来接收。解码器/解复用器133可以对编码流进行解复用,并将音频编码流传递给被配置为对音频信号进行解码以获得下混合信号的下混合提取器135。类似地,解码器/解复用器133可以包括被配置为接收编码的元数据并生成元数据的元数据提取器137。另外,解码器/解复用器133还可以包括音频对象解码器141,其可以被配置为接收与多个音频对象相关联的编码数据并相应地对这种数据进行解码以产生对应的解码数据140。在一些实施例中,解码器/解复用器133可以是计算机(运行存储在存储器上和在至少一个处理器上的合适的软件),或者可替代地可以是例如使用fpga或asic的特定设备。
[0112]
解码的元数据和下混合音频信号可以被传递给合成处理器139。
[0113]
系统100的“合成”部分131进一步示出了合成处理器139,其被配置为接收下混合和元数据,并基于下混合信号和元数据以任何合适的格式重新创建采用多通道信号110形式的合成空间音频(根据使用实例,其可以是多通道扬声器格式,或者在一些实施例中可以是诸如双耳或ambisonics信号之类的任何合适的输出格式)。
[0114]
在一些实施例中,可能存在附加输入120,该附加输入120可以具体包括与多个音频对象相关联的定向数据。这种用例的一个特定示例是电话会议场景,其中,参与者围绕桌子被定位。每个音频对象可以表示与每个参与者相关联的音频数据。特别地,音频对象可以具有与每个参与者相关联的位置数据。与音频对象相关联的数据在图1中被描述为被传递给音频对象编码器121。在以下示例中,音频对象元数据的编码仅基于附加输入120音频对象信息。在一些实施例中,还可以获得(如虚线所示)由分析处理器105根据任何合适的分析方法确定的音频对象元数据。然而,在本文中不详细描述该音频对象元数据的获得及其使用。
[0115]
因此,在一些实施例中,系统100可以被配置为沿着输入120或从分析处理器105接受具有相关联的元数据的多个音频对象,相关联的元数据是诸如方向(或位置)、空间范围、增益、能量/功率值、能量比率、相干性等。具有相关联的定向数据的音频对象可以被传递给元数据编码器/量化器111,并且在一些实施例中可以被被传递给特定的音频对象编码器121,以用于对元数据进行编码和量化。
[0116]
就此而言,与每个音频对象相关联的定向数据可以依据方位角φ和仰角θ来表示,其中,每个音频对象的方位角值和仰角值指示在任意时间点对象在空间中的位置。方位角和仰角值可以在逐个时间帧的基础上被更新,这并非必须与多通道音频信号所关联的定向元数据参数的时间帧分辨率一致。
[0117]
通常,用于给音频对象编码器121的n个活动输入音频对象的定向信息可以以pq=(θq,φq),q=0:n-1的形式来表示,其中,pq是具有索引q的音频对象的定向信息,其具有包括仰角θ值和方位角φ值的二维向量。
[0118]
如在下文中更详细讨论的构思具体涉及对象的定向信息的编码。元数据的定向信息部分由方位角和仰角组成。还可以对诸如对象距离、增益、空间范围之类的附加或相关联的信息进行编码。定向信息可以被表述为应在每一帧处发送的每个音频对象的角度。在诸如电话会议之类的某些用例中,对象位置可以是恒定的或具有很小的变化,从而使得从比特率的角度来看,帧间差分编码非常有效。此外,该构思还尝试克服差分编码对帧擦除误差的敏感性。
[0119]
在一些实施例中,音频对象方向的编码可以通过使用具有预测条纹限制器(prediction streak limiter)的差分编码(differential encoding)和基于音频对象向量的差异编码(difference encoding)来实现。因此,在一些实施例中,通过计算相对于空间中的预定位置的经旋转的第一级超码向量(rotated first stage super-codevector)的角度差异,可以使用对每个对象的定向信息的联合编码,其中,另外在一些实施例中,该码向量是基于所有音频对象的空间利用,此外还基于使用取决于对象的空间范围的量化分辨率而编码的角度差异。
[0120]
在一些实施例中,差分编码用于可以逐帧地改变的对象的子集。对其使用差分编码的对象的数量还可以取决于可用的总编解码器比特率。
[0121]
在这方面,图2a更详细地描绘了音频对象编码器121的一些功能。
[0122]
在一些实施例中,音频对象编码器121包括音频对象向量生成器/旋转器201。音频对象向量生成器/旋转器201被配置为接收音频对象参数(例如,采用方位角和仰角的方向、空间范围、对象距离,增益等),并由此被配置为生成通用或模板音频对象向量(换句话说,近似于所有音频对象的方向的向量)。另外,该向量进而可以被旋转,以使得该向量的至少一个元素与音频对象之一(通常是第一音频对象)的方向对齐。在一些实施例中,该旋转角度被编码,并成为与将被存储/发送的编码方向相关联的信息的一部分。在一些实施例中,音频对象被重新索引,以使得音频对象之一与经旋转的模板音频对象向量的元素之一之间的差异被最小化。进而,重新索引的排列可以被编码,并也可以成为与编码方向相关联的信息的一部分。进而,经旋转的模板音频对象向量和被重新索引的方向可以被传递给差异确定器/量化器205。
[0123]
在一些实施例中,音频对象编码器121包括向量差异确定器205。向量差异确定器205被配置为确定被重新索引的音频对象方向与相关联的经量化旋转的模板音频对象向量之间的差异,并将其传递给量化器和编码器213。
[0124]
在一些实施例中,音频对象编码器121包括差分对象确定器203。差分对象确定器203被配置为针对帧j,确定n个音频对象没有在帧j-1中使用差分编码进行编码(换句话说,帧j-1中的音频对象使用来自帧j-2的信息进行编码)。在这个示例中,帧限制器被设置为1,但在一些实施例中,预测条纹限制是任何合适的数量。
[0125]
进而,该信息可以被传递给差异确定器/量化器205,并且还可以被传递给差分帧确定器207。
[0126]
在一些实施例中,音频对象编码器121包括差分帧确定器207,其被配置为接收该帧j和先前帧j-1的音频对象方向,并确定帧与帧之间的差异。定向信息的差分确定是在角度域中实现的,而不是针对角度差异实现的。换句话说,所确定的差异是在帧j处的仰角与在帧j-1处的仰角之间并在帧j处的方位角与在帧j-1处的方位角之间。进而,这些可以被传递给量化器和编码器213。
[0127]
在一些实施例中,音频对象编码器121包括量化器和编码器213。在一些实施例中,关于所接收的差分帧确定器207输出,其中,值是方位角和仰角两者的空(null)值差异,量化器和编码器213进而用1比特(或任何合适的指示)单独地对此进行信令传送。换句话说,如果这两个角度在时间上的差异为零,则发送1比特对此进行信令传送。如果帧间差异不为零,则1比特被用于信令,并且使用球形网格或其他合适的差异网格对该差异进行量化。
[0128]
在一些实施例中,量化器和编码器213被配置为基于使用合适的熵编码方案来确定或计算用于差分编码的比特数量(例如,通过使用对所有对象的均值移除golomb rice编码,这些对象包括使用差分编码方法的对象和没有使用差分编码方法的对象)。
[0129]
量化器和编码器213还可以对被重新索引的音频对象方向与相关联的经旋转的模板音频对象向量之间的差异进行量化和编码。
[0130]
进而,这些差异可以被传递给比较器和选择器215。
[0131]
在一些实施例中,音频对象编码器121包括比较器和选择器215。比较器和选择器215可以被配置为:接收基于编码向量差和编码差分帧的编码值;以及比较这些编码值以确定差分编码(de)给出的比特数量是否少于被分配对被重新索引的音频对象方向与相关联
的经旋转的模板音频对象向量之间的差异进行编码的比特。如果差分编码使用更少比特,则该比较器和选择器可以被配置为使用差分编码并进一步使用1比特或其他指示符对此进行信令传送。此外,比较器和选择器215可以被配置为存储此决断即对于帧j,对象i已经使用了de(例如,通过对差分对象确定器203的反馈)。否则,在一些实施例中,输出被重新索引的音频对象方向与相关联的经旋转的模板音频对象向量之间的量化(标量或球形网格量化的)差异的编码版本。进而,(例如,使用1比特来)指示此决断。
[0132]
关于图6a,示出了图示如图2a中所示的音频对象编码器121的操作的示例流程图。
[0133]
如图6a中步骤601所示,第一操作是接收/获得音频对象参数。
[0134]
进而,如图6a中步骤602所示,确定在先前帧(j-1)中哪些对象(i)没有被差分编码。
[0135]
进而,如图6a中步骤603所示,确定、旋转音频对象向量,并确定被重新索引的音频对象方向与相关联的经旋转的模板音频对象向量元素之间的差异。
[0136]
如图6a中步骤604所示,还确定针对所识别的对象i的差分值(基于此帧和先前帧的方向差异)。
[0137]
如图6a中步骤605所示,对差异(被重新索引的音频对象方向和相关联的经旋转的模板音频对象向量元素之间)和帧差分值进行量化。
[0138]
进而,如图6a中步骤607所示,可以对量化值进行编码(使用熵/固定速率编码)。
[0139]
如图6a中步骤609所示,对于除了i之外的对象,该方法被配置为选择是使用熵编码还是固定速率编码以用于经量化旋转的音频对象向量,并对此进行信令传送。
[0140]
如图6a中步骤610所示,对于对象i,该方法进而被配置为选择是使用差分编码参数还是熵编码或固定速率编码以用于经量化旋转的音频对象向量,并对此进行信令传送。
[0141]
关于图2b,示出了音频对象向量生成器/旋转器201、向量差异确定器205以及量化器和编码器(熵/固定速率)213的示例。
[0142]
在一些实施例中,音频对象向量生成器/旋转器201可以包括音频对象参数解复用器(demux)/编码器250。音频对象参数解复用器(demux)/编码器250可以被配置为接收音频对象参数输入120,并从该输入中确定或获得或解复用与音频对象相关的参数。例如,如图2b中所示,音频对象参数解复用器(demux)/编码器250生成或以其他方式获得与每个音频对象相关联的方向、与每个音频对象相关联的空间范围、以及与每个音频对象相关联的能量。在一些实施例中,每个音频对象的空间范围是使用b0比特进行编码的。
[0143]
音频对象向量生成器/旋转器201可以包括空间利用确定器251。空间利用确定器251可以被配置为接收所有音频对象的所有方向,并确定包含所有音频对象的方位角和仰角的范围。基于音频对象的空间的利用可以是在半球内(并识别哪个半球或该半球的中心或中间),是否所有音频对象都在球体的四分之一内(并识别哪个四分之一圆/象限或该四分之一圆/象限的中心或中间)或者识别该范围是否大于(或小于)所定义的范围阈值。在一些实施例中,可以对此确定的结果进行编码(例如,使用1比特来标识哪个半球,2比特来标识哪个四分之一圆/象限等)。因此,在一些实施例中,该信息可以使用b1比特来进行编码。此外,所识别的空间利用可以被传递给音频对象向量生成器202。
[0144]
音频对象向量生成器/旋转器201可以包括音频对象向量生成器252。音频对象向量生成器252被设置为导出用于每个音频对象的合适的初始“模板”方向。在一些实施例中,
可以基于所识别的空间利用来生成用于每个对象的初始“模板”方向(其可以采用向量格式)。例如,在一些实施例中,音频对象向量生成器252被配置为生成具有对应于n个音频对象的n个导出方向的向量。如果所有对象的空间利用是在整个球体上(换句话说,未确定是在半球、四分之一圆或其他确定范围内),则初始“模板”方向可以围绕圆的圆周分布。在特定实施例中,从音频对象方向的角度来看,所导出的方向可以被认为是均匀地分布为围绕单位圆的n个等距点。
[0145]
在一些实施例中,n个导出方向被公开为形成向量结构(被称为向量sp),其中,每个元素对应于针对n个音频对象之一的导出方向。然而,应当理解,向量结构不是必需的要求,并且可以通过将音频对象视为被索引的音频对象(其结构不必是向量形式)的集合来同等地应用以下公开。
[0146]
因此,音频对象向量生成器252可以被配置为导出具有n个二维元素的“模板”导出向量sp,由此,每个元素表示与音频对象相关联的方位角和仰角。进而,可以通过设置每个元素的方位角和仰角值来初始化向量sp(针对整个球体空间利用确定),以使得n个音频对象围绕单位圆均匀地分布。这可以通过初始化向量内的每个音频对象方向元素以具有仰角值“零”和方位角值来实现,其中,q是相关联的音频对象的索引。因此,对于n个音频对象,向量sp可以被写为:
[0147][0148]
换句话说,sp向量可以被初始化,以使得每个音频对象的定向信息被假定为沿着单位圆从方位角值0
°
开始均匀地分布。
[0149]
在空间利用被确定为在半球内的一些实施例中,音频对象向量生成器252可以被配置为导出“模板”导出向量sp(针对半球范围确定),其进而可以通过设置每个元素的方位角和仰角而被初始化,以使得n个音频对象围绕半圆均匀地分布。这可以通过初始化向量内的每个音频对象方向元素以具有仰角值“零”和方位角值的来实现,其中,q是相关联的音频对象的索引。因此,对于n个音频对象,向量sp可以写为:
[0150][0151]
换句话说,sp向量可以被初始化,以使得每个音频对象的定向信息被假定为沿着具有单位半径的半圆从方位角值90
°
开始并延伸到-90
°
均匀地分布。
[0152]
类似地,如果空间利用被确定在四分之一圆内,则音频对象向量生成器252可以被配置为导出“模板”导出向量sp(针对四分之一空间利用确定),其通过设置每个元素的方位角和仰角值而被初始化,以使得n个音频对象围绕四分之一圆均匀地分布。这可以通过初始化向量内的每个音频对象方向元素以具有仰角值“零”和方位角值的来实现,其中,q是相关联的音频对象的索引。因此,对于n个音频对象,向量sp可以写为:
[0153]
[0154]
换句话说,sp向量可以被初始化,以使得每个音频对象的定向信息被假定为沿着具有单位半径的半圆从方位角值45
°
开始并延伸到-45
°
均匀地分布。
[0155]
这可以被扩展到任何合适的限度范围(extent range)。在其中方位角或仰角的限度不同的一些实施例中,可以使用限度中的一个或另一个来定义模板范围。因此,例如,可以存在与仰角相关联的模板。
[0156]
进而,具有包括对应于每个音频对象的导出方向的元素的导出sp向量可以被传递给音频对象编码器121中的第一音频对象方向旋转器253。
[0157]
音频对象向量生成器/旋转器201可以包括第一音频对象方向旋转器253。第一音频对象方向旋转器253被配置为接收导出向量sp以及至少一个音频对象方向。进而,第一音频对象方向旋转器253被配置为从第一音频对象的方向参数中确定旋转角度,该旋转角度用向量元素之一来定向第一音频对象。进而,功能块可以将sp向量内的每个导出方向从第一接收音频对象p0旋转第一分量φ0的方位角值。也就是说,通过添加第一接收音频对象的第一方位角分量φ0的值,可以旋转导出向量sp内的每个导出方向的每个方位角分量。就sp向量而言,此操作导致每个元素具有以下形式:
[0158][0159]
仅就方位角而言:
[0160][0161]
其中,是由给出的经旋转的方位角分量,是经旋转的sp向量。
[0162]
作为此步骤的结果,经旋转的导出向量现在与单位圆上的第一音频对象的方向对齐。
[0163]
通过来自第一接收音频对象p0的第一分量φ0的方位角值对sp向量内的每个导出方向进行类似的旋转。在一些实施例中,来自第一接收音频对象p0的第一分量φ0是最接近所有分量的均值的分量。例如,φ0最接近也就是说,导出向量sp内的每个导出方向的每个方位角分量可以被旋转,以使得这两个模式向量元素的模式或之一与第一分量对齐。因此,例如,除了使用第一对象作为参考之外,还可以尝试其他对象并且可以在量化中产生更精细的分辨率,这允许使用比特来选择参考对象。
[0164]
作为此步骤的结果,经旋转的导出向量具有一个元素,该元素与第一音频对象的方向对齐。进而,在一些实施例中,经旋转的导出向量可以被传递给差异确定器257,并且还可以被传递给音频对象重定位器和索引器255。另外,旋转角度可以被传递给量化器256。
[0165]
音频对象向量生成器/旋转器201可以包括量化器256,其配置为接收旋转角度。量化器256还被配置为量化旋转角度。例如,分辨率为2.5度(也就是说,线性标度上连续的点之间的5度)的线性量化器产生72个线性量化级别。应当注意,导出向量sp在编码器和解码器两者处都是已知的,因为活动对象的数量会被固定为n。如果所有球体空间都被用于该向量,则在一些实施例中,b2=7比特可以用于量化水平空间中的旋转(在一些实施例中,使用
b2=6比特(其中仅使用一个半球),而在仅使用四分之一时使用b2=5比特)。经量化的旋转角度也被传递给差异确定器207。
[0166]
音频对象向量生成器/旋转器201还可以包括音频方向重定位器&索引器255,其被配置为对所接收的音频对象的位置进行重新排序以更接近地与经旋转的导出向量的元素的导出方向对齐。
[0167]
这可以通过对音频对象的位置重新排序以使得每个经重新排序的音频对象的方位角值与经旋转的导出向量中具有最接近方位角值的元素位置对齐来实现。进而,每个音频对象的经重新排序的位置可以被编码为排列索引。此过程可以包括以下算法步骤:
[0168]
1.按照接收的顺序向每个活动音频对象分配索引作为向量,这可以被表示为i=(i0,i1,i2…in-1
)。
[0169]
2.重新布置除了第一索引i0以外的所有索引,以使得如果与音频对象φi相关联的方位角最接近在经旋转的导出向量中所有方位角中的位置j处的方位角则当前在位置i的索引ii被移动到位置j。
[0170]
例如,一个包括四个活动音频对象的示例。sp码向量可以沿着单位圆被均匀地初始化为sp=(0,0;0,90;0,180;0,270)。与这四个音频对象相关联的定向数据:
[0171]
((θ0,φ0);(θ1,φ1);....(θ
n-1

n-1
))
[0172]
可以被接收为:
[0173]
((0,130);(0,210);(0,39);(0,310)
[0174]
其中,第一个φ0被给出为130度。在此特定示例中,向量中经旋转的方位角由(0 130,90 130,180 130,270 130)=(130;220;310;400)=(130,220,310,40)给出。在此示例中,具有方位角210的第二音频对象最接近向量中的第二方位角,具有方位角30的第三音频对象最接近向量中的第四方位角,具有方位角310的第四音频对象最接近向量中的第三方位角。因此,在这种情况下,经重新排序的音频对象索引向量是
[0175]
3.进而,可以根据向量内索引的特定排列来对经重新排序的音频对象索引向量进行索引。向量内索引的每个特定排列可以被分配索引值。然而,应当理解,经重新排序的音频对象索引向量的第一索引位置不是索引排列的一部分,因为向量中的第一元素的索引没有改变。也就是说,第一音频对象始终保持在第一位置,因为这是导出向量sp被朝其旋转的音频对象。因此,经重新排序的音频对象索引向量的索引排列可能有(n-1)!个,这可以在log2((n-1)!)比特的范围内被表示。
[0176]
返回到上述具有4个活动音频对象的系统的示例,仅需要对i3,i1,i2的索引进行索引。对上述示范性示例的经重新排序的音频对象索引向量的可能索引排列的索引可以采取以下形式:
[0177][0178]
因此,综上所述,可以通过量化第一对象的方位角φ0来编码经旋转的导出向量以用于传输。另外,还需要发送经排序的活动音频对象位置的位置。排列索引可以例如使用b3比特来编码,其中,表示音频对象1到n-1的音频方向参数的索引顺序的索引i
ro
可以形成诸如来自编码器121的编码比特流的一部分。
[0179]
在一些实施例中,差异确定器205可以包括向量元素差异确定器257。向量元素差异确定器257被配置为接收经旋转的导出向量经量化的旋转角度、以及经索引的音频对象位置,并确定经旋转的导出向量与每个音频对象的定向数据之间的差异向量。在一些实施例中,定向差异向量可以是具有仰角差异值和方位角差异值的二维向量。在一些实施例中,还相对于经旋转的导出向量与经量化的旋转角度之间的差异来评估方位角差异值。换句话说,该差异考虑了旋转角度的量化以反映经索引的音频位置与经量化的旋转之间的差异,而不是经索引的音频位置与旋转之间的差异。
[0180]
例如,具有定向分量(θi,φi)的音频对象pi的定向差异向量可以被发现为:
[0181][0182]
其中,是经量化的旋转角度。
[0183]
然而,在实践中,δθi可以是θi,因为上述sp码向量的仰角分量可以为零。然而,应当理解,其他实施例可以导出其中仰角分量不为零的向量sp,在这些实施例中,等效的旋转变化可以被应用于导出向量sp的每个元素的仰角分量。也就是说,导出向量sp的每个元素的仰角分量可以被旋转(或被对齐到)第一音频对象的仰角。
[0184]
应当理解,音频对象pi的定向差异是基于经旋转的导出向量的每个元素与对应的经重新排序(或重定位后)的音频对象方向之间的差异而形成的。
[0185]
还应理解,上述描述是依据重定位(或重新布置)音频对象的顺序而得出的,但是上述描述对于仅重定位音频方向参数而不是重定位整个音频对象同样有效。进而,差异向量可以被传递给(球形)量化器&索引器259。
[0186]
在一些实施例中,量化器和编码器213可以包括量化器分辨率确定器258。量化器分辨率确定器258被配置为接收用于编码空间范围(b0)、编码空间利用(b1)、编码排列索引(b3)以及编码差异值(b4)的比特。另外,在一些实施例中,量化器分辨率确定器258被配置为接收音频对象空间范围(音频对象的散布(dispersion))的指示。在一些实施例中,量化
器分辨率确定器258进而被配置为确定被提供给(球形)量化器&索引器259的合适的量化分辨率。
[0187]
关于图3,更详细地示出了示例的量化器分辨率确定器258。在一些实施例中,如图3中所示的量化器分辨率确定器258包括空间范围/能量参数比特分配器301。空间范围/能量参数比特分配器301可以被配置为接收音频对象空间范围值(其描述每个音频对象的空间范围),并确定用于与音频对象相关联的经旋转的向量的元素与音频对象之间的差异的量化的(初始)量化分辨率值。例如,在一些实施例中,当空间范围(对音频对象的“大小”或“范围”的感知)是第一值时,(初始)量化分辨率值可以是第一量化水平,进而当空间范围是第二值时是第二量化水平。在一些实施例中,对于空间范围的更大值,更低的量化分辨率水平被确定为用于角度差异量化。这是因为对于不同的空间范围,定向误差的感知不同,而空间范围从0度(点源)进展到180度(半球源),进而到定向误差以便提高感知。
[0188]
在一些实施例中,该确定可以基于查找表或其他公式,诸如:
[0189]
空间范围用于角度差异值的比特数量01151010920830840750660690512041800
[0190]
上面所示的比特数量可以是基于方位角和仰角量化两者的累积比特数量。该表中的值作为示例给出,并且可以根据编解码器的总比特率(动态地)进行调整。
[0191]
此外,在一些实施例中,空间范围/能量参数比特分配器301可以被配置为基于与音频对象相关联的音频信号(能量/功率/幅度)水平来修改量化水平。因此,例如,量化分辨率可以在信号电平低于所确定阈值的情况下被降低,或者在信号电平高于所确定阈值的情况下被提高。这些所确定阈值可以是静态的或动态的,并且可以与每个音频对象的信号电平有关。在一些实施例中,使用如由用于对象的单声道编解码器给出的信号的能量乘以所考虑的音频对象的增益来估计信号电平。
[0192]
在一些实施例中,空间范围能量参数比特分配器301可以将要使用的比特数量输出到量化器比特管理器303。
[0193]
在一些实施例中,如图3中所示的量化器分辨率确定器258包括量化器比特管理器。该量化器比特管理器被配置为接收用于编码差异值的比特数量(b4)、用于编码排列索引的比特数量(b3)、用于经量化的旋转角度的比特数量(b2)、用于编码空间利用的比特数量(b1)、以及用于编码空间范围的比特数量(b0),并且将这些比特数量与对象元数据的可用比特数量进行比较。
[0194]
当使用的比特数量大于对象元数据的可用比特数量时,可以减少所使用的量化分辨率比特数量。在一些实施例中,可以执行量化分辨率的降低,以使得分辨率从具有更低信号电平(其可以例如通过信号能量乘以增益来确定)的对象开始被逐步地降低(例如)1比特,直到达到元数据的可用比特数量为止。
[0195]
进而,用于量化分辨率的所管理比特值可以被输出到量化器和索引器259。
[0196]
在一些实施例中,量化器和编码器213可以包括(球形)量化器&索引器259。在一些实施例中,(球形)量化器&索引器259还可以接收与每个音频对象相关联的定向差异向量(δθi,δφi),并基于由量化分辨率确定器258提供的量化分辨率,使用合适的量化操作来对这些值进行量化。因此,针对每个对象,计算相对于经旋转的超码向量的分量的定向差异。通过将方位角差异分配给仰角分量并将仰角差异分配给仰角分量,可以在对应于11比特(用于2.5度分辨率)的球形网格中对这些差异进行量化。可替代地,在一些实施例中,可以用用于每个分量的标量量化器来实现差异量化。
[0197]
在图4中更详细地示出了示例(球形)量化器&索引器259,其中,定向差异向量被示出为被传递给球形量化器259。
[0198]
以下部分描述了一种合适的球形量化方案,以用于索引每个音频对象的定向差异向量(δθi,δφi)。
[0199]
在下文中,量化器的输入通常被称为(θ,φ),以便简化命名法,并且因为该方法可以被用于任何仰角方位角对。
[0200]
在一些实施例中,量化器&索引器259包括球体定位器403。该球体定位器被配置为基于来自量化确定器的量化分辨率值来配置球体的布置。所提出的球形网格使用这样的想法:用更小球体来覆盖一球体,并将更小球体的中心视为定义几乎等距方向的网格的点。
[0201]
可以相对于参考位置和参考方向来定义球体。该球体可以被可视化为一系列的圆(或交点),并且对于每个圆交点,在圆的圆周处存在定义数量的(更小)球体。这例如关于图5被示出。例如,图5示出了示例的“极性”参考方向配置,其示出了具有被定义为主球体半径的半径的第一主球体570。在图5中还示出了更小球体(被示出为圆)581、591、593、595、597和599,它们被定位以使得每个更小球体的圆周在一个点接触主球体圆周,并且在至少另一点接触至少另一更小球体圆周。因此,如图5中所示,更小球体581接触主球体570以及更小球体591、593、595、597和599。此外,更小球体581被定位以使得该更小球体的中心位于延伸穿过主球体570中心的 /-90度仰角线(z轴)上。
[0202]
更小球体591、593、595、597和599被定位以使得它们每个都接触主球体570、更小球体581以及另外一对相邻的更小球体。例如,更小球体591另外接触相邻的更小球体599和593,更小球体593另外接触相邻的更小球体591和595,更小球体595另外接触相邻的更小球体593和597,更小球体597另外接触相邻的更小球体599和591,更小球体599另外接触相邻的更小球体597和591。
[0203]
因此,更小球体581关于 90度仰角线定义了圆锥体580或立体角,更小球体591、593、595、597和599关于 90度仰角线定义了另一圆锥体590或立体角,其中,该另一圆锥体的立体角比该圆锥体大。
[0204]
换句话说,更小球体581(其定义了第一球体圆)可以被认为位于第一仰角(具有 90度的更小球体中心)处,更小球体591、593、595、597和599(其定义了第二球体圆)可以被
认为位于相对于主球体的第二仰角(具有《90度的更小球体中心)处并且仰角低于先前的圆。
[0205]
进而,该布置可以用接触位于相对于主球体的其他仰角处的并且具有比先前的圆低的仰角的球体的其他圆来进一步重复。
[0206]
因此,在一些实施例中,球体定位器403被配置为执行以下操作以定义与覆盖球体对应的方向:
[0207]
输入:仰角的角度分辨率,(在理想情况下使得是整数)
[0208]
输出:圆的数量nc、以及在每个圆上的点的数量n(i),i=0,nc-1
[0209][0210]
因此,根据以上内容,圆i上的每个点的仰角由θ(i)中的值给出。对于在赤道上方的每个圆,在赤道(由x-y轴定义的平面)下方存在对应的圆。
[0211]
此外,如上所讨论的,在一个圆上的每个方向点可以以相对于方位角值递增的顺序来索引。每个圆中的第一个点的索引由可从每个圆上的点的数量n(i)推导出的偏移给出。为了获得这些偏移,对于所考虑的圆的顺序,这些偏移被计算为对于给定顺序的圆上累积的点的数量,从值0开始作为第一偏移。
[0212]
换句话说,圆是从“北极”开始向下排列的。
[0213]
在另一实施例中,沿着与赤道平行的圆的点的数量在另一实施例中,沿着与赤道平行的圆的点的数量也可以通过来获得,其中,λi≥1,λi≤λ
i 1

[0214]
换句话说,沿着与赤道平行的圆的球体具有更大的半径,因为它们离北极更远,即,它们离主方向的北极更远。
[0215]
已经确定了多个圆和圆的数量nc、在每个圆上的点的数量n(i),i=0,nc-1以及索引顺序的球体定位器可以被配置为将此信息传递给δea到di转换器405。
[0216]
从(仰角/方位角)(δea)到方向索引(di)和反向的变换过程在以下段落中示出。
[0217]
在一些实施例中,量化器和索引器259包括增量(delta)仰角-方位角到方向索引(δea-di)转换器405。在一些实施例中,增量仰角-方位角到方向索引转换器305被配置为接收差异方向参数输入方向参数输入(δθi,δφi)和球体定位器信息,并通过量化差异方向值来将差异方向(仰角-方位角)值转换为差异方向索引。
[0218]
经量化的差异方向参数索引id=(δθ
iq
,δφ
iq
)可以被输出到熵/固定速率编码器260。
[0219]
在一些实施例中,量化器和编码器213包括熵/固定速率编码器260。熵/固定速率编码器260被配置为接收经量化的差异方向参数索引id=(δθ
iq
,δφ
iq
),并以合适的方式对这些值进行编码。在一些实施例中,对每个对象的经量化的差异方向参数索引id=(δθ
iq
,δθ
iq
)进行熵编码(例如,使用golomb rice均值移除编码),此外还使用固定速率编码。进而,熵/固定速率编码器260可以被配置为确定哪个方法使用更少数量的比特并选择该方法,此外还信令传送该选择以及经编码量化的差异方向参数索引id=(δθ
iq
,δφ
iq
)值。
[0220]
关于图6b和图6c,示出了图示音频对象编码器121关于向量元素差异编码操作的操作的流程图。
[0221]
如图6b中步骤651所示,第一操作可以是接收/获得音频对象参数(例如,方向、空间范围以及能量)。
[0222]
进而,如图6b中步骤653所示,可以对音频对象的空间范围进行编码(b0比特)。
[0223]
进而,如图6b中步骤655所示,可以确定空间利用。
[0224]
进而,如图6b中步骤657所示,可以对空间利用进行编码(b1比特)。
[0225]
进而,如图6b中步骤659所示,可以基于空间利用来确定音频对象向量。
[0226]
进而,如图6b中步骤661所示,可以基于第一音频对象方向来旋转音频对象向量。
[0227]
进而,如图6b中步骤663所示,可以量化旋转角度。
[0228]
进而,如图6b中步骤665所示,可以对经量化的旋转角度进行编码(b2比特)。
[0229]
如图6b中步骤667所示,在音频对象向量的旋转之后,音频对象的位置可以被布置成具有这样的顺序:以使得音频对象的经布置方位角值对应于最接近导出方向的方位角值。
[0230]
如图6b中步骤669所示,可以对经重新定位的音频对象进行索引,并且可以对索引的排列进行编码(b3比特)。
[0231]
进而,如图6b中步骤671所示,可以形成每个经重新定位的音频方向参数与对应的经旋转的导出方向参数(考虑到旋转角度的量化)之间的定向差异。
[0232]
进而,如图6c中步骤673所示,可以基于音频对象参数(空间范围、能量)和使用比特/可用比特的比较来确定量化分辨率。
[0233]
进而,如图6c中步骤675所示,可以对每个经重新定位的音频方向参数与对应的经旋转的导出方向参数之间的定向差异进行量化。
[0234]
进而,如图6c中步骤677所示,可以使用合适的编码来对经量化的定向差异进行编码,例如,使用熵编码或固定速率编码,其中,选择是基于所使用的比特/所使用的比特数量是否大于比特预算(b4比特)。
[0235]
进而,该方法可以输出编码空间范围(b0)、所有音频对象的编码范围(encoded extent)(b1)、经量化的旋转角度(b2)、编码排列索引(b3)、以及编码差异值(b4)。
[0236]
因此,示例的编码算法可以被总结为:
[0237]
1.使用b0比特来对空间范围进行编码。
[0238]
2.如果对象位于整个空间中,或者仅位于一个半球中,或者可仅在该空间的四分之一中,则检查空间利用。用b1=1或2比特来编码此信息。
[0239]
3.计算超码向量旋转,以使得量化被最小化。
[0240]
4.根据超码向量的选择,用若干比特来量化旋转角度(如果使用了所有空间,则在水平空间中使用b2=7比特以用于旋转,如果仅只使用了一个半球,则使用b2=6比特)。
[0241]
5.对与最后n-1个对象的顺序对应的排列进行编码。
[0242]
6.用b3比特将旋转角度与排列索引联合地进行编码。
[0243]
7.对于所有活动对象,计算相对于经旋转的超码向量的分量的方向差异(仰角和方位角)。
[0244]
8.针对表1中给出的每个对象i,基于每个对象的空间范围值,将要用于这些差异的比特数量设置为b4_i。
[0245]
9.如果b1 b3 b4 1 b0》用于对象元数据的可用比特数量
[0246]
a.从具有更低信号电平(信号能量乘以增益)的对象开始,进一步将比特数量b4_i逐步地减少(例如)1比特,直到达到元数据的可用比特数量为止
[0247]
10.结束
[0248]
11.找到最大的k个对象“i”,其在“j-1”帧处没有使用差分编码并且其相对于先前帧的差异小于阈值。
[0249]
12.使用标量量化器或球形网格量化器来量化对象“i”的帧间角度差异。
[0250]
13.使用标量量化器或球形网格量化器来量化所有对象的角度差异。
[0251]
14.从点5开始对排列和排列索引进行更新以仅反映没有在使用de的对象,以及当对象“i”在使用de时估计均值移除gr编码比特“bits_de”。
[0252]
15.在没有使用de时估计均值移除gr编码比特“bits”。
[0253]
16.如果bits_de《bits
[0254]
a.使用de
[0255]
b.添加1比特以信令传送
[0256]
c.存储这样的事实:对于帧“j”,对象“i”已经使用了de(基于在先前帧的de使用而被允许使用de的那些对象中的对象)
[0257]
d.从点5开始对排列和排列索引进行更新以仅反映没有在使用de的对象
[0258]
17.否则
[0259]
a.使用标量量化器或球形网格量化器
[0260]
b.发送1比特以信令传送
[0261]
c.存储这样的事实:对于帧“j”,对象“i”没有使用de
[0262]
18.结束
[0263]
19.如果由熵编码产生的比特数量大于b4
[0264]
a.使用b4_i比特对这些差异进行固定速率编码(使用标量量化器或球形网格量化器)并添加1比特以用于信令传送
[0265]
b.存储这样的事实:没有使用de(对于每个对象no_de)
[0266]
20.否则
[0267]
a.使用熵编码,并添加1比特以用于信令传送
[0268]
21.结束
[0269]
原则上,空间范围主要与水平方向有关,而在垂直方向上被更少感知。如果定义并发送垂直和水平空间范围两者,则可以针对方位角和仰角分别调整差异的角度分辨率。
[0270]
在更低的整体比特率的情况下,可以同时使用de的最大对象数量更高。例如,以在以下范围内的比特率:24.4kbps,k=4,32kbps,k=3;48kbps,k=2,以及更高的比特率,k=1,直到de不被允许的最大比特率为止。
[0271]
关于图7a,示出了如图1中所示的音频对象解码器141。可以看出音频对象解码器141可以被设置为从编码比特流接收编码空间范围(b0),所有音频对象的编码范围(b1)、经量化的旋转角度(b2)、编码排列索引(b3)、以及编码差异值(b4)。
[0272]
在一些实施例中,音频对象解码器141包括差分对象确定器701。差分对象确定器701被配置为确定已经使用差分编码(换句话说,逐帧地编码)而被编码的任何对象。在已确定哪些对象被差分编码后,这可以被信令传送到差分解码器703和音频对象向量解码器705以及组合器707。
[0273]
在一些实施例中,音频对象解码器141包括音频对象向量解码器705。音频对象向量解码器705被配置为接收编码音频对象参数,并对这些音频对象参数进行解码,具体而言是已经使用向量差异方法而被编码的音频对象方向。音频对象向量解码器705的输出被配置为将这些音频对象方向输出到组合器707。
[0274]
在一些实施例中,音频对象解码器141包括差分解码器703。差分解码器703被配置为接收编码音频对象参数,并对这些音频对象参数进行解码,具体而言是已经使用帧差分编码方法而被编码的音频对象方向。差分解码器703的输出被配置为将这些音频对象方向输出到组合器707。
[0275]
在一些实施例中,音频对象解码器141包括组合器707,组合器707被配置为接收经解码的音频对象,其进而可以在被输出为经解码的音频对象方向之前被组合。
[0276]
此外,在一些实施例中,组合器707可以被配置为处理差错恢复(error resilience)。因此,例如,当帧丢失时,在一些实施例中,组合器707被配置为使用先前帧的值。然而,在其中组合器确定针对最后m帧已经估计对象的恒定或近似恒定的速度的一些实施例中,可以使用所估计的速度和先前帧的对象位置来计算所恢复的位置。当在帧丢失之后恢复已使用差分编码的帧的定向信息时,可以应用相同的恢复机制。
[0277]
这例如可以被总结为:
[0278]
1.如果先前帧丢失并且当前对象已使用de被编码
[0279]
a.如果针对最后m帧而检测到(近似)恒定的速度
[0280]
i.基于语音和先前帧的位置来估计位置。已经使用相同的想法来估计该对象的先
前帧的位置(换句话说,可用先前帧的位置的外推)
[0281]
b.否则
[0282]
i.基于经旋转的超码向量分量来进行估计
[0283]
c.否则
[0284]
2.否则
[0285]
a.正常进行解码
[0286]
3.结束
[0287]
关于图8a,示出了图7a中所示的解码器的操作。
[0288]
如图8a中步骤801所示,该方法可以进一步包括:接收/获得编码音频对象参数 信令。
[0289]
如图8a中步骤802所示,另一操作是确定哪些对象被差分编码。
[0290]
进而,如图8a中步骤804所示,可以对被差分编码的对象进行差分解码。
[0291]
如图8a中步骤803所示,没有被差分编码的对象可以是音频对象向量解码。
[0292]
进而,如图8a中步骤805所示,可以组合经解码的对象(并重新生成丢失的帧信息)。
[0293]
关于图7b,从向量解码过程的角度更详细地描述音频对象解码器141。在一些实施例中,音频对象解码器141包括去量化器755。去量化器755被配置为接收经量化/编码的旋转角度,并生成被传递给音频方向旋转器753的旋转角度。
[0294]
在一些实施例中,音频对象解码器141包括音频方向导出器751。音频对象解码器141可以包括具有与在编码器121处的音频对象向量生成器相同的功能的音频方向导出器751。换句话说,音频方向导出器751可以被设置为以与在编码器处执行的相同的方式形成并初始化sp向量。也就是说,sp向量的每个导出音频方向分量是在以下前提下形成的:音频对象的定向信息可以被初始化为沿着单位圆的圆周从方位角值0
°
开始均匀地分布的一系列点。进而,包含导出音频方向的sp向量可以被传递给音频方向旋转器753。因此,音频方向导出器751被配置为接收所有音频对象(b1)的编码范围,并由此以与如编码器中所描述的相同的方式确定“模板”或导出方向向量。进而,向量sp可以被传递到音频方向旋转器753。
[0295]
在一些实施例中,音频对象解码器141包括音频方向旋转器753。音频方向旋转器753被配置为接收(sp)音频方向向量和经量化的旋转角度,并旋转这些音频方向以生成可以被传递给加法器757的经旋转的音频方向向量。
[0296]
在一些实施例中,音频对象解码器141包括(球形)去索引器761。(球形)去索引器761被配置为接收编码差异值,并通过应用合适的解码和去索引来生成经解码的差异值。进而,经解码的差异值可以被传递给加法器757。
[0297]
在一些实施例中,音频对象解码器141包括加法器757。加法器757被配置为接收经解码的差异值和经旋转的向量以生成被传递给音频方向重定位器和去索引器759的一系列对象方向。例如,通过针对每个音频对象pqq=0:n-1,将经量化的定向向量(δθ
′q,δφ
′q)与对应的经旋转的导出音频方向(来自经去量化旋转的导出音频方向“模板”向量相加来针对每个音频对象形成经量化的定向向量。这可以被表示为:
[0298][0299]
对于其中仅针对方位角值产生旋转的那些实施例,即对于“模板”码向量sp的每个元素,仰角分量为0,上述等式简化为:
[0300][0301]
在一些实施例中,音频对象解码器141包括音频方向重定位器和去索引器759。音频方向重定位器和去索引器759被配置为接收来自加法器757的对象方向以及编码排列索引,并由此输出经重新排序的音频对象方向向量,其进而可以被输出。换句话说,在一些实施例中,音频方向去索引器和重定位器709可以被配置为对索引i
ro
进行解码以便找到经重新排序的音频方向的特定索引排列。进而,音频方向去索引器和重定位器759可以使用此索引排列将音频方向参数重新排序回到其原始顺序,如第一次呈现给音频对象编码器121的那样。因此,来自音频方向去索引器和重定位器759的输出可以是与n个音频对象相关联的经排序的量化音频方向。进而,这些经排序的量化音频参数可以形成经解码的多音频对象流140的一部分。
[0302]
与图7b相关联的是图8b,其描述了音频对象解码器141的处理步骤。
[0303]
(基于以与编码器类似的方式而确定的量化分辨率)对每个经重新定位的音频方向参数与对应的经旋转的导出方向参数之间的定向差异进行去量化的步骤被描绘为如图8b中的处理步骤801。
[0304]
对第一音频对象的方位角值进行去量化的步骤被示出为如图8b中的处理步骤853。
[0305]
参考图8b,初始化与每个音频对象相关联的导出方向的步骤被示出为处理步骤855。
[0306]
参考图8b,处理步骤857表示将每个导出方向旋转经去量化的第一音频对象的方位角值。
[0307]
处理步骤即针对每个音频对象p
q q=0:n-1将经量化的定向向量(δθ
′q,δφ
′q)与对应的经旋转的导出音频方向相加的处理步骤被示出为如图8b中的步骤859。
[0308]
对除了第一音频对象方向参数以外的所有音频对象方向参数的位置进行去索引的步骤被示出为如图8b中的处理步骤861。
[0309]
布置音频对象方向参数的位置以使其具有如在编码器处接收的原始顺序的步骤被示出为如图8b中的处理步骤863。
[0310]
关于图9,示出了可用作分析或合成设备的示例电子设备。该设备可以是任何合适的电子设备或装置。例如,在一些实施例中,设备1400是移动设备、用户设备、平板计算机、计算机、音频播放装置等。
[0311]
在一些实施例中,设备1400包括至少一个处理器或中央处理单元1407。处理器1407可被配置为执行诸如本文所描述的方法的各种程序代码。
[0312]
在一些实施例中,设备1400包括存储器1411。在一些实施例中,至少一个处理器1407被耦接到存储器1411。存储器1411可以是任何合适的存储部件。在一些实施例中,存储器1411包括用于存储可在处理器1407上实现的程序代码的程序代码部分。此外,在一些实
施例中,存储器1411还可包括用于存储数据(例如,根据本文所描述的实施例的已被处理或将要处理的数据)的存储数据部分。无论何时只要需要,处理器1407就可经由存储器-处理器耦接来获取存储在程序代码部分中的实现程序代码和存储在存储数据部分中的数据。
[0313]
在一些实施例中,设备1400包括用户接口1405。在一些实施例中,用户接口1405可被耦接到处理器1407。在一些实施例中,处理器1407可控制用户接口1405的操作并从用户接口1405接收输入。在一些实施例中,用户接口1405可使得用户能够例如经由键盘将命令输入到设备1400。在一些实施例中,用户接口1405可使得用户能够从设备1400获得信息。例如,用户接口1405可包括被配置为将信息从设备1400显示给用户的显示器。在一些实施例中,用户接口1405可包括触摸屏或触摸界面,其能够使得信息被输入到设备1400并且还向设备1400的用户显示信息。在一些实施例中,用户接口1405可以是用于与如本文所描述的位置确定器通信的用户接口。
[0314]
在一些实施例中,设备1400包括输入/输出端口1409。在一些实施例中,输入/输出端口1409包括收发机。在这种实施例中,收发机可被耦接到处理器1407并且被配置为使得能够例如经由无线通信网络与其他装置或电子设备进行通信。在一些实施例中,收发机或任何合适的收发机或发射机和/或接收机装置可被配置为经由有线或有线耦接与其他电子设备或装置通信。
[0315]
收发机可通过任何合适的已知通信协议与其他装置通信。例如,在一些实施例中,收发机或收发机部件可使用合适的通用移动电信系统(umts)协议、诸如例如ieee 802.x的无线局域网(wlan)协议、诸如蓝牙的合适的短距离射频通信协议、或者红外数据通信路径(irda)。
[0316]
收发机输入/输出端口1409可被配置为接收信号,并且在一些实施例中通过使用执行合适的代码的处理器1407来确定如本文所描述的参数。此外,设备可生成合适的下混合信号和参数输出以发送到合成设备。
[0317]
在一些实施例中,设备1400可被作为合成设备的至少一部分。这样,输入/输出端口1409可被配置为接收信号,并且在一些实施例中接收如本文所描述的在捕获设备或处理设备处确定的参数,以及通过使用执行合适的代码的处理器1407来生成合适的音频信号格式输出。输入/输出端口1409可被耦接到任何合适的音频输出,例如被耦接到多通道扬声器系统和/或耳机或类似物。
[0318]
通常,本发明的各种实施例可以采用硬件或专用电路、软件、逻辑或其任何组合来实现。例如,一些方面可以采用硬件来实现,而其他方面可以采用可由控制器、微处理器或其他计算设备执行的固件或软件来实现,但是本发明不限于此。尽管本发明的各个方面可以被图示和描述为框图、流程图或使用一些其他图形表示,但是众所周知地,本文所描述的这些框、装置、系统、技术或方法可以作为非限制示例采用硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备或其某种组合来实现。
[0319]
本发明的实施例可以通过可由移动设备的数据处理器(诸如在处理器实体中)执行的计算机软件来实现,或者由硬件、或者由软件和硬件的组合来执行。此外,就此而言,应当注意,如附图中的逻辑流程的任何块可以表示程序步骤、或者互连的逻辑电路、块和功能、或者程序步骤和逻辑电路、块和功能的组合。该软件可以被存储在诸如存储器芯片或在处理器内实现的存储器块之类的物理介质上,诸如硬盘或软盘之类的磁性介质上、以及诸
如dvd及其数据变体cd之类的光学介质上。
[0320]
存储器可以是适合于本地技术环境的任何类型,并且可以使用任何适当的数据存储技术来实现,诸如基于半导体的存储器设备、磁存储器设备和系统、光学存储器设备和系统、固定存储器和可移除存储器。数据处理器可以是适合于本地技术环境的任何类型,并且作为非限制性示例,可以包括通用计算机、专用计算机、微处理器、数字信号处理器(dsp)、专用集成电路(asic)、基于多核处理器架构的门级电路和处理器中的一个或多个。
[0321]
可以在诸如集成电路模块之类的各种组件中实践本发明的实施例。集成电路的设计总体上是高度自动化的过程。复杂而功能强大的软件工具可用于将逻辑级设计转换为准备在半导体衬底上蚀刻和形成的半导体电路设计。
[0322]
程序可以使用完善的设计规则以及预先存储的设计模块库来自动对导体进行布线并将组件定位在半导体芯片上。一旦完成了半导体电路的设计,就可以将标准化电子格式(例如,opus、gdsii等)的所得设计传送到半导体制造设施或“fab”进行制造。
[0323]
前面的描述已经通过示例性和非限制性示例提供了本发明的示例性实施例的完整和有益的描述。然而,当结合附图和所附权利要求书阅读时,鉴于以上描述,各种修改和改编对于相关领域的技术人员而言将变得显而易见。然而,本发明的教导的所有这些和类似的修改仍将落入所附权利要求书所限定的本发明的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献