CN116982108A - 空间音频参数编码和相关联解码的确定 - Google Patents
空间音频参数编码和相关联解码的确定 Download PDFInfo
- Publication number
- CN116982108A CN116982108A CN202180095975.5A CN202180095975A CN116982108A CN 116982108 A CN116982108 A CN 116982108A CN 202180095975 A CN202180095975 A CN 202180095975A CN 116982108 A CN116982108 A CN 116982108A
- Authority
- CN
- China
- Prior art keywords
- subband
- value
- encoding
- direction value
- bits
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005236 sound signal Effects 0.000 claims abstract description 102
- 238000000034 method Methods 0.000 claims description 44
- 238000013139 quantization Methods 0.000 claims description 44
- 230000011664 signaling Effects 0.000 claims description 14
- 230000001419 dependent effect Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 description 24
- 238000004458 analytical method Methods 0.000 description 22
- 230000015572 biosynthetic process Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 9
- 238000003786 synthesis reaction Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000009467 reduction Effects 0.000 description 5
- 230000001174 ascending effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012732 spatial analysis Methods 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/002—Dynamic bit allocation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
- G10L19/035—Scalar quantisation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/21—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being power information
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0204—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
Abstract
一种设备,包括用于以下的部件:获得表示音频信号的参数的值,所述值包括音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于惩罚值选择子带;以及针对所选择的子带,对每个子带的至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的编码的任何比特分配至子带的后续选择。
Description
技术领域
本申请涉及用于声场相关参数编码的设备和方法,但不仅用于音频编码器和解码器的时频域方向相关参数编码。
背景技术
参数空间音频处理是使用参数集来描述声音的空间方面的音频信号处理领域。例如,在来自麦克风阵列的参数空间音频捕捉中,从麦克风阵列信号估计参数集是典型且有效的选择,所述参数集诸如频带中的声音方向以及捕捉到的频带中的声音的定向与非定向部分之间的比率。已知这些参数很好地描述了在麦克风阵列位置处捕捉到的声音的感知空间属性。因此,这些参数可以用于针对双耳耳机、扬声器或其它格式的空间声音的合成,诸如立体混响(Ambisonics)。
因此,频带中的方向和直接与总能量比是对于空间音频捕捉特别有效的参数化。
由频带中的方向参数和频带中的能量比参数(指示声音的方向性)组成的参数集也可以用作音频编解码器的空间元数据(还可包含其它参数,诸如相干性、扩展相干性、方向数量、距离等)。例如,可以根据麦克风阵列捕捉到的音频信号来估计这些参数,并且例如,可以根据麦克风阵列信号来生成立体声信号,以与空间元数据一起传达。立体声信号可以用例如AAC编码器编码。解码器可以将音频信号解码成PCM信号,并且(使用空间元数据)处理频带中的声音以获得空间输出,例如双耳输出。
上述解决方案特别适合于对捕捉到的来自麦克风阵列(例如移动电话、VR相机、独立麦克风阵列中)的空间声音进行编码。然而,除了麦克风阵列捕捉到的信号,可能期望此类编码器还具有其它输入类型,例如扬声器信号、音频对象信号或立体混响信号。
针对空间元数据提取分析一阶立体混响(FOA)输入已经在涉及定向音频代码化(DirAC)和谐波平面波扩展(Harpex)的科学文献中充分地被记载。这是因为存在直接提供FOA信号(更准确地说:FOA信号的变体,B格式信号)的麦克风阵列,因此分析这种输入已经是本领域的研究点。
编码器的另一输入也是多声道扬声器输入,诸如5.1或7.1声道环绕输入。
然而,对于每个考虑的时频子带,关于元数据的方向分量。其可以包括所得方向的仰角、方位角(以及诸如能量比的其他参数)。这些方向分量的量化是当前的研究课题。
发明内容
根据第一方面提供了一种设备,包括用于以下的部件:获得表示音频信号的参数的值,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;以及针对所选择的子带,对每个子带的所述至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择。
用于确定每个子带的惩罚值的所述部件可以用于:基于所述至少一个能量比值,为所述子带确定用于对所述帧的方向值进行编码的初始比特分派;为所述子带确定用于对所述帧的所述方向值进行编码的第二比特分派,所述第二比特分派是基于用于对所述音频信号的帧的所述值进行编码的可用比特数量以及用在对所述音频信号的帧的所述能量比值进行编码中的比特数量;确定用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的所述方向值进行编码的所述第二比特分派之间的差。
用于确定每个子带的惩罚值的所述部件可以用于:获得与用于对所述帧的所述方向值进行编码的比特分派相关联的主观可感知性误差度量;以及基于所获得的可感知性误差度量来确定惩罚值。
用于确定每个子带的惩罚值的所述部件可以用于:基于相应子带的方向值来确定每个子带的加权因子;并且基于所确定的加权因子来确定每个子带的所述惩罚值。
用于基于所述惩罚值来选择子带的所述部件可以用于基于相对于用于对所述方向值进行编码的所述初始比特分派的、用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的所述方向值进行编码的所述第二比特分派之间的所述差,对所述子带进行排序;并且基于所述子带的所述排序,以所述逐个子带为基础选择所述子带。
被分派用于为所选择的子带编码至少一个方向值的所述比特可以是基于用于对所述帧的方向值进行编码的所述第二比特分派、以及任何先前选择的子带分配。
用于基于所述惩罚值来选择子带的所述部件可以用于选择具有最低惩罚值的未编码子带。
用于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码中的任何比特分配至子带的后续选择的所述部件可以用于向尚未选择的具有最高惩罚值的子带分配被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特。
所述部件还可以用于基于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的编码的任何比特分配至子带涉外后续选择,重新确定每个尚未选择的子带的惩罚值。
所述部件还可以用于对所述帧的所述至少一个能量比值进行编码。
用于对所述帧的所述至少一个能量比值进行编码的所述部件可以用于生成所述至少一个能量比值的加权平均值;以及对所述至少一个能量比值的所述加权平均值进行编码。
用于对所述至少一个能量比值的所述加权平均值进行编码的所述部件还可以用于对所述至少一个能量比值的至少一个加权平均值进行标量非均匀量化。
用于针对所选择的子带对每个子带的所述至少一个方向值进行编码的所述部件还可以用于:基于量化网格来确定对所选择的子带的所述至少一个方向值进行编码所需的第一比特数量;确定对所选择的子带的所述至少一个方向值进行熵编码所需的第二比特数量;基于来自所述第一数量和所述第二数量的所使用的较低比特数量,选择所述量化网格编码或熵编码;以及生成标识对所述量化网格编码或熵编码的所述选择的信令比特。
所述熵编码可以是Golomb Rice编码。
所述部件还可以用于:存储和/或传输所编码的至少一个方向值。
根据第二方面提供一种设备,包括用于以下操作的部件:获得表示音频信号的参数的编码值,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量。
用于确定每个子带的惩罚值的所述部件可以用于:基于所述至少一个能量比值,为所述子带确定用于对所述帧的方向值进行编码的初始比特分派;为所述子带确定用于对所述帧的方向值进行编码的第二比特分派,所述第二比特分派是基于用于对所述音频信号的帧的所述方向值进行编码的可用比特数量以及用于对所述音频信号的帧的所述能量比值进行编码的比特数量;以及确定用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的方向值进行编码的所述第二比特分派之间的差。
用于确定每个子带的惩罚值的所述部件可以用于:获得与用于对所述帧的所述方向值进行编码的比特分派相关联的主观可感知性误差度量;以及基于所获得的可感知性误差度量来确定惩罚值。
用于确定每个子带的惩罚值的所述部件可以用于:基于相应子带的方向值来确定每个子带的加权因子;以及基于所确定的加权因子来确定每个子带的所述惩罚值。
用于基于所述惩罚值来选择子带的所述部件可以用于:基于相对于用于对所述方向值进行编码的所述初始比特分派的、用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的方向值进行编码的所述第二比特分派之间的所述差,对所述子带进行排序;并且基于所述子带的所述排序,以所述逐个子带为基础选择所述子带。
被分派用于为所选择的子带编码至少一个方向值的所述比特可以是基于用于对所述帧的方向值进行编码的所述第二比特分派、以及任何先前选择的子带分配。
用于基于所述惩罚值来选择子带的所述部件可以用于选择具有最低惩罚值的编码子带。
用于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择的所述部件可以用于向尚未选择的具有最高惩罚值的子带分配被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特。
所述部件还可以用于基于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择,重新确定每个尚未选择的子带的惩罚值。
所述部件还可以用于对所述帧的所述至少一个能量比值进行解码。
用于针对所选择的子带对每个子带的所述至少一个方向值进行解码的所述部件还可以用于:确定信令比特;以及基于所述信令比特来选择量化网格解码或熵解码。
所述熵解码可以是Golomb Rice解码。
根据第三方面提供了一种方法,包括:获得表示音频信号的参数的值,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;以及针对所选择的子带,对每个子带的所述至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择。
确定每个子带的惩罚值可以包括:基于所述至少一个能量比值,为所述子带确定用于对所述帧的方向值进行编码的初始比特分派;为所述子带确定用于对所述帧的所述方向值进行编码的第二比特分派,所述第二比特分派是基于用于对所述音频信号的帧的所述值进行编码的可用比特数量以及用在对所述音频信号的帧的所述能量比值进行编码中的比特数量;确定用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的所述方向值进行编码的所述第二比特分派之间的差。
确定每个子带的惩罚值可以包括:获得与用于对所述帧的所述方向值进行编码的比特分派相关联的主观可感知性误差度量;以及基于所获得的可感知性误差度量来确定惩罚值。
确定每个子带的惩罚值可以包括:基于相应子带的方向值来确定每个子带的加权因子;并且基于所确定的加权因子来确定每个子带的所述惩罚值。
基于所述惩罚值来选择子带可以包括基于相对于用于对所述方向值进行编码的所述初始比特分派的、用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的所述方向值进行编码的所述第二比特分派之间的所述差,对所述子带进行排序;并且基于所述子带的所述排序,以所述逐个子带为基础选择所述子带。
被分派用于为所选择的子带编码至少一个方向值的所述比特可以是基于用于对所述帧的方向值进行编码的所述第二比特分派、以及任何先前选择的子带分配。
基于所述惩罚值来选择子带可以包括选择具有最低惩罚值的未编码子带。
将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码中的任何比特分配至子带的后续选择可以包括向尚未选择的具有最高惩罚值的子带分配被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特。
所述方法还可以包括基于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的编码的任何比特分配至子带涉外后续选择,重新确定每个尚未选择的子带的惩罚值。
所述方法还可以包括对所述帧的所述至少一个能量比值进行编码。
对所述帧的所述至少一个能量比值进行编码可以包括生成所述至少一个能量比值的加权平均值;以及对所述至少一个能量比值的所述加权平均值进行编码。
对所述至少一个能量比值的所述加权平均值进行编码可以包括对所述至少一个能量比值的至少一个加权平均值进行标量非均匀量化。
针对所选择的子带对每个子带的所述至少一个方向值进行编码可以包括:基于量化网格来确定对所选择的子带的所述至少一个方向值进行编码所需的第一比特数量;确定对所选择的子带的所述至少一个方向值进行熵编码所需的第二比特数量;基于来自所述第一数量和所述第二数量的所使用的较低比特数量,选择所述量化网格编码或熵编码;以及生成标识对所述量化网格编码或熵编码的所述选择的信令比特。
所述熵编码可以是Golomb Rice编码。
所述方法还可以包括:存储和/或传输所编码的至少一个方向值。
根据第四方面提供一种方法,包括:获得表示音频信号的参数的编码值,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量。
确定每个子带的惩罚值可以包括:基于所述至少一个能量比值,为所述子带确定用于对所述帧的方向值进行编码的初始比特分派;为所述子带确定用于对所述帧的方向值进行编码的第二比特分派,所述第二比特分派是基于用于对所述音频信号的帧的所述方向值进行编码的可用比特数量以及用于对所述音频信号的帧的所述能量比值进行编码的比特数量;以及确定用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的方向值进行编码的所述第二比特分派之间的差。
确定每个子带的惩罚值可以包括:获得与用于对所述帧的所述方向值进行编码的比特分派相关联的主观可感知性误差度量;以及基于所获得的可感知性误差度量来确定惩罚值。
确定每个子带的惩罚值可以包括:基于相应子带的方向值来确定每个子带的加权因子;以及基于所确定的加权因子来确定每个子带的所述惩罚值。
基于所述惩罚值来选择子带可以包括:基于相对于用于对所述方向值进行编码的所述初始比特分派的、用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的方向值进行编码的所述第二比特分派之间的所述差,对所述子带进行排序;并且基于所述子带的所述排序,以所述逐个子带为基础选择所述子带。
被分派用于为所选择的子带编码至少一个方向值的所述比特可以是基于用于对所述帧的方向值进行编码的所述第二比特分派、以及任何先前选择的子带分配。
基于所述惩罚值来选择子带可以包括选择具有最低惩罚值的编码子带。
将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择可以包括向尚未选择的具有最高惩罚值的子带分配被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特。
所述方法可以包括用于基于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择,重新确定每个尚未选择的子带的惩罚值。
所述方法还可以包括对所述帧的所述至少一个能量比值进行解码。
针对所选择的子带对每个子带的所述至少一个方向值进行解码可以包括:确定信令比特;以及基于所述信令比特来选择量化网格解码或熵解码。
所述熵解码可以是Golomb Rice解码。
根据第五方面,提供了一种设备,包括至少一个处理器和至少一个存储器,所述至少一个存储器包括计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起致使所述设备至少:获得表示音频信号的参数的值,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;以及针对所选择的子带,对每个子带的所述至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择。
被致使确定每个子带的惩罚值的所述设备可以被致使:基于所述至少一个能量比值,为所述子带确定用于对所述帧的方向值进行编码的初始比特分派;为所述子带确定用于对所述帧的所述方向值进行编码的第二比特分派,所述第二比特分派是基于用于对所述音频信号的帧的所述值进行编码的可用比特数量以及用在对所述音频信号的帧的所述能量比值进行编码中的比特数量;确定用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的所述方向值进行编码的所述第二比特分派之间的差。
被致使确定每个子带的惩罚值的所述设备可以被致使:获得与用于对所述帧的所述方向值进行编码的比特分派相关联的主观可感知性误差度量;以及基于所获得的可感知性误差度量来确定惩罚值。
被致使确定每个子带的惩罚值的所述设备可以被致使:基于相应子带的方向值来确定每个子带的加权因子;并且基于所确定的加权因子来确定每个子带的所述惩罚值。
被致使基于所述惩罚值来选择子带的所述设备可以被致使基于相对于用于对所述方向值进行编码的所述初始比特分派的、用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的所述方向值进行编码的所述第二比特分派之间的所述差,对所述子带进行排序;并且基于所述子带的所述排序,以所述逐个子带为基础选择所述子带。
被分派用于为所选择的子带编码至少一个方向值的所述比特可以是基于用于对所述帧的方向值进行编码的所述第二比特分派、以及任何先前选择的子带分配。
被致使基于所述惩罚值来选择子带的所述设备可以被致使选择具有最低惩罚值的未编码子带。
被致使将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码中的任何比特分配至子带的后续选择的所述设备可以被致使向尚未选择的具有最高惩罚值的子带分配被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特。
所述设备还可以被致使基于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的编码的任何比特分配至子带涉外后续选择,重新确定每个尚未选择的子带的惩罚值。
所述设备还可以被致使对所述帧的所述至少一个能量比值进行编码。
被致使对所述帧的所述至少一个能量比值进行编码的所述设备可以被致使生成所述至少一个能量比值的加权平均值;以及对所述至少一个能量比值的所述加权平均值进行编码。
被致使对所述至少一个能量比值的所述加权平均值进行编码的所述设备还可以被致使对所述至少一个能量比值的至少一个加权平均值进行标量非均匀量化。
被致使针对所选择的子带对每个子带的所述至少一个方向值进行编码的所述设备还可以被致使:基于量化网格来确定对所选择的子带的所述至少一个方向值进行编码所需的第一比特数量;确定对所选择的子带的所述至少一个方向值进行熵编码所需的第二比特数量;基于来自所述第一数量和所述第二数量的所使用的较低比特数量,选择所述量化网格编码或熵编码;以及生成标识对所述量化网格编码或熵编码的所述选择的信令比特。
所述熵编码可以是Golomb Rice编码。
所述设备还可以被致使:存储和/或传输所编码的至少一个方向值。
根据第六方面,提供了一种设备,包括至少一个处理器和至少一个存储器,所述至少一个存储器包括计算机程序代码,所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起致使所述设备至少:获得表示音频信号的参数的编码值,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量。
被致使确定每个子带的惩罚值的所述设备可以被致使:基于所述至少一个能量比值,为所述子带确定用于对所述帧的方向值进行编码的初始比特分派;为所述子带确定用于对所述帧的方向值进行编码的第二比特分派,所述第二比特分派是基于用于对所述音频信号的帧的所述方向值进行编码的可用比特数量以及用于对所述音频信号的帧的所述能量比值进行编码的比特数量;以及确定用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的方向值进行编码的所述第二比特分派之间的差。
被致使确定每个子带的惩罚值的所述设备可以被致使:获得与用于对所述帧的所述方向值进行编码的比特分派相关联的主观可感知性误差度量;以及基于所获得的可感知性误差度量来确定惩罚值。
被致使确定每个子带的惩罚值的所述设备可以被致使:基于相应子带的方向值来确定每个子带的加权因子;以及基于所确定的加权因子来确定每个子带的所述惩罚值。
被致使基于所述惩罚值来选择子带的所述设备可以被致使:基于相对于用于对所述方向值进行编码的所述初始比特分派的、用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的方向值进行编码的所述第二比特分派之间的所述差,对所述子带进行排序;并且基于所述子带的所述排序,以所述逐个子带为基础选择所述子带。
被分派用于为所选择的子带编码至少一个方向值的所述比特可以是基于用于对所述帧的方向值进行编码的所述第二比特分派、以及任何先前选择的子带分配。
被致使基于所述惩罚值来选择子带的所述设备可以被致使选择具有最低惩罚值的编码子带。
被致使将用于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择的所述设备可以被致使向尚未选择的具有最高惩罚值的子带分配被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特。
所述设备还可以被致使基于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择,重新确定每个尚未选择的子带的惩罚值。
所述设备还可以被致使对所述帧的所述至少一个能量比值进行解码。
被致使针对所选择的子带对每个子带的所述至少一个方向值进行解码的所述设备还可以被致使:确定信令比特;以及基于所述信令比特来选择量化网格解码或熵解码。
所述熵解码可以是Golomb Rice解码。
根据第七方面,提供了一种设备,包括用于获得表示音频信号的参数的值的部件,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;确定每个子带的惩罚值的部件;以及以逐个子带为基础:基于所述惩罚值来选择子带的部件;以及针对所选择的子带,对每个子带的所述至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择的部件。
根据第八方面,提供一种设备,包括用于获得表示音频信号的参数的编码值的部件,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;确定每个子带的惩罚值的部件;以及以逐个子带为基础:基于所述惩罚值来选择子带的部件;针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量的部件。
根据第九方面,提供了一种包括指令[或包括程序指令的计算机可读介质]的计算机程序,用于使设备至少执行以下操作:用于获得表示音频信号的参数的值,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;以及针对所选择的子带,对每个子带的所述至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择。
根据第十方面,提供了一种包括指令[或包括程序指令的计算机可读介质]的计算机程序,用于使设备执行至少以下操作:配置为获得表示音频信号的参数的编码值的获得电路,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;配置为确定每个子带的惩罚值的确定电路;以及以逐个子带为基础:配置为基于所述惩罚值来选择子带的选择电路;配置为针对所选择的子带,对每个子带的所述至少一个方向值进行解码的解码电路;以及被配置为针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量的确定电路。
根据第十一方面,提供了一种非暂时性计算机可读介质,包括用于使设备执行至少以下操作的程序指令:获得表示音频信号的参数的值,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;以及针对所选择的子带,对每个子带的所述至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择。
根据第十二方面,提供了一种非暂时性计算机可读介质,包括用于使设备执行至少以下操作的程序指令:获得表示音频信号的参数的编码值,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量。
根据第十三方面,提供了一种设备,包括:配置为获得表示音频信号的参数的值的获得电路,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;配置为确定每个子带的惩罚值的确定电路;以及配置为以逐个子带为基础:配置为基于所述惩罚值来选择子带;以及针对所选择的子带,对每个子带的所述至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择的电路。
根据第十四方面,提供一种设备,包括:配置为获得表示音频信号的参数的编码值的获得电路,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;确定每个子带的惩罚值的确定电路;以及配置为以逐个子带为基础:基于所述惩罚值来选择子带;针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量的电路。
根据第十五方面,提供了一种计算机可读介质,包括用于使设备执行至少以下操作的程序指令:获得表示音频信号的参数的值,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;以及针对所选择的子带,对每个子带的所述至少一个方向值进行编码;将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择。
根据第十六方面,提供了一种计算机可读介质,包括用于使设备执行至少以下操作的程序指令:获得表示音频信号的参数的编码值,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;确定每个子带的惩罚值;以及以逐个子带为基础:基于所述惩罚值来选择子带;针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量。
一种设备,包括用于执行如上文所述的方法动作的部件。
一种设备,被配置为执行如上文所述方法的动作。
一种包含程序指令的计算机程序,用于使得计算机执行如上文所述的方法。
一种存储在介质上的计算机程序产品,可以使得设备执行如本文所述的方法。
一种电子装置,可以包括如本文所述的设备。
一种芯片组,可以包括如本文所述的设备。
本申请的实施例旨在解决与现有技术相关的问题。
附图说明
为了更好地理解本申请,现在将通过示例的方式参考附图,在附图中:
图1示意性地示出适于实现一些实施例的设备的系统;
图2示意性地示出根据一些实施例的元数据编码器;
图3示出根据一些实施例的如图2所示的元数据编码器的操作流程图;
图4示意性地示出根据一些实施例的元数据解码器;
图5示出根据一些实施例的如图4所示的元数据解码器的操作流程图;并且
图6示意性地示出适于实现所示设备的示例装置。
具体实施方式
下面更详细地描述了用于有效空间分析得出的元数据参数的备置的适当设备和可能的机制。在以下讨论中,针对多声道麦克风实施方式来讨论多声道系统。然而,如上所述,输入格式可以是任何适当的输入格式,诸如多声道扬声器、立体混响(FOA/HOA)等。应当理解,在一些实施例中,声道位置是基于麦克风的位置或者虚拟位置或方向。此外,示例系统的输出是多声道扬声器布置。然而,应当理解的是,输出也可以经由除扬声器之外的部件渲染给用户。此外,多声道扬声器信号可以归纳为两个或更多个回放音频信号。
对于每个考虑的时/频子带,元数据至少由仰角、方位角和所得方向的能量比组成。方向参数分量、方位角和仰角从音频数据中提取,然后量化为给定的量化分辨率。为了有效传输,必须将所得索引进一步压缩。对于高比特率,需要元数据的高质量无损编码。
下文中讨论的概念是实现具有可变比特率代码化的组合固定比特率代码化方法,该方法在不同区段之间分配用于待压缩数据的编码比特,使得每帧的总比特率是固定的。在时间频率块内,比特可以在频率子带之间传送。此外,这一概念通过被配置为按下述方式修改子带编码顺序而在此拓展:原始(例如基于能量比)方向量化精度和降低的方向量化精度用于获得每子带的量化分辨率惩罚值。然后,使用该惩罚值来控制子带处理的排序。
关于图1,图中示出了用于实现本申请实施例的示例设备和系统。系统100被示出为具有“分析”部121和“合成”部131。“分析”部121是从接收多声道信号直到对元数据和适当的传输音频信号进行编码的部分,而“合成”部131是从对编码的元数据和传输音频信号进行解码,直到渲染空间音频信号(例如多声道扬声器形式)的部分。
到系统100和“分析”部121的输入是多声道信号102。在以下示例中,描述了麦克风声道信号输入,然而在其他实施例中,也可以实现任何适当输入(或合成多声道)格式。例如,在一些实施例中,空间分析器和空间分析可以在编码器外部实现。例如,在一些实施例中,与音频信号相关联的空间元数据可以作为单独的比特流提供给编码器。在一些实施例中,空间元数据可以作为空间(方向)索引值集提供。
多声道信号被传递至传输音频生成器103和分析处理器105。
在一些实施例中,传输音频生成器103被配置为接收多声道信号并生成一个或多个适当的传输音频信号。例如,传输音频信号可以是对一个或多个输入音频信号声道的选择。在一些实施例中,传输音频生成器103被配置为将音频信号声道下混至确定数量的声道,并且输出为传输音频信号104。例如,传输音频生成器103可以被配置为生成多声道信号的2声道音频信号下混。确定数量的声道可以是任何适当数量的声道。在一些实施例中,传输音频生成器103是可选的,并且多声道信号以与经过处理版本的传输音频信号相同的方式未经处理地传递至编码器107。
在一些实施例中,分析处理器105还被配置为接收多声道信号并分析该信号,以产生与多声道信号相关联并因此与传输音频信号104相关联的元数据106。分析处理器105可以被配置为生成元数据,对于每个时频分析间隔,元数据可以包括方向参数108和能量比参数110(并且在一些实施例中,包括相干性参数和扩散性参数)。在一些实施例中,方向和能量比可以被认为是空间音频参数。换言之,空间音频参数包括旨在表征由多声道信号(或者一般地,两个或更多个回放音频信号)创建的声场的参数。
在一些实施例中,所生成的参数可以逐频带不同。因此,例如在频带X中,所有参数都被生成和传输,而在频带Y中,仅有一个参数被生成和传输,此外在频带Z中,没有参数被生成或传输。这种情况的实际示例可以是,对于诸如最高频带的一些频带来说,由于感知原因,一些参数是不需要的。传输音频信号104和元数据106可以被传递至编码器107。
编码器107可以包括音频编码器核109,音频编码器核109被配置为接收传输音频信号104并且生成这些音频信号的适当编码。在一些实施例中,编码器107可以是计算机(运行存储在存储器和至少一个处理器上的适当软件),或者替代地,是利用例如FPGA或ASIC的特定设备。编码可以使用任何适当方案来实现。编码器107还可以包括元数据编码器/量化器111,元数据编码器/量化器111被配置为接收元数据并输出编码或压缩形式的信息。在一些实施例中,在如图1中虚线所示的传输或存储之前,编码器107还可以交织、复用到单个数据流或将元数据嵌入编码的传输音频信号中。该复用可以使用任何适当方案来实现。
在解码器侧,接收或检索到的数据(流)可以由解码器/解复用器133接收。解码器/解复用器133可以解复用编码流,并将音频编码流传递至下混提取器135,下混提取器135被配置为解码音频信号以获得传输音频信号。类似地,解码器/解复用器133可以包括元数据提取器137,元数据提取器137被配置为接收编码元数据并生成元数据。在一些实施例中,解码器/解复用器133可以是计算机(运行存储在存储器和至少一个处理器上的适当软件),或者替代地,是利用例如FPGA或ASIC的特定设备。
解码后的元数据和传输音频信号可以被传递至合成处理器139。
系统100的“合成”部131还示出合成处理器139,合成处理器139被配置为接收传输音频信号和元数据,并且基于传输音频信号和元数据,以任何适当格式重新创建以多声信号110(根据使用情况,可以是多声道扬声器格式,或者在一些实施例中,可以是任何适当的输出格式,诸如双耳或立体混响信号)形式的合成空间音频。
因此,总之,系统(分析部)首先被配置为接收多声道音频信号。
然后,系统(分析部)被配置为生成传输音频信号(例如通过选择音频信号声道中的一些声道)。
然后,系统被配置为对传输音频信号编码以用于存储/传输。
此外,系统被配置为生成(例如通过分析多声道音频信号空间参数或空间元数据。
然后,可以对获得的空间元数据进行编码以用于存储/传输。
之后,该系统可以存储/传输编码的传输音频信号和元数据。
系统可以检索/接收编码的传输音频信号和元数据。
然后,系统被配置为从编码的传输音频信号和元数据参数中提取传输音频信号和元数据,例如对编码的传输音频信号和元数据参数进行解复用和解码。
系统(合成部)被配置为基于提取的传输音频信号和元数据,合成输出多声道音频信号。
关于图2,图中进一步详细描述了根据一些实施例的示例分析处理器105和元数据编码器/量化器111(如图1所示)。
在一些实施例中,分析处理器105包括时频域变换器201。
在一些实施例中,时频域变换器201被配置为接收多声道信号102,并且应用适当的时域到频域变换,诸如短时傅立叶变换(STFT),以将输入时域信号变换为适当的时频信号。这些时频信号可以被传递至空间分析器203。
因此,例如,时频信号202可以由以下以时频域表示来表示:
si(b,n),
其中,b是频率仓(bin)索引,n是时频块(帧)索引,i是声道索引。在另一表达中,可以将n视为采样速率低于原始时域信号速率的时间索引。这些频率仓可以被分组为子带,这些子带将一个或多个仓分组为频带索引的子带k=0,...,K-1。每个子带k具有最低仓bk,low和最高仓bk,high,并且子带包含从bk,low到bk,high的所有仓。子带的宽度可以接近任何适当分布。例如等效矩形带宽(ERB)标度或Bark标度。
在一些实施例中,分析处理器105包括空间分析器203。空间分析器203可以被配置为接收时频信号202并且基于这些信号估计方向参数108。可以基于任何基于音频的‘方向’确定来确定方向参数。
例如,在一些实施例中,空间分析器203被配置为利用两个或更多个信号输入来估计方向。
因此,空间分析器203可以被配置为为音频信号的帧内的每个频带和时间时频块提供至少一个方位角和仰角,用方位角和仰角θ(k,n)表示。方向参数108也可以被传递至方向索引生成器205。
空间分析器203还可以被配置为确定能量比参数110。能量比可以被认为是对可以被视为从某个方向到达的音频信号的能量的确定。直接与总能量比r(k,n)可以例如使用方向估计的稳定性测量、或使用任何相关性测量来估计,或使用任何其他适当方法获得比率参数。能量比可以被传递至能量比分析器221和能量比组合器223。
在一些实施例中,空间分析器203被配置为确定(总)能量值250。在此类实施例中,能量值250可以被传递至能量比编码器223,并且用于确定用于编码能量比110的比特数量。
因此,总之,分析处理器被配置为接收时域多声道或其它格式,诸如麦克风或立体混响音频信号。
之后,分析处理器可以应用时域到频域变换(例如STFT),以生成用于分析的适当时频域信号,然后应用方向分析以确定方向和能量比参数。
随后,分析处理器可以被配置为输出所确定的参数。
虽然这里针对每个时间索引n表达方向和比率,但在一些实施例中,可以在若干时间索引上对参数进行组合。如已经表达的,这同样适用于频率轴线,若干频率仓b的方向可以用若干频率仓b构成的频带k中的一个方向参数来表达。这同样适用于本文讨论的所有空间参数。
图2中还示出了根据一些实施例的示例元数据编码器/量化器111。
元数据编码器/量化器111可以包括能量比分析器(或量化分辨率确定器)221。能量比分析器221可以被配置为接收能量比,并且根据分析生成帧中的所有时频块的方向参数的量化分辨率(即仰角和方位角值的量化分辨率)。该比特分派可以例如由bits_dir0[0:N-1][0:M-1]定义。
元数据编码器/量化器111可以包括方向索引生成器205。方向索引生成器205被配置为接收方向参数(诸如方位角和仰角θ(k,n)108,以及量化比特分派,并由此生成量化输出。在一些实施例中,量化是基于形成球面网格的球体布置,球面网格布置为“表面”球体上由被确定的量化分辨率定义的查找表定义的环。换言之,球面网格利用了下述构思:用较小球体覆盖球体,并且将较小球体的中心视为定义几乎等距方向的网格的点。因此,较小球体定义围绕中心点的锥体或立体角,中心点可以根据任何适当的索引算法来索引。虽然这里描述了球面量化,但是也可以使用任何适当量化,无论是线性的还是非线性的。
例如,在一些实施例中,根据表bits_direction[],分派用于方向参数(方位角和仰角)的比特;如果能量比具有索引i,则该方向的比特数量是bits_direction[i]。
const short bits_direction[]={
3,5,6,8,9,10,11,11}
用于不同比特分辨率的方向量化器的结构由以下变量给出:
const short no_theta[]=/*从1to11比特*/
{/*1,-1比特
1,*//*2比特*/
1,/*3比特*/
2,/*4比特*/
4,/*5比特*/
5,/*6比特*/
6,/*7比特*/
7,/*8比特*/
10,/*9比特*/
14,/*10比特*/
19/*11比特*/
};
const short no_phi[][MAX_NO_THETA]=/*从1to11比特*/
{
{2},
{4},
{8},
{12,4},/*极点处没有点*/
{12,7,2,1},
{14,13,9,2,1},
{22,21,17,11,3,1},
{33,32,29,23,17,9,1},
{48,47,45,41,35,28,20,12,2,1},
{60,60,58,56,54,50,46,41,36,30,23,17,10,1},
{89,89,88,86,84,81,77,73,68,63,57,51,44,38,30,23,15,8,1}
};
‘no_theta’对应于方向球体‘北半球’中的仰角值数量,包括赤道。‘no_phi’对应于每个量化器在每个仰角上的方位角值数量。
例如,对于5个比特,存在对应于[0、30、60、90]的4个仰角值,以及4-1=3个负仰角值[-30、-60、-90]。对于第一仰角值0,存在12个等距方位角值,对于仰角值30和-30,存在7个等距方位角值,以此类推。
除了对应于4个比特的结构之外,所有量化结构均具有由90度除以仰角值数量‘no_theta’得到的连续仰角值之间的差。对应于4个比特的结构仅具有用于值为0和+45度的仰角的点。该结构在赤道线下没有点。这是一个示例,并且可以实现任何其他适当分布。例如,在一些实施例中,可以实现在赤道下也有点的4个比特的球面网格。类似地,3比特分布可以散布在球体上或仅限于赤道。
然后,可以将时间块组内子带的量化索引传递至方向索引编码器225。
在一些实施例中,编码器包括能量比编码器223。能量比编码器223可以被配置为接收所确定的能量比(例如直接与总能量比,以及扩散与总能量比和余数与总能量比),并且对这些进行编码/量化。
例如,在一些实施例中,能量比编码器223被配置为每个子带使用3个比特来应用标量非均匀量化。
此外,在一些实施例中,能量比编码器223被配置为每子带生成一个加权平均值。在一些实施例中,通过考虑每个时频块的总能量250和基于具有更多能量的子带而应用的加权来计算该平均值。
然后,能量比编码器223可以将该平均值传递至组合器207,组合器207被配置为组合元数据并输出组合后的编码元数据。
在一些实施例中,编码器包括方向索引编码器225。方向索引编码器225可以被配置为逐子带获得并编码索引值。
因此,方向索引编码器225可以被配置为将分派的比特数量减少到值bits_dir1[0:N-1][0:M-1],使得分派的比特总数等于对能量比进行编码之后剩余的可用比特数量。
减少初始分派的比特数量,即,从bits_dir0[0:N-1][0:M-1]到bits_dir1[0:N-1][0:M-1],在一些实施例中可以通过以下操作实现:
首先,以待减少比特与时频块数量之间的整除给出的比特量,跨时/频块均匀地减少比特数量;
其次,从子带0、时频块0开始,仍需要减少的比特每时频块减1。
这可以例如通过以下c代码实现:
在一些实施例中,可以对每个块施加大于0的最小比特数量。
随后,在一些实施例中,可以确定相对比特惩罚参数。
在一些实施例中,每个时频片(TF tile)的相对比特惩罚参数被计算为原始比特分派,bits_der0[0:N-1][0:M-1],和相对于原始比特分派值的减少的比特分派,bits_dir1[0:N-1][0:M-1],之间的差。
这可以实现为
平均比特惩罚作为一个子带的子帧上的平均惩罚值获得。
因此,平均比特惩罚可以被计算为:
在确定了平均比特惩罚之后,该值可以随后用于对子带排序,使得从最低惩罚值到最高惩罚值排序。在一些实施例中,在平均比特惩罚相等(或不分上下)的情况下,子带的排序可以基于减少之后留下比特较多的子带排序在比特较少的子带之前。
因此,例如,假设我们具有每个时频片的初始比特分派(其中行指示子带,列指示时间样本):
减少后,比特分派变为:
结果,每个子带的平均相对惩罚为:
Av_bit_penalty[0:N-1]=[0.280.200.180.210.20]
例如,第一子带惩罚计算如下:(7-5)/7+(7-5)/7+(7-5)/7+(7-5)/7)/4=0.28,对应于初始和减少的比特分派之间的差相对于初始比特分派的平均值,该平均值是在子带上取得的。
在该示例中,第二和第五子带具有相同的平均相对惩罚,但第二子带的比特数量是8×4=32,而第五子带的比特数量是4×4=16,因此子带将编码的排序是:
ord=[5 2 1 4 3]。
然后,方向索引编码器225可以被配置为基于子带的排序,以逐子带为基础实现对比特数量的进一步调整或重新分配(可以包括减少)。因此,子带的排序允许我们在编码时增加将比特分配到队列中的下一子带的机会。因此,目标是配置一种编码方法,其中存在对于提供比特分派的子带的比特的减少(但不存在分辨率的降低),并且对于接收比特分派的子带的比特的增加(以及分辨率也增加)。
例如,在一些实施例中,方向索引编码器225可以被配置为计算允许用于从排序第一的子带ord[1]到倒数第二子带ord[N-1]的当前子带的比特数量。换句话说,确定以下
从i=1到N-1,bits_allowed=sum(bits_dir1[i][0:M-1])。
然后,方向索引编码器可以被配置为尝试使用适当的熵代码化对方向参数索引进行编码,并确定当前子带需要多少比特(bits_ec)。在其小于使用所确定的减少后的比特分派数量的适当固定率编码机制,bits_fixed=bits_allowed,的情况下,选择熵代码化。否则,选择固定率编码方法。
此外,用一个比特来指示选定方法。
换句话说,用于对子带方向索引进行编码的比特数量是:
nb=min(bits_fixed,bits_ec)+1;
然后,方向索引编码器可以被配置为确定是否存在从可用比特的子带‘池’剩余的比特。
例如,方向索引编码器225可以被配置为确定差
diff=(allowed_bits-nb)。
在diff>0的情况下,也就是说,存在来自分派的未使用比特,这些比特可以被重新分配至后续子带。例如,通过更新由数组bits_dir1[i+1:N-1][0:M-1]定义的分配实现。
在diff=0或<0的情况下,从来自后续子带分派的分派中减去一个比特。例如,通过更新由数组bits_dir1[i+1][0]定义的分配实现。
在除了排序在最后的子带之外的所有子带都已经编码后,利用由dir1[N-1][0:M-1]个比特定义的比特分派,使用固定率编码对排序在最后的子带ord[N]索引值进行编码。
然后,可以将这些传递给组合器207,在组合器207处组合并输出组合的编码方向和能量值。
关于图3,示出了如图2所示的元数据编码器/量化器111的操作。
初始操作是获得元数据(方位角值、仰角值、能量比)之一,如图3中的步骤301所示。
在获得了每个子带(i=1:N)的元数据之后,准备初始分配或分派并且如图3中的步骤303所示:使用3个比特来编码对应的能量比值,然后为当前子带的所有时频块的方位角和仰角设定量化分辨率。通过允许由能量比值给定的预定义比特数量,即bits_dir0[0:N-1][0:M-1],来设定量化分辨率。
在生成初始分派之后,减少分派的比特数量,bits_dir1[0:N-1][0:M-1](分派的比特总和=对能量比进行编码之后剩余的可用比特数量),如图3中由步骤305所示。
该方法然后可以确定平均相对比特惩罚,并进一步以平均相对比特惩罚的升序对子带进行排序:ord[i]0i=1:N,如图3中由步骤307所示。
在已排序子带(基于平均相对比特惩罚)之后,以排序后的子带为基础,从排序第一的子带ord[1]到倒数第二子带ord[N-1]实施对每个子带的减少的比特分派(或者在0个比特被分派给排序在最后的子带的情况下,“比特传递”过程可以仅实施至排序在倒数第二子带之前的子带Ord[1:N-2])(换言之,对于每个排序子带ord[i=1:N-1]):计算当前子带的允许比特:bits_allowed=sum(bits_dir1[i][0:M-1])。用减少的分派比特数量(利用固定率编码或熵代码化中使用比特更少的无论哪个)对方向参数索引进行编码,并指示编码选择。如果存在相对于允许比特可用比特:将差重新分配至随后子带(通过更新bits_dir1[i+1:N-1][0_M-1]),否则从bits_dir1[i+1][0]减去一个比特。这在图3由步骤309示出。
然后,对于排序在最后的子带ord[N],使用bits_dir1[N-1][0:M-1]个比特以固定率方法对最后一个子带的方向参数索引进行编码,如图3中由步骤311所示。
关于图4,图中示出了示例解码器133,并且具体示出了示例元数据提取器137。
在一些实施例中,将编码数据流400传递至解复用器401。解复用器401被配置为提取编码能量比和编码方向索引402,并且在一些实施例中,还可以提取其他元数据并传输音频信号(未示出)。在一些实施例中,解复用器401还被配置为对提取的编码能量比进行解码。
在一些实施例中,能量比(可以是编码或解码格式)从解码器输出,并且还可以被传递至能量比分析器403(量化分辨率确定器)。例如,当如图2所示的编码器被配置为基于原始能量比来确定初始量化或比特分派时,解码的能量比然后被传递至能量比分析器403。
在一些实施例中,解码器133(并且具体地,元数据提取器137)包括能量比分析器403(量化分辨率确定器)。能量比分析器403被配置为执行与元数据编码器能量比分析器(量化分辨率确定器)内所执行的分析类似的分析,以生成针对方向信息的初始比特分派404。用于方向信息的该初始比特分派404被传递至方向索引解码器405。
在编码器被配置为基于编码或量化的能量比参数来确定初始量化/比特分派的一些实施例中,解码器/解复用器然后被配置为将提取的编码能量比参数传递至能量比分析器403,以确定用于方向参数的初始比特分派。
方向索引解码器405还可以从解复用器接收编码方向索引402。
方向索引解码器405可以被配置为以与编码器内的方式类似的方式确定用于方向值的减少比特分派。
然后,方向索引解码器405还可以被配置为读取一个比特以确定是否所有的仰角数据都是0(即方向值为2D)。
然后,以平均相对比特惩罚的升序对子带进行排序ord[i],i=1:N。
在方向值为3D的情况下,然后确定排序在最后的子带ord[N]分派的计数值nb_last。
如果值nb_last为0,则将排序在最后的子带解码为N-1,否则将排序在最后的子带解码为N。
在从排序在第一的子带ord[1]到最后的子带(根据先前确定,为ord[N]或ord[N-1])的排序逐个子带的基础上,方向索引解码器405被配置为确定当前子带的编码是使用固定率代码还是使用可变率代码来编码。
在编码器处使用固定率代码的情况下,然后读取并解码球面索引(或其它索引分布),获得仰角和方位角值,并将下一子带的比特分派减少1。
在编码器处使用可变率代码的情况下,读取并解码熵编码的索引,以生成仰角和方位角值。然后,对熵编码信息中使用的比特数量进行计数,并确定当前排序子带的允许比特和熵编码中使用的比特之间的差。这之后,为后续(一个或多个)排序子带分布所述差个比特。
然后,基于固定率代码对排序在最后的子带进行解码。
在方向值是2D的情况下,然后对于每个排序子带,基于固定率编码方位角索引对索引进行解码。
关于图5,图示出了示例编码比特流的解码流程图。
因此,例如,第一操作将是获得元数据(方位角值、仰角值、能量比),如图5中的步骤501所示。
然后该方法可以基于能量比值来估计用于方向信息的初始比特分派,如图5中由步骤503所示。
然后,可以减少可用比特分派,bits_dir1[0:N-1][0:M-1](分派的比特总和=解码方向信息可用的剩余可用比特数量),如图5中的步骤505所示。
然后,读取比特以确定是否所有仰角数据都是0(2D数据),如图5中由步骤507所示。
然后,以平均相对比特惩罚的升序对子带进行排序:ord[i],i-1:N,如图5中由步骤509所示。
如果方向数据是3D,则如图5中由步骤511所示,该方法然后可以被配置为对可用于排序在最后的子带(ord[N])的比特数量进行计数,nb_last。如果可用于排序在最后的子带的比特数量为0(或nb_last==0),则在随后循环中处理的最后一个子带是排序在倒数第二的子带。换句话说,则last_j=N-1,并且子带的索引是ord[N-1]。否则,当可用于排序在最后的子带的比特数量大于1时,则在随后循环中处理的最后一个子带实际上是排序在最后的子带(或Last_j=N)。
然后,该方法可以被配置为实现处理循环,其中对于经受上述子带限制(或来自j=ord[1]:ord[last_j-1])的每个子带,该方法可以读取1个比特以了解编码是固定率还是可变率。如果用于编码的方法是基于信令比特的固定率编码,则该方法可以被配置为读取并解码用于方向信息的球面索引,获得仰角和方位角值,并从用于下一子带的比特中减少1比特。当用于编码方法是基于信令比特的熵编码时,则该方法可以被配置为读取并解码用于仰角和方位角的熵编码索引。然后,该方法可以被配置为对熵编码信息中使用的比特数量进行计数,计算当前子带的允许比特和熵编码中使用的比特之间的差,并为下一子带分配所述差个比特。
此外,对于每个剩余的排序子带(即来自j=ord[last_j:N]:ord[N]),该方法可以被配置为读取并解码用于方向数据的固定率编码球面索引。
如果方向数据是2D,则对于来自j=1:N的每个子带,该方法然后可以被配置为对固定率编码方位角索引进行解码。这在图5由步骤513中示出。
在一些实施例中,方位角和仰角索引的熵编码/解码可以使用具有Golomb Rice参数的两个可能值的Golomb Rice编码方法来实现。在一些实施例中,熵代码化也可以使用任何适当的熵代码化技术(例如霍夫曼、算术代码化…)来实现。
在一些实施例中,在对仰角索引进行编码/解码时,可能存在几个例外,对于用于量化的比特数量小于或等于3的情况,然后基于对方向参数之间的距离的确定(或两个方向参数的仰角是相似的还是在确定阈值内),编码/解码方法可以被配置为实施联合或共用的仰角编码(也就是说,使用单个仰角值表示多于一个时间/子带)。
此外,在实施联合或共用仰角编码的情况下,在一些实施例中,随后可以分配方位角索引以优化索引的分布。例如,可以为值-180、-135、-90、-45、0、45、90、135分配方位角索引7、5、3、1、0、2、4、6m。
在实施联合或共用仰角编码的一些实施例中,可以确定使用场境(context),并且基于使用场境确定来确定或选择方位角编码方法。
在一些实施例中,通过在熵代码化(EC)和固定率代码化之间进行选择来实现联合代码化。在一些实施例中,可以修改方法和设备,使得在对每个子带进行编码之后,进行子带的排序并隐含地决定后面是哪个子带。
这可以实现为以下操作:
1.量化每个频带的能量比
2.基于量化的能量比,将比特分派给每个子带中的TF片
3.减少TF片中的比特分派,以适合可用比特预算。
4.计算每个子带的平均相对比特惩罚
5.对具有最低平均相对比特惩罚值的子带进行编码,并输出可以给予随后子带的比特数量B。
6.如果B>0
a.从剩余子带中选择出具有最高惩罚值的子带
7.否则/*这对应于B=-1,或B=0*/
a.从剩余子带中选择出具有最低惩罚值的子带
8.结束
9.对选择的子带进行编码,并输出可以给予下一子带的比特数量
10.如果只剩一个子带
a.给予其B个比特并以固定率进行编码
11.否则
a.转到6
12.结束
在一些实施例中,“量化精度”和“惩罚”的确定可以以各种不同方式实现。在一些实施例中,量化精度可以使用在编码和解码期间能够获得的任何适当度量(直接获得或从编码器传送)来确定。例如,量化精度可以是基于主观评估的不同量化级内的误差可感知性表。也可以是完全客观的度量,诸如最大角度误差。同样,在一些实施例中,惩罚度量可以基于这些度量中的任何一个(或其组合)。此外,在一些实施例中,可以基于方向角(以及潜在角度差)定义“可感知性”误差惩罚度量。例如,“前”向角(即从用户向前而不是用户后方或侧面的音频信号)可以被配置为使得例如初始比特分派和减少比特分派之间的任何“差”(或初始比特分派可能的量化误差)产生比侧向或后向角的类似差更高的惩罚值。例如,任何获得的惩罚均可以用来自先前帧的相应子带的方位角的倒数值来加权。
在一些实施例中,在从剩余子带中选择具有最高惩罚值的子带,最高惩罚值可以基于如同给出了将要分配的比特一样所获得的惩罚值来确定,而不是基于原始惩罚值确定。同样在一些实施例中,在从剩余子带中选择具有最低惩罚值的子带,最低惩罚值可以基于如同给出了将要分配的比特一样所获得的惩罚值来确定,而不是基于原始惩罚值确定。
关于图6,图中示出可以用作分析或合成设备的示例电子装置。该装置可以是任何适当的电子装置或设备。例如,在一些实施例中,装置1400是移动设备、用户设备、平板计算机、音频播放装置等。
在一些实施例中,装置1400包括至少一个处理器或中央处理单元1407。处理器1407可以被配置为执行诸如本文所述方法的各种程序代码。
在一些实施例中,装置1400包括存储器1411。在一些实施例中,至少一个处理器1407耦接至存储器1411。存储器1411可以是任何适当的存储装置。在一些实施例中,存储器1411包括程序代码部分,程序代码部分用于存储能够在处理器1407上实现的程序代码。此外,在一些实施例中,存储器1411还可以包括用于存储数据的存储数据部分,例如已经根据本文描述的实施例进行处理或将要进行处理的数据。在任何需要的时候,所实现的存储在程序代码部分中的程序代码和存储在存储数据部分中的数据均可以由处理器1407经由存储器-处理器耦接进行检索。
在一些实施例中,装置1400包括用户接口1405。在一些实施例中,用户接口1405可以耦接至处理器1407。在一些实施例中,处理器1407可控制用户接口1405的操作,并接收来自用户接口1405的输入。在一些实施例中,用户接口1405可以使得用户能够例如经由小键盘向装置1400输入命令。在一些实施例中,用户接口1405可以使得用户能够从装置1400获得信息。例如,用户接口1405可以包括显示器,显示器被配置为向用户显示来自装置1400的信息。在一些实施例中,用户接口1405可以包括触摸屏或触摸接口,触摸屏或触摸接口能够使信息被输入到装置1400中并进一步向装置1400的用户显示信息。在一些实施例中,用户接口1405可以是用于与如本文所述的位置确定器通信的用户接口。
在一些实施例中,装置1400包括输入/输出端口1409。在一些实施例中,输入/输出端口1409包括收发器。此类实施例中的收发器可以耦接至处理器1407,并且被配置为实现例如经由无线通信网络与其它装置或电子装置通信。在一些实施例中,上述收发器或任何适当的收发器或发送器和/或接收器设备可以被配置为经由有线或有线耦接,与其它电子装置或设备通信。
收发器可以通过任何适当的已知通信协议与其它装置通信。例如,在一些实施例中,收发器可以使用适当的通用移动电信系统(UMTS)协议、无线局域网(WLAN)协议(诸如IEEE 802.X)、适当的短距离射频通信协议(诸如蓝牙或红外数据通信路径(IRDA))。
收发器输入/输出端口1409可以被配置为接收信号,并且在一些实施例中通过使用执行适当代码的处理器1407来确定如本文所述的参数。此外,该设备可以生成将发送至合成设备的适当下混信号和参数输出。
在一些实施例中,装置1400可以作为合成设备的至少一部分采用。这样,输入/输出端口1409可以被配置为接收下混信号,并且在一些实施例中接收在如本文所述的捕捉设备或处理设备处确定的参数,并且通过使用执行适当代码的处理器1407来生成适当的音频信号格式输出。输入/输出端口1409可以耦接至任何适当的音频输出,例如耦接至多声道扬声器系统和/或耳机等。
一般地,各种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实现。本公开的一些方面可以在硬件中实现,其它方面可以在固件或软件中实现,固件或软件可以由控制器、微处理器或其它计算设备执行,尽管本公开并不限于此。虽然本公开的各个方面可以被图示和描述为框图、流程图或者使用一些其它图示表示,应当充分理解的是,作为非限制性示例,本文描述的这些框、装置、系统、技术或方法可以在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其它计算设备或者其某种组合中实现。
如在本申请中所使用的,术语“电路”可以指以下一个或多个或全部:
(a)仅硬件的电路实现(诸如仅在模拟和/或数字电路中实现),以及
(b)硬件电路和软件的组合,诸如(如果适用):
(i)(一个或多个)模拟和/或数字硬件电路与软件/固件的组合,以及
(ii)具有软件的(一个或多个)硬件处理器(包括数字信号处理器)、软件和(一个或多个)存储器的任何部分,这些部分一起工作,以使诸如移动电话或服务器的装置执行各种功能),和
(c)(一个或多个)硬件电路和或处理器,诸如(一个或多个)微处理器或(一个或多个)微处理器的一部分,其需要软件(例如固件)以进行操作,但在不需要软件以进行操作时,软件可以不存在。”
电路的这种定义适用于本申请中该术语的所有使用,包括任何权利要求中的使用。作为进一步示例,如在本申请中所使用的,术语“电路”还涵盖仅硬件电路或处理器(或多个处理器)或处理器的一部分及其伴随软件和/或固件的实现。
术语“电路”还涵盖(例如并且如果适用的话)要求保护的特定元件、用于移动设备的基带集成电路或处理器集成电路或服务器、蜂窝网络设备或其它计算或网络设备中的类似集成电路。
本公开的实施例可以由能够由移动设备的数据处理器执行的计算机软件实现,诸如在处理器实体中实现,或者由硬件实现,或者由软件和硬件的组合实现。计算机软件或程序(也称为程序产品)包括软件例程、小程序和/或宏,可以存储在任何装置可读数据存储介质中,并且包括用于执行特定任务的程序指令。计算机程序产品可以包括一个或多个计算机可执行部件,当运行程序时,部件被配置为用于执行实施例。一个或多个计算机可执行部件可以是至少一个软件代码或其部分。
此外,关于这一点应当注意的是,如附图中的逻辑流程的任何框均可以表示程序步骤,或者互连的逻辑电路、框和功能,或者程序步骤与逻辑电路、框和功能的组合。软件可以存储在物理介质上,包括诸如存储芯片或在处理器中实现的存储块、诸如硬盘或软盘的磁介质以及诸如DVD及其数据变体CD的光介质。物理介质是非瞬时性介质。
存储器可以是适合于本地技术环境的任何类型的存储器,并且可以使用任何适当的数据存储技术实现,诸如基于半导体的存储设备、磁存储设备和系统、光存储设备和系统、固定存储器和可移除存储器。作为非限制性示例,数据处理器可以是适合于本地技术环境的任何类型的数据处理器,并且可以包括通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、FPGA、门级电路和基于多核处理器架构的处理器中的一个或多个。
本公开的实施例可以在诸如集成电路模块的各种部件中实践。集成电路的设计大体上是高度自动化的过程。复杂且强大的软件工具能够用于将逻辑级设计转换为容易在半导体衬底上蚀刻和形成的半导体电路设计。
本公开各实施例的保护范围由独立权利要求阐述。本说明书中描述的未落入独立权利要求范围内的实施例和特征(如果有的话)应理解为有助于理解本公开各实施例的示例。
前面的描述已经通过非限制性示例提供了对本公开的示例性实施例的完整且信息丰富的描述。然而,当结合附图和所附权利要求书阅读时,鉴于以上描述,各种修改和调整对于相关领域的技术人员来说可以变得明显。然而,本公开教导的所有此类及类似修改仍将落入如所附权利要求中定义的本发明的范围内。实际上,存在包括一个或多个实施例与先前讨论的任何其它实施例的组合的其它实施例。
Claims (29)
1.一种设备,包括用于以下的部件:
获得表示音频信号的参数的值,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;
确定每个子带的惩罚值;以及以逐个子带为基础:
基于所述惩罚值来选择子带;以及
针对所选择的子带,对每个子带的所述至少一个方向值进行编码;
将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择。
2.根据权利要求1所述的设备,其中,用于确定每个子带的惩罚值的所述部件用于:
基于所述至少一个能量比值,为所述子带确定用于对所述帧的方向值进行编码的初始比特分派;
为所述子带确定用于对所述帧的所述方向值进行编码的第二比特分派,所述第二比特分派是基于用于对所述音频信号的帧的所述值进行编码的可用比特数量、以及用在对所述音频信号的帧的所述能量比值进行编码中的比特数量;
确定用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的所述方向值进行编码的所述第二比特分派之间的差。
3.根据权利要求1或权利要求2中任一项所述的设备,其中,用于确定每个子带的惩罚值的所述部件用于:
获得与用于对所述帧的所述方向值进行编码的比特分派相关联的主观可感知性误差度量;以及
基于所获得的可感知性误差度量来确定惩罚值。
4.根据权利要求1至3中任一项所述的设备,其中,用于确定每个子带的惩罚值的所述部件用于:
基于相应子带的方向值来确定每个子带的加权因子;并且
基于所确定的加权因子来确定每个子带的所述惩罚值。
5.根据权利要求2或从属于权利要求2的任一权利要求所述的设备,其中,用于基于所述惩罚值来选择子带的所述部件用于:
基于相对于用于对所述方向值进行编码的所述初始比特分派的、用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的所述方向值进行编码的所述第二比特分派之间的所述差,对所述子带进行排序;并且
基于所述子带的所述排序,以所述逐个子带为基础选择所述子带。
6.根据权利要求2或从属于权利要求2的任一权利要求所述的设备,其中,被分派用于为所选择的子带编码至少一个方向值的所述比特是基于用于对所述帧的方向值进行编码的所述第二比特分派、以及任何先前选择的子带分配。
7.根据权利要求1至4中任一项所述的设备,其中,用于基于所述惩罚值来选择子带的所述部件用于选择具有最低惩罚值的未编码子带。
8.根据权利要求7所述的设备,其中,用于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码中的任何比特分配至子带的后续选择的所述部件包括:
用于向尚未选择的具有最高惩罚值的子带分配被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特的部件。
9.根据权利要求1至8中任一项所述的设备,其中,所述部件还用于基于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的编码的任何比特分配至子带涉外后续选择,重新确定每个尚未选择的子带的惩罚值。
10.根据权利要求1至9中任一项所述的设备,其中,所述部件还用于对所述帧的所述至少一个能量比值进行编码。
11.根据权利要求10所述的设备,其中,用于对所述帧的所述至少一个能量比值进行编码的所述部件用于:
生成所述至少一个能量比值的加权平均值;以及
对所述至少一个能量比值的所述加权平均值进行编码。
12.根据权利要求11所述的设备,其中,用于对所述至少一个能量比值的所述加权平均值进行编码的所述部件还用于:对所述至少一个能量比值的至少一个加权平均值进行标量非均匀量化。
13.根据权利要求1至12中任一项所述的设备,其中,用于针对所选择的子带对每个子带的所述至少一个方向值进行编码的所述部件还用于:
基于量化网格,确定对所选择的子带的所述至少一个方向值进行编码所需的第一比特数量;
确定对所选择的子带的所述至少一个方向值进行熵编码所需的第二比特数量;
基于来自所述第一数量和所述第二数量的所使用的较低比特数量,选择所述量化网格编码或熵编码;以及
生成标识对所述量化网格编码或熵编码的所述选择的信令比特。
14.根据权利要求13所述的设备,其中,所述熵编码是Golomb Rice编码。
15.根据权利要求1至14中任一项所述的设备,其中,所述部件还用于:存储和/或传输所编码的至少一个方向值。
16.一种设备,包括用于以下操作的部件:
获得表示音频信号的参数的编码值,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;
确定每个子带的惩罚值;以及以逐个子带为基础:
基于所述惩罚值来选择子带;
针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及
针对子带的后续选择,确定被分派给所述至少一个方向值的所述编码值的比特数量。
17.根据权利要求16所述的设备,其中,用于确定每个子带的惩罚值的所述部件用于:
基于所述至少一个能量比值,为所述子带确定用于对所述帧的方向值进行编码的初始比特分派;
为所述子带确定用于对所述帧的方向值进行编码的第二比特分派,所述第二比特分派是基于用于对所述音频信号的帧的所述方向值进行编码的可用比特数量、以及用于对所述音频信号的帧的所述能量比值进行编码的比特数量;以及
确定用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的方向值进行编码的所述第二比特分派之间的差。
18.根据权利要求16或权利要求17中任一项所述的设备,其中,用于确定每个子带的惩罚值的所述部件用于:
获得与用于对所述帧的所述方向值进行编码的比特分派相关联的主观可感知性误差度量;以及
基于所获得的可感知性误差度量来确定惩罚值。
19.根据权利要求16至18中任一项所述的设备,其中,用于确定每个子带的惩罚值的所述部件用于:
基于相应子带的方向值来确定每个子带的加权因子;以及
基于所确定的加权因子来确定每个子带的所述惩罚值。
20.根据权利要求17或从属于权利要求17的任一权利要求所述的设备,其中,用于基于所述惩罚值来选择子带的所述部件用于:
基于相对于用于对所述方向值进行编码的所述初始比特分派的、用于对所述方向值进行编码的所述初始比特分派与用于对所述帧的方向值进行编码的所述第二比特分派之间的所述差,对所述子带进行排序;并且
基于所述子带的所述排序,以所述逐个子带为基础选择所述子带。
21.根据权利要求17或从属于权利要求17的任一权利要求所述的设备,其中,被分派用于为所选择的子带编码至少一个方向值的所述比特是基于用于对所述帧的方向值进行编码的所述第二比特分派、以及任何先前选择的子带分配。
22.根据权利要求16至21中任一项所述的设备,其中,用于基于所述惩罚值来选择子带的所述部件用于选择具有最低惩罚值的编码子带。
23.根据权利要求22所述的设备,其中,用于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择的所述部件用于:向尚未选择的具有最高惩罚值的子带分配被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特。
24.根据权利要求16至23中任一项所述的设备,其中,所述部件还用于基于将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择,重新确定每个尚未选择的子带的惩罚值。
25.根据权利要求16至24中任一项所述的设备,其中,所述部件还用于对所述帧的所述至少一个能量比值进行解码。
26.根据权利要求16至25中任一项所述的设备,其中,用于针对所选择的子带对每个子带的所述至少一个方向值进行解码的所述部件还用于:
确定信令比特;以及
基于所述信令比特来选择量化网格解码或熵解码。
27.根据权利要求26所述的设备,其中,所述熵解码是Golomb Rice解码。
28.一种用于设备的方法,所述方法包括:
获得表示音频信号的参数的值,所述值包括所述音频信号的帧的至少两个子带中每个子带的至少一个方向值和至少一个能量比值;
确定每个子带的惩罚值;以及以逐个子带为基础:
基于所述惩罚值来选择子带;以及
针对所选择的子带,对每个子带的所述至少一个方向值进行编码;
将被分派用于为所选择的子带编码至少一个方向值的、未被用于所述至少一个方向值的所述编码的任何比特分配至子带的后续选择。
29.一种用于设备的方法,所述方法包括:
获得表示音频信号的参数的编码值,所述编码值包括所述音频信号的帧的至少两个子带中每个子带的至少一个编码方向值和至少一个编码能量比值;
确定每个子带的惩罚值;以及以逐个子带为基础:
基于所述惩罚值来选择子带;
针对所选择的子带,对每个子带的所述至少一个方向值进行解码;以及
针对子带的后续选择,确定被分派用于所述至少一个方向值的所述编码值的比特数量。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2021/052201 WO2022161632A1 (en) | 2021-01-29 | 2021-01-29 | Determination of spatial audio parameter encoding and associated decoding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116982108A true CN116982108A (zh) | 2023-10-31 |
Family
ID=74494925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180095975.5A Pending CN116982108A (zh) | 2021-01-29 | 2021-01-29 | 空间音频参数编码和相关联解码的确定 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20240127828A1 (zh) |
EP (1) | EP4285360A1 (zh) |
KR (1) | KR20230135665A (zh) |
CN (1) | CN116982108A (zh) |
CA (1) | CA3206707A1 (zh) |
WO (1) | WO2022161632A1 (zh) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2973551A1 (fr) * | 2011-03-29 | 2012-10-05 | France Telecom | Allocation par sous-bandes de bits de quantification de parametres d'information spatiale pour un codage parametrique |
GB2575305A (en) * | 2018-07-05 | 2020-01-08 | Nokia Technologies Oy | Determination of spatial audio parameter encoding and associated decoding |
-
2021
- 2021-01-29 EP EP21702670.7A patent/EP4285360A1/en active Pending
- 2021-01-29 KR KR1020237029264A patent/KR20230135665A/ko unknown
- 2021-01-29 US US18/263,494 patent/US20240127828A1/en active Pending
- 2021-01-29 CA CA3206707A patent/CA3206707A1/en active Pending
- 2021-01-29 WO PCT/EP2021/052201 patent/WO2022161632A1/en active Application Filing
- 2021-01-29 CN CN202180095975.5A patent/CN116982108A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20230135665A (ko) | 2023-09-25 |
US20240127828A1 (en) | 2024-04-18 |
EP4285360A1 (en) | 2023-12-06 |
CA3206707A1 (en) | 2022-08-04 |
WO2022161632A1 (en) | 2022-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11676612B2 (en) | Determination of spatial audio parameter encoding and associated decoding | |
CN111316353A (zh) | 确定空间音频参数编码和相关联的解码 | |
JP7405962B2 (ja) | 空間オーディオパラメータ符号化および関連する復号化の決定 | |
CN112997248A (zh) | 确定空间音频参数的编码和相关联解码 | |
WO2020016479A1 (en) | Sparse quantization of spatial audio parameters | |
EP4082009A1 (en) | The merging of spatial audio parameters | |
CN114945982A (zh) | 空间音频参数编码和相关联的解码 | |
WO2020260756A1 (en) | Determination of spatial audio parameter encoding and associated decoding | |
WO2019197713A1 (en) | Quantization of spatial audio parameters | |
CN116982108A (zh) | 空间音频参数编码和相关联解码的确定 | |
RU2797457C1 (ru) | Определение кодирования параметров пространственного звука и соответствующего декодирования | |
WO2022223133A1 (en) | Spatial audio parameter encoding and associated decoding | |
KR20230158590A (ko) | 공간 오디오 스트림 결합 | |
WO2022058645A1 (en) | Spatial audio parameter encoding and associated decoding | |
KR20230119209A (ko) | 공간 오디오 파라미터 양자화 | |
KR20230069173A (ko) | 공간 오디오 파라미터 양자화 | |
EP3948861A1 (en) | Determination of the significance of spatial audio parameters and associated encoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |