CN115376528A - 三维音频信号编码方法、装置和编码器 - Google Patents
三维音频信号编码方法、装置和编码器 Download PDFInfo
- Publication number
- CN115376528A CN115376528A CN202110536623.0A CN202110536623A CN115376528A CN 115376528 A CN115376528 A CN 115376528A CN 202110536623 A CN202110536623 A CN 202110536623A CN 115376528 A CN115376528 A CN 115376528A
- Authority
- CN
- China
- Prior art keywords
- virtual
- current frame
- virtual speaker
- representative
- correlation
- 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 title claims abstract description 236
- 238000000034 method Methods 0.000 title claims abstract description 127
- 238000003860 storage Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 abstract description 24
- 230000006870 function Effects 0.000 description 29
- 238000004891 communication Methods 0.000 description 26
- 238000012545 processing Methods 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 13
- 238000001228 spectrum Methods 0.000 description 12
- 238000005070 sampling Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 6
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 6
- 238000013144 data compression Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 230000003595 spectral effect Effects 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 210000003454 tympanic membrane Anatomy 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 239000003570 air Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000006185 dispersion Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000009828 non-uniform distribution Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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 TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; 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/04—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 predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/11—Application of ambisonics in stereophonic audio systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/302—Electronic adaptation of stereophonic sound system to listener position or orientation
- H04S7/303—Tracking of listener position or orientation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Stereophonic System (AREA)
Abstract
本申请公开了一种三维音频信号编码方法、装置和编码器,涉及多媒体领域。该方法包括:编码器获取到三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度后,判断第一相关度是否满足复用条件,第一相关度用于确定对当前帧进行编码时是否复用在先帧的代表虚拟扬声器集合。若第一相关度满足复用条件,根据在先帧的代表虚拟扬声器集合对当前帧进行编码得到码流。在先帧的代表虚拟扬声器集合中的虚拟扬声器为对三维音频信号的在先帧进行编码所使用的虚拟扬声器。从而,避免编码器再执行搜索虚拟扬声器过程,有效地降低了编码器搜索虚拟扬声器的计算复杂度,因此降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。
Description
技术领域
本申请涉及多媒体领域,尤其涉及一种三维音频信号编码方法、装置和编码器。
背景技术
随着高性能计算机和信号处理技术的飞速发展,收听者对语音、音频体验提出了越来越高的要求,浸入式音频能够满足人们在这方面的需求。例如,三维音频技术在无线通信(例如4G/5G等等)语音、虚拟现实/增强现实和媒体音频等方面得到了广泛应用。三维音频技术是对真实世界中的声音和三维声场信息进行获取、处理、传输和渲染回放的音频技术,使声音具有强烈的空间感、包围感及沉浸感,给收听者以“身临其境”的非凡听觉体验。
通常,采集设备(如:麦克风)采集大量的数据记录三维声场信息,向回放设备(例如扬声器,耳机等)传输三维音频信号,以便于回放设备播放三维音频。由于三维声场信息的数据量较大,导致需要大量的存储空间存储数据,以及传输三维音频信号的带宽需求较高。为了解决上述问题,可以对三维音频信号进行压缩,存储或传输压缩数据。目前,编码器先遍历候选虚拟扬声器集合中的虚拟扬声器,利用选取的虚拟扬声器对三维音频信号进行压缩。因此,编码器对三维音频信号进行压缩编码的计算复杂度较高。如何降低对三维音频信号进行压缩编码的计算复杂度是一个亟待解决的问题。
发明内容
本申请提供了三维音频信号编码方法、装置和编码器,由此可以降低对三维音频信号进行压缩编码的计算复杂度。
第一方面,本申请提供了一种三维音频信号编码方法,该方法可以由编码器执行,具体包括如下步骤:编码器获取到三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度后,判断第一相关度是否满足复用条件,若第一相关度满足复用条件,根据在先帧的代表虚拟扬声器集合对当前帧进行编码,得到码流。其中,在先帧的代表虚拟扬声器集合中的虚拟扬声器为对三维音频信号的在先帧进行编码所使用的虚拟扬声器,第一相关度用于确定对当前帧进行编码时是否复用在先帧的代表虚拟扬声器集合。
如此,编码器可以先判断是否可以复用在先帧的代表虚拟扬声器集合对当前帧进行编码,如果编码器复用在先帧的代表虚拟扬声器集合对当前帧进行编码,从而,避免编码器再执行搜索虚拟扬声器的过程,有效地降低了编码器搜索虚拟扬声器的计算复杂度,因此降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。另外,还可以降低帧与帧之间的虚拟扬声器的频繁跳变,增强了帧之间的方位的连续性,提高了重建后三维音频信号的声像的稳定性,确保重建后三维音频信号的音质。
如果编码器不能复用在先帧的代表虚拟扬声器集合对当前帧进行编码,编码器再选取代表系数,利用当前帧的代表系数对候选虚拟扬声器集合中每个虚拟扬声器进行投票,依据投票值选取当前帧的代表虚拟扬声器,来达到降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担的目的。
在一种可能的实现方式中,获取三维音频信号的当前帧与在先帧的代表虚拟扬声器的第一相关度之后,方法还包括:编码器获取当前帧与候选虚拟扬声器集合的第二相关度,第二相关度用于确定对当前帧进行编码时是否使用候选虚拟扬声器集合,在先帧的代表虚拟扬声器集合是候选虚拟扬声器集合的真子集;复用条件包括:第一相关度大于第二相关度,表示相对候选虚拟扬声器集合,编码器更倾向于复用在先帧的代表虚拟扬声器集合对当前帧进行编码。
可选地,获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度包括:编码器获取当前帧分别与在先帧的代表虚拟扬声器集合中各个在先帧的代表虚拟扬声器的相关度;将各个在先帧的代表虚拟扬声器分别与当前帧的相关度中的最大相关度作为第一相关度。
示例地,在先帧的代表虚拟扬声器集合包括第一虚拟扬声器,获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度,包括:编码器根据当前帧的系数与第一虚拟扬声器的系数确定当前帧与第一虚拟扬声器的相关度。
可选地,获取当前帧与候选虚拟扬声器集合的第二相关度包括:获取当前帧分别与候选虚拟扬声器集合中各个候选虚拟扬声器的相关度;将各个候选虚拟扬声器分别与当前帧的相关度中的最大相关度作为第二相关度。
从而,编码器从多个相关度中选取典型的最大相关度,利用最大相关度判断是否可以复用在先帧的代表虚拟扬声器集合对当前帧进行编码,在确保判断准确的前提下,降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。
在另一种可能的实现方式中,获取三维音频信号的当前帧与在先帧的代表虚拟扬声器的第一相关度之后,方法还包括:获取当前帧与候选虚拟扬声器集合的第一子集的第三相关度,第三相关度用于确定对当前帧进行编码时是否使用候选虚拟扬声器集合的第一子集,第一子集是候选虚拟扬声器集合的真子集;复用条件包括:第一相关度大于第三相关度,表示相对候选虚拟扬声器集合的第一子集,编码器更倾向于复用在先帧的代表虚拟扬声器集合对当前帧进行编码。
在另一种可能的实现方式中,获取三维音频信号的当前帧与在先帧的代表虚拟扬声器的第一相关度之后,方法还包括:编码器获取当前帧与候选虚拟扬声器集合的第二子集的第四相关度,第四相关度用于确定对当前帧进行编码时是否使用候选虚拟扬声器集合的第二子集,第二子集是候选虚拟扬声器集合的真子集;若第一相关度小于或等于第四相关度,获取当前帧与候选虚拟扬声器集合的第三子集的第五相关度,第五相关度用于确定对当前帧进行编码时是否使用候选虚拟扬声器集合的第三子集,第三子集是候选虚拟扬声器集合的真子集,第二子集包括的虚拟扬声器与第三子集包括的虚拟扬声器均不同或部分不同;复用条件包括:第一相关度大于第五相关度,表示相对候选虚拟扬声器集合的第三子集,编码器更倾向于复用在先帧的代表虚拟扬声器集合对当前帧进行编码。如此,编码器对候选虚拟扬声器集合中不同子集进行更充分地多级判断,确保对当前帧进行编码时复用在先帧的代表虚拟扬声器集合的准确性。
在另一种可能的实现方式中,若第一相关度不满足复用条件,方法还包括:编码器获取到三维音频信号的当前帧的第四数量个系数,以及第四数量个系数的频域特征值后,根据第四数量个系数的频域特征值,从第四数量个系数中选取第三数量个代表系数,进而,根据第三数量个代表系数从候选虚拟扬声器集合中选取第二数量个当前帧的代表虚拟扬声器,以及,根据第二数量个当前帧的代表虚拟扬声器对当前帧进行编码,得到码流。其中,所述第四数量个系数包括第三数量个代表系数,第三数量小于第四数量,表示第三数量个代表系数是第四数量个系数中的部分系数。三维音频信号的当前帧为高阶立体混响(higher order ambisonics,HOA)信号;系数的频域特征值是依据HOA信号的系数确定的。
如此,由于编码器从当前帧的全部系数中选取部分系数作为代表系数,利用较少数量的代表系数代替当前帧的全部系数从候选虚拟扬声器集合中选取代表虚拟扬声器,因此有效地降低了编码器搜索虚拟扬声器的计算复杂度,从而降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。
另外,编码器根据第二数量个当前帧的代表虚拟扬声器对当前帧进行编码,得到码流包括:编码器根据第二数量个当前帧的代表虚拟扬声器和当前帧生成虚拟扬声器信号;对虚拟扬声器信号进行编码得到码流。
由于当前帧的系数的频域特征值表征了三维音频信号的声场特性,编码器依据当前帧的系数的频域特征值选取当前帧的具有代表性声场成分的代表系数,利用代表系数从候选虚拟扬声器集合中选取的当前帧的代表虚拟扬声器能够充分地表征三维音频信号的声场特性,从而进一步地提高了编码器利用当前帧的代表虚拟扬声器对待编码的三维音频信号进行压缩编码时生成虚拟扬声器信号的准确性,以便于提升对三维音频信号进行压缩编码的压缩率,降低编码器传输码流所占用的带宽。
在另一种可能的实现方式中,根据第三数量个代表系数从候选虚拟扬声器集合中选取第二数量个当前帧的代表虚拟扬声器,包括:编码器根据当前帧的第三数量个代表系数、候选虚拟扬声器集合和投票轮数确定第一数量个虚拟扬声器和第一数量个投票值,根据第一数量个投票值,从第一数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器,第二数量小于第一数量,表示第二数量个当前帧的代表虚拟扬声器是候选虚拟扬声器集合中的部分虚拟扬声器。可理解的,虚拟扬声器与投票值一一对应。例如,第一数量个虚拟扬声器包括第一虚拟扬声器,第一数量个投票值包括第一虚拟扬声器的投票值,第一虚拟扬声器与第一虚拟扬声器的投票值对应。第一虚拟扬声器的投票值用于表征对当前帧进行编码时使用第一虚拟扬声器的优先级。候选虚拟扬声器集合包括第五数量个虚拟扬声器,第五数量个虚拟扬声器包括第一数量个虚拟扬声器,第一数量小于或等于第五数量,投票轮数为大于或等于1的整数,且投票轮数小于或等于第五数量。
目前,在虚拟扬声器搜索过程中,编码器依据待编码的三维音频信号和虚拟扬声器之间的相关计算的结果作为虚拟扬声器的选择衡量指标。而且,若编码器对每一个系数传输一个虚拟扬声器,则无法达到高效数据压缩的目的,会对编码器造成沉重的计算负担。本申请实施例提供的选择虚拟扬声器的方法,编码器利用较少数量的代表系数代替当前帧的全部系数对候选虚拟扬声器集合中每个虚拟扬声器进行投票,依据投票值选取当前帧的代表虚拟扬声器。进而,编码器利用当前帧的代表虚拟扬声器对待编码的三维音频信号进行压缩编码,不仅有效地提升了对三维音频信号进行压缩编码的压缩率,而且降低了编码器搜索虚拟扬声器的计算复杂度,从而降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。
第二数量用于表征编码器选取的当前帧的代表虚拟扬声器的数量。第二数量越大表示当前帧的代表虚拟扬声器的数量越大,三维音频信号的声场信息越多;第二数量越小表示当前帧的代表虚拟扬声器的数量越小,三维音频信号的声场信息越少。因此,可通过设置第二数量控制编码器选取的当前帧的代表虚拟扬声器的数量。例如,第二数量可以是预设的,又如,第二数量可以是根据当前帧确定的。示例地,第二数量的取值可以是1、2、4或8。
在另一种可能的实现方式中,根据第一数量个投票值,从第一数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器包括:编码器根据第一数量个投票值,以及第六数量个在先帧最终投票值,获取第七数量个虚拟扬声器与当前帧对应的第七数量个当前帧最终投票值,根据第七数量个当前帧最终投票值,从第七数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器,第二数量小于第七数量,表示第二数量个当前帧的代表虚拟扬声器是第七数量个虚拟扬声器中的部分虚拟扬声器。其中,第七数量个虚拟扬声器包括第一数量个虚拟扬声器,且第七数量个虚拟扬声器包括第六数量个虚拟扬声器,第六数量个虚拟扬声器包含的虚拟扬声器为对三维音频信号的在先帧进行编码所使用的在先帧的代表虚拟扬声器。在先帧的代表虚拟扬声器集合包含的第六数量个虚拟扬声器与所述第六数量个在先帧最终投票值一一对应。
在虚拟扬声器搜索过程中,由于真实声源的位置与虚拟扬声器的位置不一定重合,会导致虚拟扬声器不一定能够与真实声源形成一一对应关系,且由于在实际的复杂场景下,可能出现有限数量的虚拟扬声器集合无法表征声场中所有声源的情况,此时,帧与帧之间搜索到的虚拟扬声器可能会发生频繁跳变,这种跳变会明显地影响听音者的听觉感受,导致解码重建后三维音频信号中出现明显的不连续和噪声现象。本申请的实施例提供的选择虚拟扬声器的方法通过继承在先帧的代表虚拟扬声器,即对于相同编号的虚拟扬声器,用在先帧最终投票值调整当前帧初始投票值,使得编码器更倾向于选择在先帧的代表虚拟扬声器,从而降低帧与帧之间的虚拟扬声器的频繁跳变,增强了帧之间的信号方位的连续性,提高了重建后三维音频信号的声像的稳定性,确保重建后三维音频信号的音质。
可选地,方法还包括:编码器还可以采集三维音频信号的当前帧,以便于对三维音频信号的当前帧进行压缩编码得到码流,将码流传输至解码端。
第二方面,本申请提供了一种三维音频信号编码装置,所述装置包括用于执行第一方面或第一方面任一种可能设计中的三维音频信号编码方法的各个模块。例如,三维音频信号编码装置包括虚拟扬声器选择模块和编码模块。所述虚拟扬声器选择模块,用于获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度,在先帧的代表虚拟扬声器集合中的虚拟扬声器为对三维音频信号的在先帧进行编码所使用的虚拟扬声器,第一相关度用于确定对当前帧进行编码时是否复用在先帧的代表虚拟扬声器集合;所述编码模块,用于若第一相关度满足复用条件,根据在先帧的代表虚拟扬声器集合对当前帧进行编码,得到码流。
第三方面,本申请提供一种编码器,该编码器包括至少一个处理器和存储器,其中,所述存储器用于存储一组计算机指令;当处理器执行所述一组计算机指令时,执行第一方面或第一方面任一种可能实现方式中的三维音频信号编码方法的操作步骤。
第四方面,本申请提供一种系统,系统包括如第三方面所述的编码器,以及解码器,所述编码器用于执行第一方面或第一方面任一种可能实现方式中的三维音频信号编码方法的操作步骤,所述解码器用于解码所述编码器生成的码流。
第五方面,本申请提供一种计算机可读存储介质,包括:计算机软件指令;当计算机软件指令在编码器中运行时,使得编码器执行如第一方面或第一方面任意一种可能的实现方式中所述方法的操作步骤。
第六方面,本申请提供一种计算机程序产品,当计算机程序产品在编码器上运行时,使得编码器执行如第一方面或第一方面任意一种可能的实现方式中所述方法的操作步骤。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
图1为本申请实施例提供的一种音频编解码系统的结构示意图;
图2为本申请实施例提供的一种音频编解码系统的场景示意图;
图3为本申请实施例提供的一种编码器的结构示意图;
图4为本申请实施例提供的一种三维音频信号编解码方法的流程示意图;
图5为本申请实施例提供的一种选择虚拟扬声器方法的流程示意图;
图6为本申请实施例提供的一种三维音频信号编码方法的流程示意图;
图7为本申请实施例提供的另一种选择虚拟扬声器方法的流程示意图;
图8为本申请实施例提供的另一种选择虚拟扬声器方法的流程示意图;
图9为本申请实施例提供的另一种选择虚拟扬声器方法的流程示意图;
图10为本申请提供的一种编码装置的结构示意图;
图11为本申请提供的一种编码器的结构示意图。
具体实施方式
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍。
声音(sound)是由物体振动产生的一种连续的波。产生振动而发出声波的物体称为声源。声波通过介质(如:空气、固体或液体)传播的过程中,人或动物的听觉器官能感知到声音。
声波的特征包括音调、音强和音色。音调表示声音的高低。音强表示声音的大小。音强也可以称为响度或音量。音强的单位是分贝(decibel,dB)。音色又称为音品。
声波的频率决定了音调的高低。频率越高音调越高。物体在一秒钟之内振动的次数称为频率,频率单位是赫兹(hertz,Hz)。人耳能识别的声音的频率在20Hz~20000Hz之间。
声波的幅度决定了音强的强弱。幅度越大音强越大。距离声源越近,音强越大。
声波的波形决定了音色。声波的波形包括方波、锯齿波、正弦波和脉冲波等。
根据声波的特征,声音可以分为规则声音和无规则声音。无规则声音是指声源无规则地振动发出的声音。无规则声音例如是影响人们工作、学习和休息等的噪声。规则声音是指声源规则地振动发出的声音。规则声音包括语音和乐音。声音用电表示时,规则声音是一种在时频域上连续变化的模拟信号。该模拟信号可以称为音频信号。音频信号是一种携带语音、音乐和音效的信息载体。
由于人的听觉具有辨别空间中声源的位置分布的能力,则听音者听到空间中的声音时,除了能感受到声音的音调、音强和音色外,还能感受到声音的方位。
随着人们对听觉系统体验的关注和品质要求与日俱增,为了增强声音的纵深感、临场感和空间感,则三维音频技术应运而生。从而听音者不仅感受到来自前、后、左和右的声源发出的声音,而且感受到自己所处空间被这些声源产生的空间声场(简称“声场”(sound field))所包围的感觉,以及声音向四周扩散的感觉,营造出一种使听音者置身于影院或音乐厅等场所的“身临其境”的音响效果。
三维音频技术是指将人耳以外的空间假设为一个系统,耳膜处接收到的信号为声源发出的声音经过耳朵以外系统滤波输出的三维音频信号。例如,人耳以外的系统可以定义为系统冲击响应h(n),任意一个声源可以定义为x(n),耳膜处接收到的信号为x(n)和h(n)的卷积结果。本申请实施例所述的三维音频信号可以是指高阶立体混响(higher orderambisonics,HOA)信号。三维音频也可以称为三维音效、空间音频、三维声场重建、虚拟3D音频或双耳音频等。
假设人耳以外的空间系统是一个球形,听音者处于球的中心,从球外传来的声音在球面上有一个投影,过滤掉球面以外的声音,假设声源分布在这个球面上,用球面上的声源产生的声场来拟合原始声源产生的声场,即三维音频技术就是一个拟合声场的方法。具体地,在球坐标系下求解公式(1)等式方程,在无源球形区域内,该公式(1)方程解为如下公式(2)。
其中,r表示球半径,θ表示水平角,表示俯仰角,k表示波数,s表示理想平面波的幅度,m表示三维音频信号的阶数序号(或称为HOA信号的阶数序号)。表示球贝塞尔函数,球贝塞尔函数又称为径向基函数,其中,第一个j表示虚数单位,不随角度变化。表示θ,方向的球谐函数,表示声源方向的球谐函数。三维音频信号系数满足公式(3)。
将公式(3)代入公式(2),公式(2)可以变形为公式(4)。
其中,表示N阶的三维音频信号系数,用于近似描述声场。声场是指介质中有声波存在的区域。N为大于或等于1的整数。比如,N的取值范围为2至6的整数。本申请的实施例所述的三维音频信号的系数可以是指HOA系数或环境立体声(ambisonic)系数。
三维音频信号是一种携带声场中声源的空间位置信息的信息载体,描述了空间中听音者的声场。公式(4)表明声场可以在球面上按球谐函数展开,即声场可以分解为多个平面波的叠加。因此,可以将三维音频信号描述的声场使用多个平面波的叠加来表达,并通过三维音频信号系数重建声场。
相对5.1声道的音频信号或7.1声道的音频信号,由于N阶的HOA信号有(N+1)2个声道,则HOA信号包括用于描述声场的空间信息的数据量较多。若采集设备(比如:麦克风)将该三维音频信号传输到回放设备(比如:扬声器),需要消耗较大的带宽。目前,编码器可以利用空间压缩环绕音频编码(spatial squeezed surround audio coding,S3AC)或定向音频编码(directional audio coding,DirAC)对三维音频信号进行压缩编码得到码流,向回放设备传输码流。回放设备对码流进行解码,并重建三维音频信号,播放重建后三维音频信号。从而降低向回放设备传输三维音频信号的数据量,以及带宽的占用。但是,编码器对三维音频信号进行压缩编码的计算复杂度较高,占用编码器过多的计算资源。因此,如何降低对三维音频信号进行压缩编码的计算复杂度是一个亟待解决的问题。
本申请实施例提供一种音频编解码技术,尤其是提供一种面向三维音频信号的三维音频编解码技术,具体提供一种采用较少的声道表示三维音频信号的编解码技术,以改进传统的音频编解码系统。音频编码(或通常称为编码)包括音频编码和音频解码两部分。音频编码在源侧执行,通常包括处理(例如,压缩)原始音频以减少表示该原始音频所需的数据量,从而更高效地存储和/或传输。音频解码在目的侧执行,通常包括相对于编码器作逆处理,以重建原始音频。编码部分和解码部分也合称为编解码。下面将结合附图对本申请实施例的实施方式进行详细描述。
图1为本申请实施例提供的一种音频编解码系统的结构示意图。音频编解码系统100包括源设备110和目的设备120。源设备110用于对三维音频信号进行压缩编码得到码流,向目的设备120传输码流。目的设备120对码流进行解码,并重建三维音频信号,播放重建后三维音频信号。
具体地,源设备110包括音频获取器111、预处理器112、编码器113和通信接口114。
音频获取器111用于获取原始音频。音频获取器111可以是任意类型的用于捕获现实世界声音的音频采集设备,和/或任意类型的音频生成设备。音频获取器111例如是用于生成计算机音频的计算机音频处理器。音频获取器111也可以为存储音频的任意类型的内存或存储器。音频包括现实世界声音、虚拟场景(如:VR或增强现实(augmented reality,AR))声音和/或其任意组合。
预处理器112用于接收音频获取器111采集的原始音频,并对原始音频进行预处理,得到三维音频信号。例如,预处理器112执行的预处理包括声道转换、音频格式转换或去噪声等。
编码器113用于接收预处理器112生成的三维音频信号,对三维音频信号进行压缩编码得到码流。示例地,编码器113可以包括空间编码器1131和核心编码器1132。空间编码器1131用于根据三维音频信号从候选虚拟扬声器集合选取(或称为搜索)虚拟扬声器,根据三维音频信号和虚拟扬声器生成虚拟扬声器信号。虚拟扬声器信号也可以称为回放信号。核心编码器1132用于对虚拟扬声器信号进行编码,得到码流。
通信接口114用于接收编码器113生成的码流,通过通信信道130向目的设备120发送码流,以便于目的设备120根据码流重建三维音频信号。
目的设备120包括播放器121、后处理器122、解码器123和通信接口124。
通信接口124用于接收通信接口114发送的码流,并将码流传输给解码器123。以便于解码器123根据码流重建三维音频信号。
通信接口114和通信接口124可用于通过源设备110与目的设备120之间的直连通信链路,例如直接有线或无线连接等,或者通过任意类型的网络,例如有线网络、无线网络或其任意组合、任意类型的私网和公网或其任意类型的组合,发送或接收原始音频的相关数据。
通信接口114和通信接口124均可配置为如图1中从源设备110指向目的设备120的对应通信信道130的箭头所指示的单向通信接口,或双向通信接口,并且可用于发送和接收消息等,以建立连接,确认并交换与通信链路和/或例如编码后的码流传输等数据传输相关的任何其它信息,等等。
解码器123用于对码流进行解码,并重建三维音频信号。示例地,解码器123包括核心解码器1231和空间解码器1232。核心解码器1231用于对码流进行解码,得到虚拟扬声器信号。空间解码器1232用于根据候选虚拟扬声器集合和虚拟扬声器信号重建三维音频信号,得到重建后三维音频信号。
后处理器122用于接收解码器123生成的重建后三维音频信号,对重建后三维音频信号进行后处理。例如,后处理器122执行的后处理包括音频渲染、响度归一化、用户交互、音频格式转换或去噪声等。
播放器121用于根据重建后三维音频信号播放重建的声音。
需要说明的是,音频获取器111和编码器113可以集成在一个物理设备上,也可以设置在不同的物理设备上,不予限定。示例地,如图1所示的源设备110包括音频获取器111和编码器113,表示音频获取器111和编码器113集成在一个物理设备上,则源设备110也可称为采集设备。源设备110例如是无线接入网的媒体网关、核心网的媒体网关、转码设备、媒体资源服务器、AR设备、VR设备、麦克风或者其他采集音频设备。若源设备110不包括音频获取器111,表示音频获取器111和编码器113是两个不同的物理设备,源设备110可以从其他设备(如:采集音频设备或存储音频设备)获取原始音频。
另外,播放器121和解码器123可以集成在一个物理设备上,也可以设置在不同的物理设备上,不予限定。示例地,如图1所示的目的设备120包括播放器121和解码器123,表示播放器121和解码器123集成在一个物理设备上,则目的设备120也可称为回放设备,目的设备120具有解码和播放重建音频的功能。目的设备120例如是扬声器、耳机或其他播放音频的设备。若目的设备120不包括播放器121,表示播放器121和解码器123是两个不同的物理设备,目的设备120对码流解码重建三维音频信号后,将重建后三维音频信号传输给其他播放设备(如:扬声器或耳机),由其他播放设备回放重建后三维音频信号。
此外,图1示出了源设备110和目的设备120可以集成在一个物理设备上,也可以设置在不同的物理设备上,不予限定。
示例地,如图2中的(a)所示,源设备110可以是录音棚中的麦克风,目的设备120可以是扬声器。源设备110可以采集各种乐器的原始音频,将原始音频传输至编解码设备,编解码设备对原始音频进行编解码处理,得到重建后三维音频信号,由目的设备120回放重建后三维音频信号。又示例地,源设备110可以是终端设备中的麦克风,目的设备120可以是耳机。源设备110可以采集外界的声音或终端设备合成的音频。
又示例地,如图2中的(b)所示,源设备110和目的设备120集成在虚拟现实(virtual reality,VR)设备、增强现实(Augmented Reality,AR)设备、混合现实(MixedReality,MR)设备或扩展现实(Extended Reality,XR)设备中,则VR/AR/MR/XR设备具备采集原始音频、回放音频和编解码的功能。源设备110可以采集用户发出的声音和用户所处的虚拟环境中虚拟物体发出的声音。
在这些实施例中,源设备110或其对应功能和目的设备120或其对应功能可以使用相同硬件和/或软件或通过单独的硬件和/或软件或其任意组合来实现。根据描述,图1所示的源设备110和/或目的设备120中的不同单元或功能的存在和划分可能根据实际设备和应用而有所不同,这对技术人员来说是显而易见的。
上述音频编解码系统的结构只是示意性说明,在一些可能的实现方式中,音频编解码系统还可以包括其他设备,例如,音频编解码系统还可以包括端侧设备或云侧设备。源设备110采集到原始音频后,对原始音频进行预处理,得到三维音频信号;并将三维音频传输至端侧设备或云侧设备,由端侧设备或云侧设备实现对三维音频信号进行编解码的功能。
本申请实施例提供的音频信号编解码方法主要应用于编码端。结合图3对编码器的结构进行详细说明。如图3所示,编码器300包括虚拟扬声器配置单元310、虚拟扬声器集合生成单元320、编码分析单元330、虚拟扬声器选择单元340、虚拟扬声器信号生成单元350和编码单元360。
虚拟扬声器配置单元310用于根据编码器配置信息生成虚拟扬声器配置参数,以便得到多个虚拟扬声器。编码器配置信息包括但不限于:三维音频信号的阶数(或通常称为HOA阶数),编码比特率,用户自定义信息,等。虚拟扬声器配置参数包括但不限于:虚拟扬声器的数量,虚拟扬声器的阶数,虚拟扬声器的位置坐标,等。虚拟扬声器的数量例如是2048、1669、1343、1024、530、512、256、128或64等。虚拟扬声器的阶数可以是2阶至6阶中任一个。虚拟扬声器的位置坐标包括水平角和俯仰角。
虚拟扬声器配置单元310输出的虚拟扬声器配置参数作为虚拟扬声器集合生成单元320的输入。
虚拟扬声器集合生成单元320用于根据虚拟扬声器配置参数生成候选虚拟扬声器集合,候选虚拟扬声器集合包括多个虚拟扬声器。具体地,虚拟扬声器集合生成单元320根据虚拟扬声器的数量确定了候选虚拟扬声器集合包括的多个虚拟扬声器,以及根据虚拟扬声器的位置信息(如:坐标)和虚拟扬声器的阶数确定虚拟扬声器的系数。示例地,虚拟扬声器的坐标确定方法包括但不限于:按等距规则产生多个虚拟扬声器,或者根据听觉感知原理生成非均匀分布的多个虚拟扬声器;然后,根据虚拟扬声器的数量生成虚拟扬声器的坐标。
编码分析单元330用于对三维音频信号进行编码分析,例如分析三维音频信号的声场分布特征,即三维音频信号的声源数量、声源的方向性和声源的弥散度等特征。
虚拟扬声器集合生成单元320输出的候选虚拟扬声器集合包括的多个虚拟扬声器的系数作为虚拟扬声器选择单元340的输入。
编码分析单元330输出的三维音频信号的声场分布特征作为虚拟扬声器选择单元340的输入。
虚拟扬声器选择单元340用于根据待编码的三维音频信号、三维音频信号的声场分布特征和多个虚拟扬声器的系数确定与三维音频信号匹配的代表虚拟扬声器。
不限定的是,本申请实施例的编码器300还可以不包括编码分析单元330,即编码器300可以不对输入信号进行分析,虚拟扬声器选择单元340采用一种默认配置确定代表虚拟扬声器。例如,虚拟扬声器选择单元340仅根据三维音频信号和多个虚拟扬声器的系数确定与三维音频信号匹配的代表虚拟扬声器。
其中,编码器300可以将从采集设备获取的三维音频信号或采用人工音频对象合成的三维音频信号作为编码器300的输入。另外,编码器300输入的三维音频信号可以是时域三维音频信号也可以是频域三维音频信号,不予限定。
虚拟扬声器选择单元340输出的代表虚拟扬声器的位置信息和代表虚拟扬声器的系数作为虚拟扬声器信号生成单元350和编码单元360的输入。
虚拟扬声器信号生成单元350用于根据三维音频信号和代表虚拟扬声器的属性信息生成虚拟扬声器信号。代表虚拟扬声器的属性信息包括代表虚拟扬声器的位置信息、代表虚拟扬声器的系数和三维音频信号的系数中至少一个。若属性信息为代表虚拟扬声器的位置信息,根据代表虚拟扬声器的位置信息确定代表虚拟扬声器的系数;若属性信息包括三维音频信号的系数,根据三维音频信号的系数获取代表虚拟扬声器的系数。具体地,虚拟扬声器信号生成单元350根据三维音频信号的系数和代表虚拟扬声器的系数计算虚拟扬声器信号。
示例地,假设矩阵A表示虚拟扬声器的系数,矩阵X表示HOA信号的HOA系数。矩阵X为矩阵A的逆矩阵。采用最小二乘方法求得理论的最优解w,w表示虚拟扬声器信号。虚拟扬声器信号满足公式(5)。
w=A-1X 公式(5)
其中,A-1表示矩阵A的逆矩阵。矩阵A的大小为(M×C),C表示代表虚拟扬声器的数量,M表示N阶的HOA信号的声道的数量,a表示代表虚拟扬声器的系数,矩阵X的大小为(M×L),L表示HOA信号的系数的数量,x表示HOA信号的系数。代表虚拟扬声器的系数可以是指代表虚拟扬声器的HOA系数或代表虚拟扬声器的ambisonics系数。例如,
虚拟扬声器信号生成单元350输出的虚拟扬声器信号作为编码单元360的输入。
编码单元360用于对虚拟扬声器信号进行核心编码处理,得到码流。核心编码处理包括但不限于:变换、量化、心理声学模型、噪声整形、带宽扩展、下混、算数编码、码流产生等。
值得注意的是,空间编码器1131可以包括虚拟扬声器配置单元310、虚拟扬声器集合生成单元320、编码分析单元330、虚拟扬声器选择单元340和虚拟扬声器信号生成单元350,即虚拟扬声器配置单元310、虚拟扬声器集合生成单元320、编码分析单元330、虚拟扬声器选择单元340和虚拟扬声器信号生成单元350实现了空间编码器1131的功能。核心编码器1132可以包括编码单元360,即编码单元360实现了核心编码器1132的功能。
图3所示的编码器可以生成一个虚拟扬声器信号,也可以生成多个虚拟扬声器信号。多个虚拟扬声器信号可以由图3所示的编码器多次执行得到,也可以由图3所示的编码器一次执行得到。
接下来,结合附图对三维音频信号的编解码过程进行说明。图4为本申请实施例提供的一种三维音频信号编解码方法的流程示意图。在这里由图1中源设备110和目的设备120执行三维音频信号编解码过程为例进行说明。如图4所示,该方法包括以下步骤。
S410、源设备110获取三维音频信号的当前帧。
如上述实施例所述,若源设备110携带音频获取器111,源设备110可以通过音频获取器111采集原始音频。可选地,源设备110也可以接收其他设备采集的原始音频;或者从源设备110中的存储器或其他存储器获取原始音频。原始音频可以包括实时采集的现实世界声音、设备存储的音频和由多个音频合成的音频中至少一种。本实施例对原始音频的获取方式以及原始音频的类型不予限定。
源设备110获取到原始音频后,根据三维音频技术和原始音频生成三维音频信号,以便于回放原始音频时,为听音者提供“身临其境”的音响效果。生成三维音频信号的具体方法可以参考上述实施例中预处理器112的阐述和现有技术的阐述。
另外,音频信号是一个连续的模拟信号。在音频信号处理过程中,可以先对音频信号进行采样,生成帧序列的数字信号。帧可以包括多个采样点。帧也可以指采样得到的采样点。帧也可以包括对帧划分得到的子帧。帧也可以指对帧划分得到的子帧。例如一帧长度为L个采样点,划分为N个子帧,那么每个子帧对应L/N个采样点。音频编解码通常是指处理包含多个采样点的音频帧序列。
音频帧可以包括当前帧或在先帧。本申请的各个实施例所述的当前帧或在先帧可以是指帧或是子帧。当前帧是指在当前时刻进行编解码处理的帧。在先帧是指在当前时刻之前时刻已进行编解码处理的帧。在先帧可以是当前时刻的前一时刻或者前多个时刻的帧。本申请的实施例中,三维音频信号的当前帧是指在当前时刻进行编解码处理的一帧三维音频信号。在先帧是指在当前时刻之前时刻已进行编解码处理的一帧三维音频信号。三维音频信号的当前帧可以是指三维音频信号的待编码当前帧。三维音频信号的当前帧可以简称为当前帧。三维音频信号的在先帧可以简称为在先帧。
S420、源设备110确定候选虚拟扬声器集合。
在一种情形下,源设备110的存储器中预先配置有候选虚拟扬声器集合。源设备110可以从存储器中读取候选虚拟扬声器集合。候选虚拟扬声器集合包括多个虚拟扬声器。虚拟扬声器表示空间声场中虚拟存在的扬声器。虚拟扬声器用于根据三维音频信号计算虚拟扬声器信号,以便于目的设备120回放重建后三维音频信号。
在另一种情形下,源设备110的存储器中预先配置有虚拟扬声器配置参数。源设备110根据虚拟扬声器配置参数生成候选虚拟扬声器集合。可选地,源设备110根据自身的计算资源(如:处理器)能力和当前帧的特征(如:信道和数据量)实时生成候选虚拟扬声器集合。
生成候选虚拟扬声器集合的具体方法可以参考现有技术,以及上述实施例中虚拟扬声器配置单元310和虚拟扬声器集合生成单元320的阐述。
S430、源设备110根据三维音频信号的当前帧,从候选虚拟扬声器集合中选取当前帧的代表虚拟扬声器。
源设备110根据当前帧的系数与虚拟扬声器的系数对虚拟扬声器进行投票,根据虚拟扬声器的投票值从候选虚拟扬声器集合中选择当前帧的代表虚拟扬声器。从候选虚拟扬声器集合中搜索有限数量的当前帧的代表虚拟扬声器,作为待编码的当前帧的最佳匹配虚拟扬声器,从而实现对待编码的三维音频信号进行数据压缩的目的。
图5为本申请实施例提供的一种选择虚拟扬声器方法的流程示意图。图5所述的方法流程是对图4中S430所包括的具体操作过程的阐述。在这里由图1所示的源设备110中编码器113执行选择虚拟扬声器过程为例进行说明。具体地实现虚拟扬声器选择单元340的功能。如图5所示,该方法包括以下步骤。
S510、编码器113获取当前帧的代表系数。
代表系数可以是指频域代表系数或时域代表系数。频域代表系数也可以称为频域代表频点或频谱代表系数。时域代表系数也可以称为时域代表采样点。获取当前帧的代表系数的具体方法可以参考下述图8中S650和S660的阐述。
S520、编码器113根据当前帧的代表系数对候选虚拟扬声器集合中虚拟扬声器的投票值,从候选虚拟扬声器集合中选取当前帧的代表虚拟扬声器。执行S440至S460。
编码器113根据当前帧的代表系数与虚拟扬声器的系数对候选虚拟扬声器集合中的虚拟扬声器进行投票,根据虚拟扬声器的当前帧最终投票值从候选虚拟扬声器集合中选择(搜索)当前帧的代表虚拟扬声器。选取当前帧的代表虚拟扬声器的具体方法可以参考下述图6、图8和图9中S670的阐述。
需要说明的是,编码器先遍历候选虚拟扬声器集合包含的虚拟扬声器,利用从候选虚拟扬声器集合中选取的当前帧的代表虚拟扬声器对当前帧进行压缩。但是,若连续帧选取的虚拟扬声器的结果差异较大,会导致重建后三维音频信号的声像不稳定,降低重建后三维音频信号的音质。在本申请的实施例中,编码器113可以依据在先帧的代表虚拟扬声器的在先帧最终投票值对候选虚拟扬声器集合包含的虚拟扬声器的当前帧初始投票值进行更新处理,得到虚拟扬声器的当前帧最终投票值,则根据虚拟扬声器的当前帧最终投票值从候选虚拟扬声器集合中选取当前帧的代表虚拟扬声器。从而,通过参考在先帧的代表虚拟扬声器来选取当前帧的代表虚拟扬声器,使编码器对当前帧选择当前帧的代表虚拟扬声器时倾向于选择与在先帧的代表虚拟扬声器相同的虚拟扬声器,增加连续帧之间的方位的连续性,克服了连续帧选取的虚拟扬声器的结果差异较大的问题。因此,本申请的实施例还可以包括S530。
S530、编码器113根据在先帧的代表虚拟扬声器的在先帧最终投票值调整候选虚拟扬声器集合中虚拟扬声器的当前帧初始投票值,获得虚拟扬声器的当前帧最终投票值。
编码器113根据当前帧的代表系数与虚拟扬声器的系数对候选虚拟扬声器集合中的虚拟扬声器进行投票,得到虚拟扬声器的当前帧初始投票值后,根据在先帧的代表虚拟扬声器的在先帧最终投票值调整候选虚拟扬声器集合中虚拟扬声器的当前帧初始投票值,获得虚拟扬声器的当前帧最终投票值。在先帧的代表虚拟扬声器为编码器113对在先帧进行编码时使用的虚拟扬声器。调整候选虚拟扬声器集合中虚拟扬声器的当前帧初始投票值的具体方法可以参考下述图9中S6702a至S6702b的阐述。
在一些实施例中,若当前帧是原始音频中第一帧,编码器113执行S510至S520。若当前帧是原始音频中第二帧以上的任意一帧,编码器113可以先判断是否复用在先帧的代表虚拟扬声器对当前帧进行编码或判断是否进行虚拟扬声器搜索,确保连续帧之间的方位的连续性,并降低编码复杂度。本申请的实施例还可以包括S540。
S540、编码器113根据在先帧的代表虚拟扬声器和当前帧判断是否进行虚拟扬声器搜索。
若编码器113确定进行虚拟扬声器搜索,执行S510至S530。可选地,编码器113可以先执行S510,即编码器113获取当前帧的代表系数,编码器113根据当前帧的代表系数和在先帧的代表虚拟扬声器的系数判断是否进行虚拟扬声器搜索,若编码器113确定进行虚拟扬声器搜索,再执行S520至S530。
若编码器113确定不进行虚拟扬声器搜索,执行S550。
S550、编码器113确定复用在先帧的代表虚拟扬声器对当前帧进行编码。
编码器113复用在先帧的代表虚拟扬声器和当前帧生成虚拟扬声器信号,对虚拟扬声器信号进行编码得到码流,向目的设备120发送码流,即执行S450和S460。
判断是否进行虚拟扬声器搜索的具体方法可以参考下述图6中S610至S640的阐述。
S440、源设备110根据三维音频信号的当前帧和当前帧的代表虚拟扬声器生成虚拟扬声器信号。
源设备110根据当前帧的系数和当前帧的代表虚拟扬声器的系数生成虚拟扬声器信号。生成虚拟扬声器信号的具体方法可以参考现有技术,以及上述实施例中虚拟扬声器信号生成单元350的阐述。
S450、源设备110对虚拟扬声器信号进行编码得到码流。
源设备110可以对虚拟扬声器信号进行变换或量化等编码操作,生成码流,从而实现对待编码的三维音频信号进行数据压缩的目的。生成码流的具体方法可以参考现有技术,以及上述实施例中编码单元360的阐述。
S460、源设备110向目的设备120发送码流。
源设备110可以对原始音频全部编码完成后,向目的设备120发送原始音频的码流。或者,源设备110也可以以帧为单位,实时对三维音频信号进行编码处理,对一帧编码完成后发送一帧的码流。发送码流的具体方法可以参考现有技术,以及上述实施例中通信接口114和通信接口124的阐述。
S470、目的设备120对源设备110发送的码流进行解码,重建三维音频信号,得到重建后三维音频信号。
目的设备120接收到码流后,对码流进行解码得到虚拟扬声器信号,再根据候选虚拟扬声器集合和虚拟扬声器信号重建三维音频信号,得到重建后三维音频信号。目的设备120回放重建后三维音频信号。或者,目的设备120将重建后三维音频信号传输给其他播放设备,由其他播放设备播放重建后三维音频信号,使得听音者置身于影院、音乐厅或虚拟场景等场所的“身临其境”的音响效果更加逼真。
目前,在虚拟扬声器搜索过程中,编码器依据待编码的三维音频信号和虚拟扬声器之间的相关计算的结果作为虚拟扬声器的选择衡量指标。而且,若编码器对每一个系数传输一个虚拟扬声器,则无法达到数据压缩的目的,且会对编码器造成沉重的计算负担。编码器可以先判断是否可以复用在先帧的代表虚拟扬声器集合对当前帧进行编码,如果编码器复用在先帧的代表虚拟扬声器集合对当前帧进行编码,从而,避免编码器再执行搜索虚拟扬声器过程,有效地降低了编码器搜索虚拟扬声器的计算复杂度,因此降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。如果编码器不能复用在先帧的代表虚拟扬声器集合对当前帧进行编码,编码器再选取代表系数,利用当前帧的代表系数对候选虚拟扬声器集合中每个虚拟扬声器进行投票,依据投票值选取当前帧的代表虚拟扬声器,来达到降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担的目的。
接下来,结合附图对选择虚拟扬声器的过程进行详细说明。图6为本申请实施例提供的一种三维音频信号编码方法的流程示意图。在这里由图1中源设备110中编码器113执行选择虚拟扬声器过程为例进行说明。其中,图6所述的方法流程是对图5中S540所包括的具体操作过程的阐述。如图6所示,该方法包括以下步骤。
S610、编码器113获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度。
在先帧的代表虚拟扬声器集合中的虚拟扬声器为对三维音频信号的在先帧进行编码所使用的虚拟扬声器。第一相关度用于确定对当前帧进行编码时是否复用在先帧的代表虚拟扬声器集合。可理解的,在先帧的代表虚拟扬声器集合的第一相关度越大,表示在先帧的代表虚拟扬声器集合的倾向性越高,编码器113更倾向选择在先帧的代表虚拟扬声器对当前帧进行编码。
在一些实施例中,编码器113可以获取当前帧分别与在先帧的代表虚拟扬声器集合中各个在先帧的代表虚拟扬声器的相关度;对各个在先帧的代表虚拟扬声器的相关度进行排序,将各个在先帧的代表虚拟扬声器分别与当前帧的相关度中的最大相关度作为第一相关度。
对于在先帧的代表虚拟扬声器集合中任意一个在先帧的代表虚拟扬声器,编码器113可以根据当前帧的系数与在先帧的代表虚拟扬声器的系数确定当前帧与在先帧的代表虚拟扬声器的相关度。假设在先帧的代表虚拟扬声器集合包括第一虚拟扬声器,编码器113可以根据当前帧的系数与第一虚拟扬声器的系数确定当前帧与第一虚拟扬声器的相关度。
当前帧与虚拟扬声器的相关度满足如下公式(6)。
当前帧的系数可以根据当前帧包含的系数的系数取值和系数数量的比值确定的。当前帧的系数满足公式(7)。
其中,j=1,2…L,表示j的取值范围为1至L,L表示当前帧的系数的数量,x表示当前帧的系数。
可选地,编码器113也可以根据如下S650和S660所述的方法选取第三数量个代表系数,将第三数量个代表系数中最大的代表系数作为获取第一相关度的当前帧的系数。
S620、编码器113判断第一相关度是否满足复用条件。
复用条件为编码器113对三维音频信号的当前帧进行编码复用在先虚拟扬声器的依据。
若第一相关度满足复用条件,表示编码器113更倾向选择在先帧的代表虚拟扬声器对当前帧进行编码,编码器113执行S630和S640。
若第一相关度不满足复用条件,表示编码器113更倾向进行虚拟扬声器搜索,根据当前帧的代表虚拟扬声器对当前进行编码,编码器113执行S650至S680。
可选地,编码器113也可以在根据第四数量个系数的频域特征值,从第四数量个系数中选取第三数量个代表系数之后,将第三数量个代表系数中最大的代表系数作为获取第一相关度的当前帧的系数,则编码器113获取当前帧的第三数量个代表系数中最大的代表系数与在先帧的代表虚拟扬声器集合的第一相关度,若第一相关度不满足复用条件,执行S660,即编码器113根据第四数量个系数的频域特征值,从第四数量个系数中选取第三数量个代表系数。
S630、编码器113根据在先帧的代表虚拟扬声器集合和当前帧生成虚拟扬声器信号。
编码器113根据当前帧的系数和在先帧的代表虚拟扬声器的系数生成虚拟扬声器信号。生成虚拟扬声器信号的具体方法可以参考现有技术,以及上述实施例中虚拟扬声器信号生成单元350的阐述。
S640、编码器113对虚拟扬声器信号进行编码得到码流。
编码器113可以对虚拟扬声器信号进行变换或量化等编码操作,生成码流,向目的设备120发送码流。从而实现对待编码的三维音频信号进行数据压缩的目的。生成码流的具体方法可以参考现有技术,以及上述实施例中编码单元360的阐述。
本申请实施例提供了编码器113判断第一相关度是否满足复用条件的二种可能实现方式,下面对二种方式分别进行详述。
在第一种可能的实现方式中,编码器113根据第一相关度与相关度阈值进行比较,若第一相关度大于相关度阈值,编码器113根据在先帧的代表虚拟扬声器集合包含的在先帧的代表虚拟扬声器对当前帧进行编码,生成码流,即执行S630和S640。若第一相关度小于或等于相关度阈值,编码器113从候选虚拟扬声器集合中选择当前帧的代表虚拟扬声器,即执行S650至S680。复用条件包括:第一相关度大于相关度阈值。相关度阈值可以是预先配置的。
在第二种可能的实现方式中,编码器113还可以获取当前帧与候选虚拟扬声器集合包含的虚拟扬声器的相关度,根据第一相关度和候选虚拟扬声器集合包含的虚拟扬声器的相关度判断是否复用在先帧的代表虚拟扬声器集合对当前帧进行编码。
图7为本申请实施例提供的一种判断是否进行虚拟扬声器搜索的方法的流程示意图。其中,图7所述的方法流程是对图6中S620所包括的具体操作过程的阐述。在编码器113获取三维音频信号的当前帧与在先帧的代表虚拟扬声器的第一相关度,即S650之后,编码器113还可以执行S6201和S6202,或者执行S6203和S6204,或者执行S6205至S6208。
S6201、编码器113获取当前帧与候选虚拟扬声器集合的第二相关度。
第二相关度用于表征对当前帧进行编码时使用候选虚拟扬声器集合的优先级。可理解的,候选虚拟扬声器集合的第二相关度越大,表示候选虚拟扬声器集合的优先级越高或倾向性越高,编码器113更倾向选择候选虚拟扬声器集合对当前帧进行编码。
在先帧的代表虚拟扬声器集合是候选虚拟扬声器集合的真子集,表示候选虚拟扬声器集合包括在先帧的代表虚拟扬声器集合,在先帧的代表虚拟扬声器集合包含的所有在先帧的代表虚拟扬声器均属于候选虚拟扬声器集合。
在一些实施例中,编码器113可以获取当前帧分别与候选虚拟扬声器集合中各个候选虚拟扬声器的相关度;对各个候选虚拟扬声器的相关度进行排序,将各个候选虚拟扬声器分别与当前帧的相关度中的最大相关度作为第二相关度。
对于候选虚拟扬声器集合中任意一个候选虚拟扬声器,编码器113可以根据当前帧的系数与候选虚拟扬声器的系数确定当前帧与候选虚拟扬声器的相关度。当前帧与候选虚拟扬声器的相关度满足公式(6)。需要说明的是,也可以表示候选虚拟扬声器的系数,Q也可以表示候选虚拟扬声器集合中候选虚拟扬声器的数量。
S6202、编码器113判断第一相关度是否大于第二相关度。
若第一相关度大于第二相关度,编码器113执行S630和S640。
若第一相关度小于或等于第二相关度,编码器113执行S650至S680。
复用条件包括:第一相关度大于第二相关度。
在另一种情形下,编码器113还可以获取当前帧与候选虚拟扬声器集合中子集包含的虚拟扬声器的相关度,根据第一相关度和候选虚拟扬声器集合中子集包含的虚拟扬声器的相关度判断是否复用在先帧的代表虚拟扬声器集合对当前帧进行编码。执行S6203和S6204。
S6203、编码器113获取当前帧与候选虚拟扬声器集合的第一子集的第三相关度。
第三相关度用于表征对当前帧进行编码时使用候选虚拟扬声器集合的第一子集的优先级。可理解的,候选虚拟扬声器集合的第一子集的第三相关度越大,表示候选虚拟扬声器集合的第一子集的优先级越高或倾向性越高,编码器113更倾向选择候选虚拟扬声器集合的第一子集对当前帧进行编码。
第一子集是候选虚拟扬声器集合的真子集,表示候选虚拟扬声器集合包括第一子集,第一子集包含的所有候选虚拟扬声器均属于候选虚拟扬声器集合。
在一些实施例中,编码器113可以获取当前帧分别与候选虚拟扬声器集合的第一子集中各个候选虚拟扬声器的相关度;对各个候选虚拟扬声器的相关度进行排序,将各个候选虚拟扬声器分别与当前帧的相关度中的最大相关度作为第三相关度。
对于候选虚拟扬声器集合的第一子集中任意一个候选虚拟扬声器,编码器113可以根据当前帧的系数与候选虚拟扬声器的系数确定当前帧与候选虚拟扬声器的相关度。当前帧与候选虚拟扬声器的相关度满足公式(6)。需要说明的是,也可以表示第一子集中候选虚拟扬声器的系数,Q也可以表示候选虚拟扬声器集合的第一子集中候选虚拟扬声器的数量。
S6204、编码器113判断第一相关度是否大于第三相关度。
若第一相关度大于第三相关度,编码器113执行S630和S640。
若第一相关度小于或等于第三相关度,编码器113执行S650至S680。
复用条件包括:第一相关度大于第三相关度。
在另一种情形下,编码器113还可以获取当前帧与候选虚拟扬声器集合中多个子集包含的虚拟扬声器的相关度,根据第一相关度和候选虚拟扬声器集合中多个子集包含的虚拟扬声器的相关度进行多轮次判断是否复用在先帧的代表虚拟扬声器集合对当前帧进行编码。执行S6205至S6208。
S6205、编码器113获取当前帧与候选虚拟扬声器集合的第二子集的第四相关度。
第四相关度用于表征对当前帧进行编码时使用候选虚拟扬声器集合的第二子集的优先级。可理解的,候选虚拟扬声器集合的第二子集的第四相关度越大,表示候选虚拟扬声器集合的第二子集的优先级越高或倾向性越高,编码器113更倾向选择候选虚拟扬声器集合的第二子集对当前帧进行编码。
第二子集是候选虚拟扬声器集合的真子集,表示候选虚拟扬声器集合包括第二子集,第二子集包含的所有候选虚拟扬声器均属于候选虚拟扬声器集合。
关于编码器113获取当前帧与候选虚拟扬声器集合的第二子集的第四相关度的具体方法可以参考上述S6203的阐述。
S6206、编码器113判断第一相关度是否大于第四相关度。
若第一相关度大于第四相关度,编码器113执行S630和S640。复用条件包括:第一相关度大于第四相关度。
若第一相关度小于第四相关度,编码器113执行S650至S680。
若第一相关度等于第四相关度,编码器113执行S6207至S6208。可理解的,编码器113还可以继续从候选虚拟扬声器集合中选取其他子集,判断其他子集的第一相关度是否满足复用条件。
S6207、编码器113获取当前帧与候选虚拟扬声器集合的第三子集的第五相关度。
第五相关度用于表征对当前帧进行编码时使用候选虚拟扬声器集合的第三子集的优先级。可理解的,候选虚拟扬声器集合的第三子集的第五相关度越大,表示候选虚拟扬声器集合的第三子集的优先级越高或倾向性越高,编码器113更倾向选择候选虚拟扬声器集合的第三子集对当前帧进行编码。
第三子集是候选虚拟扬声器集合的真子集,表示候选虚拟扬声器集合包括第三子集,第三子集包含的所有候选虚拟扬声器均属于候选虚拟扬声器集合。
关于编码器113获取当前帧与候选虚拟扬声器集合的第三子集的第五相关度的具体方法可以参考上述S6203的阐述。
第二子集包括的虚拟扬声器与第三子集包括的虚拟扬声器均不同或部分不同。例如,第二子集包括第一虚拟扬声器和第二虚拟扬声器,第三子集包括第三虚拟扬声器和第四虚拟扬声器。又如,第二子集包括第一虚拟扬声器和第二虚拟扬声器,第三子集包括第一虚拟扬声器和第四虚拟扬声器。
S6208、编码器113判断第一相关度是否大于第五相关度。
若第一相关度大于第五相关度,编码器113执行S630和S640。复用条件包括:第一相关度大于第五相关度。
若第一相关度小于第五相关度,编码器113执行S650至S680。
若第一相关度等于第五相关度,编码器113执行S6207至S6208。可理解的,编码器113还可以继续从候选虚拟扬声器集合中选取其他子集,判断其他子集的第一相关度是否满足复用条件。
在一些实施例中,若第一相关度等于第五相关度,编码器113可以将在先帧的代表虚拟扬声器分别与当前帧的相关度中的次大相关度作为第一相关度,并获取当前帧与候选虚拟扬声器集合的第四子集的第六相关度,若第一相关度大于第六相关度,编码器113执行S630和S640。复用条件包括:第一相关度大于第六相关度。若第一相关度小于第六相关度,编码器113执行S650至S680。若第一相关度等于第六相关度,编码器113可以继续从候选虚拟扬声器集合中选取其他子集,判断其他子集的第一相关度是否满足复用条件。
需要说明的是,本申请实施例对复用在先帧的代表虚拟扬声器对当前帧进行编码的判断轮次不做限定。另外,对于每一轮次判断中使用的相关度值的数量也不做限定。
此外,编码器113从候选虚拟扬声器集合中选取的子集可以是预先设置的。或者,编码器113对候选虚拟扬声器集合均匀采样得到候选虚拟扬声器集合中的子集。例如,编码器113可以选取候选虚拟扬声器集合中1/10虚拟扬声器作为候选虚拟扬声器集合的子集。各个轮次选取的候选虚拟扬声器集合中的子集包含的虚拟扬声器的数量不予限定。例如,第i+1轮次的子集包含的虚拟扬声器的数量大于第i轮次的子集包含的虚拟扬声器的数量。又如,第i+1轮次的子集包含的虚拟扬声器可以是第i轮次的子集包含的虚拟扬声器所处空间附近的K个虚拟扬声器。比如,第i轮次的子集包含了64个虚拟扬声器,K=32,第i+1轮次的子集包含了64·32中的部分虚拟扬声器。
本申请实施例提供的选择虚拟扬声器的方法,利用当前帧的代表频系数与在先帧的代表虚拟扬声器的相关度判断是否进行虚拟扬声器搜索,在确保当前帧的代表虚拟扬声器的相关度的选择准确度情况下,有效地降低了编码端的复杂度。
通常情况下,典型配置下有2048个虚拟扬声器,在虚拟扬声器搜索过程中,编码器对当前帧的每个系数需要进行2048次投票运算。本申请实施例提供的判断是否进行虚拟扬声器搜索的方法,可以跳过50%以上的虚拟扬声器搜索步骤,提高编码器的编码速率。例如,编码器预计算一组球面上近似均匀分布的64个虚拟扬声器的网格,称为粗扫描网格。对于粗扫描网格上的每个虚拟扬声器进行粗扫描,寻找粗扫描网格上的候选虚拟扬声器,然后在该候选虚拟扬声器上进行第二轮细扫描,得到最终的最佳匹配虚拟扬声器。利用该算法加速之后,原本需要进行的2048次扫描减少到64+64=128次,算法加速2048÷128=16倍。
下面对第一相关度不满足复用条件的情况下,编码器113继续进行虚拟扬声器搜索,获取当前帧的代表虚拟扬声器,根据当前帧的代表虚拟扬声器对当前进行编码的过程进行详细说明。在S620之后,编码器113还可以执行S650至S680。本申请实施例提供一种选择虚拟扬声器的方法,编码器利用当前帧的代表系数对候选虚拟扬声器集合中每个虚拟扬声器进行投票,依据投票值选取当前帧的代表虚拟扬声器,从而减小虚拟扬声器搜索的计算复杂度,以及减轻编码器的计算负担。
S650、编码器113获取三维音频信号的当前帧的第四数量个系数,以及第四数量个系数的频域特征值。
假设三维音频信号是HOA信号,编码器113可以对HOA信号的当前帧进行采样,得到L·(N+1)2个采样点,即得到第四数量个系数。N表示HOA信号的阶数。示例地,假设HOA信号的当前帧的时长为20毫秒,编码器113根据48KHz频率对当前帧进行采样,得到时域上的960·(N+1)2个采样点。采样点也可以称为时域系数。
三维音频信号的当前帧的频域系数可以是根据三维音频信号的当前帧的时域系数进行时频转换得到。时域转变为频域的方法不予限定。时域转变为频域的方法例如是修正的离散余弦变换(Modified Discrete Cosine Transform,MDCT),则可以得到频域上960·(N+1)2个频域系数。频域系数也可以称为频谱系数或频点。
采样点的频域特征值满足p(j)=norm(x(j)),其中,j=1,2…L,L表示采样时刻的数量,x表示三维音频信号的当前帧的频域系数,例如MDCT系数,norm为求取二范数运算;x(j)表示第j个采样时刻的(N+1)2个采样点的频域系数。
S660、编码器113根据第四数量个系数的频域特征值,从第四数量个系数中选取第三数量个代表系数。
编码器113将第四数量个系数指示的频谱范围划分为至少一个子带。其中,编码器113将第四数量个系数指示的频谱范围划分为一个子带,可以理解的,该一个子带的频谱范围等于第四数量个系数指示的频谱范围,相当于编码器113未对第四数量个系数指示的频谱范围进行划分。
如果编码器113将第四数量个系数指示的频谱范围划分为至少两个频带子带,在一种情形下,编码器113将第四数量个系数指示的频谱范围等分为至少两个子带,至少两个子带中每个子带包含相同数量的系数。
在另一情形下,编码器113对第四数量个系数指示的频谱范围进行不等分,划分得到的至少两个子带包含的系数的数量不同,或者划分得到的至少两个子带中每个子带包含的系数的数量均不同。例如,编码器113可以根据第四数量个系数指示的频谱范围中的低频范围、中频范围和高频范围,对第四数量个系数指示的频谱范围进行不等分,使得低频范围、中频范围和高频范围中每个频谱范围包括至少一个子带。低频范围内的至少一个子带中每个子带包含相同数量的系数。中频范围内的至少一个子带中每个子带包含相同数量的系数。高频范围内的至少一个子带中每个子带包含相同数量的系数。低频范围、中频范围和高频范围中三个频谱范围内的子带可以包含不同数量的系数。
进一步地,编码器113根据第四数量个系数的频域特征值,从第四数量个系数指示的频谱范围包含的至少一个子带选取代表系数,得到第三数量个代表系数。第三数量小于第四数量,第四数量个系数包含第三数量个代表系数。
例如,编码器113根据第四数量个系数指示的频谱范围包含的至少一个子带中每个子带中系数的频域特征值的从大到小的顺序,分别从所述每个子带中选取Z个代表系数,组合至少一个子带中的Z个代表系数,得到第三数量个代表系数,Z为正整数。
又如,至少一个子带包括至少两个子带时,编码器113根据至少两个子带中每个子带内的第一候选系数的频域特征值确定每个子带各自的权重;并根据每个子带各自的权重分别调整每个子带内的第二候选系数的频域特征值,得到每个子带内的第二候选系数的调整后频域特征值,第一候选系数和第二候选系数为子带内的部分系数。编码器113根据至少两个子带内的第二候选系数的调整后频域特征值,以及至少两个子带内除第二候选系数之外的系数的频域特征值,确定第三数量个代表系数。
由于编码器从当前帧的全部系数中选取部分系数作为代表系数,利用较少数量的代表系数代替当前帧的全部系数从候选虚拟扬声器集合中选取代表虚拟扬声器,因此有效地降低了编码器搜索虚拟扬声器的计算复杂度,从而降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。
S670、编码器113根据第三数量个代表系数从候选虚拟扬声器集合中选取第二数量个当前帧的代表虚拟扬声器。
编码器113利用三维音频信号的当前帧的第三数量个代表系数与候选虚拟扬声器集合中每个虚拟扬声器的系数进行相关运算,选取第二数量个当前帧的代表虚拟扬声器。
由于编码器从当前帧的全部系数中选取部分系数作为代表系数,利用较少数量的代表系数代替当前帧的全部系数从候选虚拟扬声器集合中选取代表虚拟扬声器,因此有效地降低了编码器搜索虚拟扬声器的计算复杂度,从而降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。例如一帧N阶的HOA信号有960·(N+1)2个系数,本实施例可以选取前10%的系数参与虚拟扬声器搜索,此时编码复杂度相较于全系数参与虚拟扬声器搜索的编码复杂度降低了90%。
S680、编码器113根据第二数量个当前帧的代表虚拟扬声器对当前帧进行编码,得到码流。
编码器113根据第二数量个当前帧的代表虚拟扬声器和当前帧生成虚拟扬声器信号,以及对虚拟扬声器信号进行编码得到码流。生成码流的具体方法可以参考现有技术,以及上述实施例中编码单元360和S450的阐述。
编码器113在生成码流后,向目的设备120发送码流,以便于目的设备120对源设备110发送的码流进行解码,重建三维音频信号,得到重建后三维音频信号。
由于当前帧的系数的频域特征值表征了三维音频信号的声场特性,编码器依据当前帧的系数的频域特征值选取当前帧的具有代表性声场成分的代表系数,利用代表系数从候选虚拟扬声器集合中选取的当前帧的代表虚拟扬声器能够充分地表征三维音频信号的声场特性,从而进一步地提高了编码器利用当前帧的代表虚拟扬声器对待编码的三维音频信号进行压缩编码时生成虚拟扬声器信号的准确性,以便于提升对三维音频信号进行压缩编码的压缩率,降低编码器传输码流所占用的带宽。
图8为本申请实施例提供的另一种三维音频信号编码方法的流程示意图。在这里由图1中源设备110中编码器113执行选择虚拟扬声器过程为例进行说明。其中,图8所述的方法流程是对图6中S670所包括的具体操作过程的阐述。如图8所示,该方法包括以下步骤。
S6701、编码器113根据当前帧的第三数量个代表系数、候选虚拟扬声器集合和投票轮数确定第一数量个虚拟扬声器和第一数量个投票值。
投票轮数用于限定对虚拟扬声器进行投票的次数。投票轮数为大于或等于1的整数,且投票轮数小于或等于候选虚拟扬声器集合包含的虚拟扬声器的数量,以及投票轮数小于或等于编码器传输的虚拟扬声器信号的数量。例如,候选虚拟扬声器集合包括第五数量个虚拟扬声器,第五数量个虚拟扬声器包括第一数量个虚拟扬声器,第一数量小于或等于第五数量,投票轮数为大于或等于1的整数,且投票轮数小于或等于所述第五数量。虚拟扬声器信号也是指当前帧对应的当前帧的代表虚拟扬声器的传输通道。通常情况下虚拟扬声器信号的数量小于或等于虚拟扬声器的数量。
在一种可能的实现方式中,投票轮数可以是预先配置的,也可以是根据编码器的计算能力确定的,比如,投票轮数是根据编码器的编码速率和/或编码应用场景确定的。
在另一种可能的实现方式中,投票轮数是根据当前帧中指向性声源的数量确定的。例如,当声场中指向性声源数量为2时,设置投票轮数为2。
本申请实施例提供了确定第一数量个虚拟扬声器和第一数量个投票值的三种可能实现方式,下面对三种方式分别进行详述。
在第一种可能的实现方式中,投票轮数等于1,编码器113采样到多个代表系数后,获取当前帧的每个代表系数对候选虚拟扬声器集合中所有虚拟扬声器的投票值,累加相同编号的虚拟扬声器的投票值,得到第一数量个虚拟扬声器和第一数量个投票值。可理解的,候选虚拟扬声器集合包括第一数量个虚拟扬声器。第一数量等于候选虚拟扬声器集合包括的虚拟扬声器的数量。假设候选虚拟扬声器集合包括第五数量个虚拟扬声器,则第一数量等于第五数量。第一数量个投票值包括候选虚拟扬声器集合中所有虚拟扬声器的投票值。编码器113可以将第一数量个投票值作为第一数量个虚拟扬声器的当前帧最终投票值,执行S6702,即编码器113根据第一数量个投票值,从第一数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器。
其中,虚拟扬声器与投票值一一对应,即一个虚拟扬声器对应一个投票值。例如,第一数量个虚拟扬声器包括第一虚拟扬声器,第一数量个投票值包括第一虚拟扬声器的投票值,第一虚拟扬声器与第一虚拟扬声器的投票值对应。第一虚拟扬声器的投票值用于表征对当前帧进行编码时使用第一虚拟扬声器的优先级。优先级也可以替换描述为倾向性,即第一虚拟扬声器的投票值用于表征对当前帧进行编码时使用第一虚拟扬声器的倾向性。可理解的,第一虚拟扬声器的投票值越大,表示第一虚拟扬声器的优先级越高或倾向性越高,相对于候选虚拟扬声器集合中比第一虚拟扬声器的投票值小的虚拟扬声器,编码器113更倾向选择第一虚拟扬声器对当前帧进行编码。
在第二种可能的实现方式中,与上述第一种可能的实现方式的区别在于,编码器113获取当前帧的每个代表系数对候选虚拟扬声器集合中所有虚拟扬声器的投票值后,从每个代表系数对候选虚拟扬声器集合中所有虚拟扬声器的投票值中选取部分投票值,累加部分投票值对应的虚拟扬声器中相同编号的虚拟扬声器的投票值,得到第一数量个虚拟扬声器和第一数量个投票值。可理解的,候选虚拟扬声器集合包括第一数量个虚拟扬声器。第一数量小于或等于候选虚拟扬声器集合包括的虚拟扬声器的数量。第一数量个投票值包括候选虚拟扬声器集合包括的部分虚拟扬声器的投票值,或者,第一数量个投票值包括候选虚拟扬声器集合包括的全部虚拟扬声器的投票值。
在第三种可能的实现方式中,与上述第二种可能的实现方式的区别在于,投票轮数为大于或等于2的整数,对于当前帧的每个代表系数,编码器113对候选虚拟扬声器集合中所有虚拟扬声器进行至少2轮次投票,每轮选择最大投票值的虚拟扬声器。对当前帧的每个代表系数对所有虚拟扬声器进行至少2轮次投票后,累加相同编号的虚拟扬声器的投票值,得到第一数量个虚拟扬声器和第一数量个投票值。
S6702、编码器113根据第一数量个投票值,从第一数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器。
编码器113根据第一数量个投票值,从第一数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器,而且,第二数量个当前帧的代表虚拟扬声器的投票值大于预设阈值。
编码器113也可以根据第一数量个投票值,从第一数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器。例如,按照第一数量个投票值的从大到小的顺序,从第一数量个投票值中确定第二数量个投票值,并将第一数量个虚拟扬声器中与第二数量个投票值对应的虚拟扬声器作为第二数量个当前帧的代表虚拟扬声器。
可选地,若第一数量个虚拟扬声器中不同编号的虚拟扬声器的投票值相同,且该不同的虚拟扬声器的投票值大于预设阈值,则编码器113可以将不同编号的虚拟扬声器均作为当前帧的代表虚拟扬声器。
需要说明的是,第二数量小于第一数量。第一数量个虚拟扬声器包括第二数量个当前帧的代表虚拟扬声器。第二数量可以是预设的,或者,第二数量可以是根据当前帧的声场中声源的数量确定的,例如,第二数量可以直接等于当前帧的声场中声源的数量,或者是按照预设算法对当前帧的声场中声源的数量进行处理,将处理得到的数量作为第二数量;其中,预设算法可以根据需要进行设计,例如,预设算法可以是:第二数量=当前帧的声场中声源的数量+1,或第二数量=当前帧的声场中声源的数量-1等等。
编码器利用较少数量的代表系数代替当前帧的全部系数对候选虚拟扬声器集合中每个虚拟扬声器进行投票,依据投票值选取当前帧的代表虚拟扬声器。进而,编码器利用当前帧的代表虚拟扬声器对待编码的三维音频信号进行压缩编码,不仅有效地提升了对三维音频信号进行压缩编码的压缩率,而且降低了编码器搜索虚拟扬声器的计算复杂度,从而降低了对三维音频信号进行压缩编码的计算复杂度以及减轻了编码器的计算负担。
为了增加连续帧之间的方位的连续性,克服了连续帧选取的虚拟扬声器的结果差异较大的问题,编码器113根据在先帧的代表虚拟扬声器的在先帧最终投票值调整候选虚拟扬声器集合中虚拟扬声器的当前帧初始投票值,获得虚拟扬声器的当前帧最终投票值。如图9所示,为本申请实施例提供的另一种选择虚拟扬声器方法的流程示意图。其中,图9所述的方法流程是对图8中S6702所包括的具体操作过程的阐述。
S6702a、编码器113根据第一数量个当前帧初始投票值,以及第六数量个在先帧最终投票值,获取第七数量个虚拟扬声器与当前帧对应的第七数量个当前帧最终投票值。
编码器113可以依据上述S6701所述的方法,根据三维音频信号的当前帧、候选虚拟扬声器集合和投票轮数确定第一数量个虚拟扬声器和第一数量个投票值,进而,将第一数量个投票值作为第一数量个虚拟扬声器的当前帧初始投票值。
虚拟扬声器与当前帧初始投票值一一对应,即一个虚拟扬声器对应一个当前帧初始投票值。例如,第一数量个虚拟扬声器包括第一虚拟扬声器,第一数量个当前帧初始投票值包括第一虚拟扬声器的当前帧初始投票值,第一虚拟扬声器与第一虚拟扬声器的当前帧初始投票值对应。第一虚拟扬声器的当前帧初始投票值用于表征对当前帧进行编码时使用第一虚拟扬声器的优先级。
在先帧的代表虚拟扬声器集合包含的第六数量个虚拟扬声器与第六数量个在先帧最终投票值一一对应。第六数量个虚拟扬声器可以是编码器113对三维音频信号的在先帧进行编码所使用的在先帧的代表虚拟扬声器。
具体地,编码器113根据第六数量个在先帧最终投票值,更新第一数量个当前帧初始投票值,即编码器113计算第一数量个虚拟扬声器与第六数量个虚拟扬声器中相同编号的虚拟扬声器的当前帧初始投票值和在先帧最终投票值之和,获取第七数量个虚拟扬声器与当前帧对应的第七数量个当前帧最终投票值。第七数量个虚拟扬声器包括第一数量个虚拟扬声器,且第七数量个虚拟扬声器包括第六数量个虚拟扬声器。
S6702b、编码器113根据第七数量个当前帧最终投票值,从第七数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器。
编码器113根据第七数量个当前帧最终投票值,从第七数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器,而且,第二数量个当前帧的代表虚拟扬声器的当前帧最终投票值大于预设阈值。
编码器113也可以根据第七数量个当前帧最终投票值,从第七数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器。例如,按照第七数量个当前帧最终投票值的从大到小的顺序,从第七数量个当前帧最终投票值中确定第二数量个当前帧最终投票值,并将第七数量个虚拟扬声器中与第二数量个当前帧最终投票值关联的虚拟扬声器作为第二数量个当前帧的代表虚拟扬声器。
可选地,若第七数量个虚拟扬声器中不同编号的虚拟扬声器的投票值相同,且该不同编号的虚拟扬声器的投票值大于预设阈值,则编码器113可以将该不同编号的虚拟扬声器均作为当前帧的代表虚拟扬声器。
需要说明的是,第二数量小于第七数量。第七数量个虚拟扬声器包括第二数量个当前帧的代表虚拟扬声器。第二数量可以是预设的,或者,第二数量可以是根据当前帧的声场中声源的数量确定的。
另外,编码器113对当前帧的下一帧进行编码前,如果编码器113确定复用在先帧的代表虚拟扬声器对下一帧进行编码,编码器113可以将第二数量个当前帧的代表虚拟扬声器作为第二数量个在先帧的代表虚拟扬声器,利用第二数量个在先帧的代表虚拟扬声器对当前帧的下一帧进行编码。
在虚拟扬声器搜索过程中,由于真实声源的位置与虚拟扬声器的位置不一定重合,会导致虚拟扬声器不一定能够与真实声源形成一一对应关系,且由于在实际的复杂场景下,可能出现有限数量的虚拟扬声器集合无法表征声场中所有声源的情况,此时,帧与帧之间搜索到的虚拟扬声器可能会发生频繁跳变,这种跳变会明显地影响听音者的听觉感受,导致解码重建后三维音频信号中出现明显的不连续和噪声现象。本申请的实施例提供的选择虚拟扬声器的方法通过继承在先帧的代表虚拟扬声器,即对于相同编号的虚拟扬声器,用在先帧最终投票值调整当前帧初始投票值,使得编码器更倾向于选择在先帧的代表虚拟扬声器,从而降低帧与帧之间的虚拟扬声器的频繁跳变,增强了帧之间的信号方位的连续性,提高了重建后三维音频信号的声像的稳定性,确保重建后三维音频信号的音质。另外调整参数确保在先帧最终投票值不会继承太过久远,避免算法无法适应声源移动等声场变化的场景。
可以理解的是,为了实现上述实施例中的功能,编码器包括了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的单元及方法步骤,本申请能够以硬件或硬件和计算机软件相结合的形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用场景和设计约束条件。
上文中结合图1至图9,详细描述了根据本实施例所提供的三维音频信号编码方法,下面将结合图10和图11,描述根据本实施例所提供的三维音频信号编码装置和编码器。
图10为本实施例提供的可能的三维音频信号编码装置的结构示意图。这些三维音频信号编码装置可以用于实现上述方法实施例中编码三维音频信号的功能,因此也能实现上述方法实施例所具备的有益效果。在本实施例中,该三维音频信号编码装置可以是如图1所示的编码器113,或者如图3所示的编码器300,还可以是应用于终端设备或服务器的模块(如芯片)。
如图10所示,三维音频信号编码装置1000包括通信模块1010、系数选择模块1020、虚拟扬声器选择模块1030、编码模块1040和存储模块1050。三维音频信号编码装置1000用于实现上述图6至图9中所示的方法实施例中编码器113的功能。
通信模块1010用于获取三维音频信号的当前帧。可选地,通信模块1010也可以接收其他设备获取的三维音频信号的当前帧;或者从存储模块1050获取三维音频信号的当前帧。三维音频信号的当前帧为HOA信号;系数的频域特征值是依据HOA信号的系数确定的。
虚拟扬声器选择模块1030用于获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度,在先帧的代表虚拟扬声器集合中的虚拟扬声器为对三维音频信号的在先帧进行编码所使用的虚拟扬声器,第一相关度用于确定对当前帧进行编码时是否复用在先帧的代表虚拟扬声器集合。
当三维音频信号编码装置1000用于实现图6至图9所示的方法实施例中编码器113的功能时,虚拟扬声器选择模块1030用于实现S610至S630,以及S670的相关功能。
例如,虚拟扬声器选择模块1030获取当前帧与候选虚拟扬声器集合的第二相关度,第二相关度用于确定对当前帧进行编码时是否使用候选虚拟扬声器集合,在先帧的代表虚拟扬声器集合是候选虚拟扬声器集合的真子集;复用条件包括:第一相关度大于第二相关度。
又如,虚拟扬声器选择模块1030获取当前帧与候选虚拟扬声器集合的第一子集的第三相关度,第三相关度用于确定对当前帧进行编码时是否使用候选虚拟扬声器集合的第一子集,第一子集是候选虚拟扬声器集合的真子集;复用条件包括:第一相关度大于第三相关度。
又如,虚拟扬声器选择模块1030获取当前帧与候选虚拟扬声器集合的第二子集的第四相关度,第四相关度用于确定对当前帧进行编码时是否使用候选虚拟扬声器集合的第二子集,第二子集是候选虚拟扬声器集合的真子集;若第一相关度小于或等于第四相关度,获取当前帧与候选虚拟扬声器集合的第三子集的第五相关度,第五相关度用于确定对当前帧进行编码时是否使用候选虚拟扬声器集合的第三子集,第三子集是候选虚拟扬声器集合的真子集,第二子集包括的虚拟扬声器与第三子集包括的虚拟扬声器均不同或部分不同;复用条件包括:第一相关度大于第五相关度。
当三维音频信号编码装置1000用于实现图6所示的方法实施例中编码器113的功能时,虚拟扬声器选择模块1030用于实现S670的相关功能。具体地,虚拟扬声器选择模块1030,具体用于:虚拟扬声器选择模块根据第三数量个代表系数从候选虚拟扬声器集合中选取第二数量个当前帧的代表虚拟扬声器时,具体用于:根据当前帧的第三数量个代表系数、候选虚拟扬声器集合和投票轮数确定第一数量个虚拟扬声器和第一数量个投票值,虚拟扬声器与投票值一一对应,第一数量个虚拟扬声器包括第一虚拟扬声器,第一虚拟扬声器的投票值用于表征对当前帧进行编码时使用第一虚拟扬声器的优先级,候选虚拟扬声器集合包括第五数量个虚拟扬声器,第五数量个虚拟扬声器包括第一数量个虚拟扬声器,第一数量小于或等于第五数量,投票轮数为大于或等于1的整数,且投票轮数小于或等于第五数量;根据第一数量个投票值,从第一数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器,第二数量小于第一数量。
当三维音频信号编码装置1000用于实现图9所示的方法实施例中编码器113的功能时,虚拟扬声器选择模块1030用于实现S6701和S6702的相关功能。具体地,虚拟扬声器选择模块1030根据第一数量个投票值,以及第六数量个在先帧最终投票值,获取第七数量个虚拟扬声器与当前帧对应的第七数量个当前帧最终投票值,第七数量个虚拟扬声器包括第一数量个虚拟扬声器,且第七数量个虚拟扬声器包括第六数量个虚拟扬声器,第六数量个虚拟扬声器包含的虚拟扬声器为对三维音频信号的在先帧进行编码所使用的在先帧的代表虚拟扬声器;根据第七数量个当前帧最终投票值,从第七数量个虚拟扬声器中选取第二数量个当前帧的代表虚拟扬声器,第二数量小于第七数量。
当三维音频信号编码装置1000用于实现图6所示的方法实施例中编码器113的功能时,系数选择模块1020用于实现S650和S660的相关功能。具体地,系数选择模块1020获取当前帧的第三数量个代表系数时,具体用于:获取当前帧的第四数量个系数,以及第四数量个系数的频域特征值;根据第四数量个系数的频域特征值,从第四数量个系数中选取第三数量个代表系数,第三数量小于第四数量。
编码模块1140用于若第一相关度满足复用条件,根据在先帧的代表虚拟扬声器集合对当前帧进行编码,得到码流。
当三维音频信号编码装置1000用于实现图6至图9所示的方法实施例中编码器113的功能时,编码模块1140用于实现S630的相关功能。示例地,编码模块1140具体用于根据在先帧的代表虚拟扬声器集合和当前帧生成虚拟扬声器信号;对虚拟扬声器信号进行编码得到码流。
存储模块1050用于存储与三维音频信号相关的系数,候选虚拟扬声器集合,在先帧的代表虚拟扬声器集合,以及选取的系数和虚拟扬声器等,以便于编码模块1040对当前帧进行编码得到码流,并将码流传输至解码器。
应理解的是,本申请实施例的三维音频信号编码装置1000可以通过专用集成电路(application-specific integrated circuit,ASIC)实现,或可编程逻辑器件(programmable logic device,PLD)实现,上述PLD可以是复杂程序逻辑器件(complexprogrammable logical device,CPLD),现场可编程门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。也可以通过软件实现图6至图9所示的三维音频信号编码方法时,三维音频信号编码装置1000及其各个模块也可以为软件模块。
有关上述通信模块1010、系数选择模块1020、虚拟扬声器选择模块1030、编码模块1040和存储模块1050更详细的描述可以参考图6至图9所示的方法实施例中相关描述直接得到,这里不加赘述。
图11为本实施例提供的一种编码器1100的结构示意图。如图11所示,编码器1100包括处理器1110、总线1120、存储器1130和通信接口1140。
应理解,在本实施例中,处理器1110可以是中央处理器(central processingunit,CPU),该处理器1110还可以是其他通用处理器、数字信号处理器(digital signalprocessing,DSP)、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。
处理器还可以是图形处理器(graphics processing unit,GPU)、神经网络处理器(neural network processing unit,NPU)、微处理器或一个或多个用于控制本申请方案程序执行的集成电路。
通信接口1140用于实现编码器1100与外部设备或器件的通信。在本实施例中,通信接口1140用于接收三维音频信号。
总线1120可以包括一通路,用于在上述组件(如处理器1110和存储器1130)之间传送信息。总线1120除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线1120。
作为一个示例,编码器1100可以包括多个处理器。处理器可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的计算单元。处理器1110可以调用存储器1130存储的与三维音频信号相关的系数,候选虚拟扬声器集合,在先帧的代表虚拟扬声器集合,以及选取的系数和虚拟扬声器等。
值得说明的是,图11中仅以编码器1100包括1个处理器1110和1个存储器1130为例,此处,处理器1110和存储器1130分别用于指示一类器件或设备,具体实施例中,可以根据业务需求确定每种类型的器件或设备的数量。
存储器1130可以对应上述方法实施例中用于存储与三维音频信号相关的系数,候选虚拟扬声器集合,在先帧的代表虚拟扬声器集合,以及选取的系数和虚拟扬声器等信息的存储介质,例如,磁盘,如机械硬盘或固态硬盘。
上述编码器1100可以是一个通用设备或者是一个专用设备。例如,编码器1100可以是基于X86、ARM的服务器,也可以为其他的专用服务器,如策略控制和计费(policycontrol and charging,PCC)服务器等。本申请实施例不限定编码器1100的类型。
应理解,根据本实施例的编码器1100可对应于本实施例中的三维音频信号编码装置1100,并可以对应于执行根据图6至图9中任一方法中的相应主体,并且三维音频信号编码装置1100中的各个模块的上述和其它操作和/或功能分别为了实现图6至图9中的各个方法的相应流程,为了简洁,在此不再赘述。
本实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于网络设备或终端设备中。当然,处理器和存储介质也可以作为分立组件存在于网络设备或终端设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,例如,固态硬盘(solid state drive,SSD)。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (27)
1.一种三维音频信号编码方法,其特征在于,包括:
获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度,所述在先帧的代表虚拟扬声器集合中的虚拟扬声器为对所述三维音频信号的在先帧进行编码所使用的虚拟扬声器,所述第一相关度用于确定对所述当前帧进行编码时是否复用所述在先帧的代表虚拟扬声器集合;
若所述第一相关度满足复用条件,根据所述在先帧的代表虚拟扬声器集合对所述当前帧进行编码,得到码流。
2.根据权利要求1所述的方法,其特征在于,所述获取三维音频信号的当前帧与在先帧的代表虚拟扬声器的第一相关度之后,所述方法还包括:
获取所述当前帧与候选虚拟扬声器集合的第二相关度,所述第二相关度用于确定对所述当前帧进行编码时是否使用所述候选虚拟扬声器集合,所述在先帧的代表虚拟扬声器集合是所述候选虚拟扬声器集合的真子集;
所述复用条件包括:所述第一相关度大于所述第二相关度。
3.根据权利要求1或2所述的方法,其特征在于,所述获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度包括:
获取所述当前帧分别与所述在先帧的代表虚拟扬声器集合中各个在先帧的代表虚拟扬声器的相关度;
将所述各个在先帧的代表虚拟扬声器分别与所述当前帧的相关度中的最大相关度作为所述第一相关度。
4.根据权利要求2所述的方法,其特征在于,所述获取所述当前帧与候选虚拟扬声器集合的第二相关度包括:
获取所述当前帧分别与所述候选虚拟扬声器集合中各个候选虚拟扬声器的相关度;
将所述各个候选虚拟扬声器分别与所述当前帧的相关度中的最大相关度作为所述第二相关度。
5.根据权利要求1所述的方法,其特征在于,所述获取三维音频信号的当前帧与在先帧的代表虚拟扬声器的第一相关度之后,所述方法还包括:
获取所述当前帧与候选虚拟扬声器集合的第一子集的第三相关度,所述第三相关度用于确定对所述当前帧进行编码时是否使用所述候选虚拟扬声器集合的第一子集,所述第一子集是所述候选虚拟扬声器集合的真子集;
所述复用条件包括:所述第一相关度大于所述第三相关度。
6.根据权利要求1所述的方法,其特征在于,所述获取三维音频信号的当前帧与在先帧的代表虚拟扬声器的第一相关度之后,所述方法还包括:
获取所述当前帧与候选虚拟扬声器集合的第二子集的第四相关度,所述第四相关度用于确定对所述当前帧进行编码时是否使用所述候选虚拟扬声器集合的第二子集,所述第二子集是所述候选虚拟扬声器集合的真子集;
若所述第一相关度小于或等于所述第四相关度,获取所述当前帧与所述候选虚拟扬声器集合的第三子集的第五相关度,所述第五相关度用于确定对所述当前帧进行编码时是否使用所述候选虚拟扬声器集合的第三子集,所述第三子集是所述候选虚拟扬声器集合的真子集,所述第二子集包括的虚拟扬声器与所述第三子集包括的虚拟扬声器均不同或部分不同;
所述复用条件包括:所述第一相关度大于所述第五相关度。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述在先帧的代表虚拟扬声器集合包括第一虚拟扬声器,所述获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度,包括:
根据所述当前帧的系数与所述第一虚拟扬声器的系数确定所述当前帧与所述第一虚拟扬声器的相关度。
8.根据权利要求1-7中任一项所述的方法,其特征在于,若所述第一相关度不满足所述复用条件,所述方法还包括:
获取所述三维音频信号的当前帧的第四数量个系数,以及所述第四数量个系数的频域特征值;
根据所述第四数量个系数的频域特征值,从所述第四数量个系数中选取第三数量个代表系数,所述第三数量小于所述第四数量;
根据所述第三数量个代表系数从候选虚拟扬声器集合中选取第二数量个当前帧的代表虚拟扬声器;
根据所述第二数量个当前帧的代表虚拟扬声器对所述当前帧进行编码,得到码流。
9.根据权利要求8所述的方法,其特征在于,所述根据所述第三数量个代表系数从候选虚拟扬声器集合中选取第二数量个当前帧的代表虚拟扬声器,包括:
根据所述当前帧的第三数量个代表系数、所述候选虚拟扬声器集合和投票轮数确定第一数量个虚拟扬声器和第一数量个投票值,所述虚拟扬声器与所述投票值一一对应,所述第一数量个虚拟扬声器包括第一虚拟扬声器,所述第一虚拟扬声器的投票值用于表征所述第一虚拟扬声器的优先级,所述候选虚拟扬声器集合包括第五数量个虚拟扬声器,所述第五数量个虚拟扬声器包括所述第一数量个虚拟扬声器,所述第一数量小于或等于所述第五数量,所述投票轮数为大于或等于1的整数,且所述投票轮数小于或等于所述第五数量;
根据所述第一数量个投票值,从所述第一数量个虚拟扬声器中选取所述第二数量个当前帧的代表虚拟扬声器,所述第二数量小于所述第一数量。
10.根据权利要求9所述的方法,其特征在于,所述根据所述第一数量个投票值,从所述第一数量个虚拟扬声器中选取所述第二数量个当前帧的代表虚拟扬声器包括:
根据所述第一数量个投票值,以及第六数量个在先帧最终投票值,获取第七数量个虚拟扬声器与所述当前帧对应的第七数量个当前帧最终投票值,所述第七数量个虚拟扬声器包括所述第一数量个虚拟扬声器,且所述第七数量个虚拟扬声器包括所述第六数量个虚拟扬声器,在先帧的代表虚拟扬声器集合包含的第六数量个虚拟扬声器与所述第六数量个在先帧最终投票值一一对应,所述第六数量个虚拟扬声器是用于对所述三维音频信号的在先帧进行编码时使用的虚拟扬声器;
根据所述第七数量个当前帧最终投票值,从所述第七数量个虚拟扬声器中选取所述第二数量个当前帧的代表虚拟扬声器,所述第二数量小于所述第七数量。
11.根据权利要求1-10中任一项所述的方法,其特征在于,所述三维音频信号的当前帧为高阶立体混响HOA信号;所述当前帧的系数的频域特征值是依据HOA信号的系数确定的。
12.一种三维音频信号编码装置,其特征在于,包括:
虚拟扬声器选择模块,用于获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度,所述在先帧的代表虚拟扬声器集合中的虚拟扬声器为对所述三维音频信号的在先帧进行编码所使用的虚拟扬声器,所述第一相关度用于确定对所述当前帧进行编码时是否复用所述在先帧的代表虚拟扬声器集合;
编码模块,用于若所述第一相关度满足复用条件,根据所述在先帧的代表虚拟扬声器集合对所述当前帧进行编码,得到码流。
13.根据权利要求12所述的装置,其特征在于,所述虚拟扬声器选择模块,还用于:
获取所述当前帧与候选虚拟扬声器集合的第二相关度,所述第二相关度用于确定对所述当前帧进行编码时是否使用所述候选虚拟扬声器集合,所述在先帧的代表虚拟扬声器集合是所述候选虚拟扬声器集合的真子集;
所述复用条件包括:所述第一相关度大于所述第二相关度。
14.根据权利要求12或13所述的装置,其特征在于,所述虚拟扬声器选择模块获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度时,具体用于:
获取所述当前帧分别与所述在先帧的代表虚拟扬声器集合中各个在先帧的代表虚拟扬声器的相关度;
将所述各个在先帧的代表虚拟扬声器分别与所述当前帧的相关度中的最大相关度作为所述第一相关度。
15.根据权利要求13所述的装置,其特征在于,所述虚拟扬声器选择模块获取所述当前帧与候选虚拟扬声器集合的第二相关度时,具体用于:
获取所述当前帧分别与所述候选虚拟扬声器集合中各个候选虚拟扬声器的相关度;
将所述各个候选虚拟扬声器分别与所述当前帧的相关度中的最大相关度作为所述第二相关度。
16.根据权利要求12所述的装置,其特征在于,所述虚拟扬声器选择模块,还用于:
获取所述当前帧与候选虚拟扬声器集合的第一子集的第三相关度,所述第三相关度用于确定对所述当前帧进行编码时是否使用所述候选虚拟扬声器集合的第一子集,所述第一子集是所述候选虚拟扬声器集合的真子集;
所述复用条件包括:所述第一相关度大于所述第三相关度。
17.根据权利要求12所述的装置,其特征在于,所述虚拟扬声器选择模块,还用于:
获取所述当前帧与候选虚拟扬声器集合的第二子集的第四相关度,所述第四相关度用于确定对所述当前帧进行编码时是否使用所述候选虚拟扬声器集合的第二子集,所述第二子集是所述候选虚拟扬声器集合的真子集;
若所述第一相关度小于或等于所述第四相关度,获取所述当前帧与所述候选虚拟扬声器集合的第三子集的第五相关度,所述第五相关度用于确定对所述当前帧进行编码时是否使用所述候选虚拟扬声器集合的第三子集,所述第三子集是所述候选虚拟扬声器集合的真子集,所述第二子集包括的虚拟扬声器与所述第三子集包括的虚拟扬声器均不同或部分不同;
所述复用条件包括:所述第一相关度大于所述第五相关度。
18.根据权利要求12-17中任一项所述的装置,其特征在于,所述在先帧的代表虚拟扬声器集合包括第一虚拟扬声器,所述虚拟扬声器选择模块获取三维音频信号的当前帧与在先帧的代表虚拟扬声器集合的第一相关度时,具体用于:
根据所述当前帧的系数与所述第一虚拟扬声器的系数确定所述当前帧与所述第一虚拟扬声器的相关度。
19.根据权利要求12-18中任一项所述的装置,其特征在于,若所述第一相关度不满足所述复用条件,所述装置还包括系数选择模块;
所述系数选择模块,用于获取所述三维音频信号的当前帧的第四数量个系数,以及所述第四数量个系数的频域特征值;
所述系数选择模块,还用于根据所述第四数量个系数的频域特征值,从所述第四数量个系数中选取第三数量个代表系数,所述第三数量小于所述第四数量;
所述虚拟扬声器选择模块,还用于根据所述第三数量个代表系数从候选虚拟扬声器集合中选取第二数量个当前帧的代表虚拟扬声器;
所述编码模块,还用于根据所述第二数量个当前帧的代表虚拟扬声器对所述当前帧进行编码,得到码流。
20.根据权利要求19所述的装置,其特征在于,所述虚拟扬声器选择模块根据所述第三数量个代表系数从候选虚拟扬声器集合中选取第二数量个当前帧的代表虚拟扬声器时,具体用于:
根据所述当前帧的第三数量个代表系数、所述候选虚拟扬声器集合和投票轮数确定第一数量个虚拟扬声器和第一数量个投票值,所述虚拟扬声器与所述投票值一一对应,所述第一数量个虚拟扬声器包括第一虚拟扬声器,所述第一虚拟扬声器的投票值用于表征所述第一虚拟扬声器的优先级,所述候选虚拟扬声器集合包括第五数量个虚拟扬声器,所述第五数量个虚拟扬声器包括所述第一数量个虚拟扬声器,所述第一数量小于或等于所述第五数量,所述投票轮数为大于或等于1的整数,且所述投票轮数小于或等于所述第五数量;
根据所述第一数量个投票值,从所述第一数量个虚拟扬声器中选取所述第二数量个当前帧的代表虚拟扬声器,所述第二数量小于所述第一数量。
21.根据权利要求20所述的装置,其特征在于,所述虚拟扬声器选择模块根据所述第一数量个投票值,从所述第一数量个虚拟扬声器中选取所述第二数量个当前帧的代表虚拟扬声器时,具体用于:
根据所述第一数量个投票值,以及第六数量个在先帧最终投票值,获取第七数量个虚拟扬声器与所述当前帧对应的第七数量个当前帧最终投票值,所述第七数量个虚拟扬声器包括所述第一数量个虚拟扬声器,且所述第七数量个虚拟扬声器包括所述第六数量个虚拟扬声器,在先帧的代表虚拟扬声器集合包含的第六数量个虚拟扬声器与所述第六数量个在先帧最终投票值一一对应,所述第六数量个虚拟扬声器是用于对所述三维音频信号的在先帧进行编码时使用的虚拟扬声器;
根据所述第七数量个当前帧最终投票值,从所述第七数量个虚拟扬声器中选取所述第二数量个当前帧的代表虚拟扬声器,所述第二数量小于所述第七数量。
22.根据权利要求12-21中任一项所述的装置,其特征在于,所述三维音频信号的当前帧为高阶立体混响HOA信号;所述当前帧的系数的频域特征值是依据HOA信号的系数确定的。
23.一种编码器,其特征在于,所述编码器包括至少一个处理器和存储器,其中,所述存储器用于存储计算机程序,使得所述计算机程序被所述至少一个处理器执行时实现如权利要求1-11中任一项所述的三维音频信号编码方法。
24.一种系统,其特征在于,所述系统包括如权利要求23所述的编码器,以及解码器,所述编码器用于执行上述权利要求1-11中任一项所述的方法的操作步骤,所述解码器用于解码所述编码器生成的码流。
25.一种计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求1-11中任一项所述的三维音频信号编码方法。
26.一种计算机可读存储介质,包括计算机软件指令;当计算机软件指令在编码器中运行时,使得所述编码器执行如权利要求1-11中任一项所述的三维音频信号编码方法。
27.一种计算机可读存储介质,其特征在于,包括如权利要求1-11中任一项所述的三维音频信号编码方法所获得的码流。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110536623.0A CN115376528A (zh) | 2021-05-17 | 2021-05-17 | 三维音频信号编码方法、装置和编码器 |
EP22803805.5A EP4318469A4 (en) | 2021-05-17 | 2022-05-07 | METHOD AND DEVICE FOR ENCODING THREE-DIMENSIONAL AUDIO SIGNALS AND ENCODER |
PCT/CN2022/091568 WO2022242481A1 (zh) | 2021-05-17 | 2022-05-07 | 三维音频信号编码方法、装置和编码器 |
US18/511,025 US20240087578A1 (en) | 2021-05-17 | 2023-11-16 | Three-dimensional audio signal coding method and apparatus, and encoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110536623.0A CN115376528A (zh) | 2021-05-17 | 2021-05-17 | 三维音频信号编码方法、装置和编码器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115376528A true CN115376528A (zh) | 2022-11-22 |
Family
ID=84059375
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110536623.0A Pending CN115376528A (zh) | 2021-05-17 | 2021-05-17 | 三维音频信号编码方法、装置和编码器 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240087578A1 (zh) |
EP (1) | EP4318469A4 (zh) |
CN (1) | CN115376528A (zh) |
WO (1) | WO2022242481A1 (zh) |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9473870B2 (en) * | 2012-07-16 | 2016-10-18 | Qualcomm Incorporated | Loudspeaker position compensation with 3D-audio hierarchical coding |
JP6330251B2 (ja) * | 2013-03-12 | 2018-05-30 | ヤマハ株式会社 | 密閉型ヘッドフォン用信号処理装置および密閉型ヘッドフォン |
US9489955B2 (en) * | 2014-01-30 | 2016-11-08 | Qualcomm Incorporated | Indicating frame parameter reusability for coding vectors |
KR20240050436A (ko) * | 2014-06-27 | 2024-04-18 | 돌비 인터네셔널 에이비 | Hoa 데이터 프레임 표현의 압축을 위해 비차분 이득 값들을 표현하는 데 필요하게 되는 비트들의 최저 정수 개수를 결정하는 장치 |
CN104240712B (zh) * | 2014-09-30 | 2018-02-02 | 武汉大学深圳研究院 | 一种三维音频多声道分组聚类编码方法及系统 |
EP3007167A1 (en) * | 2014-10-10 | 2016-04-13 | Thomson Licensing | Method and apparatus for low bit rate compression of a Higher Order Ambisonics HOA signal representation of a sound field |
CN106537942A (zh) * | 2014-11-11 | 2017-03-22 | 谷歌公司 | 3d沉浸式空间音频系统和方法 |
CN105392102B (zh) * | 2015-11-30 | 2017-07-25 | 武汉大学 | 用于非球面扬声器阵列的三维音频信号生成方法及系统 |
US11395083B2 (en) * | 2018-02-01 | 2022-07-19 | Qualcomm Incorporated | Scalable unified audio renderer |
ES2913426T3 (es) * | 2018-03-13 | 2022-06-02 | Nokia Technologies Oy | Reproducción de sonido espacial usando sistemas de altavoz de múltiples canales |
US10667072B2 (en) * | 2018-06-12 | 2020-05-26 | Magic Leap, Inc. | Efficient rendering of virtual soundfields |
CN115866505A (zh) * | 2018-08-20 | 2023-03-28 | 华为技术有限公司 | 音频处理方法和装置 |
-
2021
- 2021-05-17 CN CN202110536623.0A patent/CN115376528A/zh active Pending
-
2022
- 2022-05-07 WO PCT/CN2022/091568 patent/WO2022242481A1/zh active Application Filing
- 2022-05-07 EP EP22803805.5A patent/EP4318469A4/en active Pending
-
2023
- 2023-11-16 US US18/511,025 patent/US20240087578A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4318469A1 (en) | 2024-02-07 |
EP4318469A4 (en) | 2024-08-14 |
US20240087578A1 (en) | 2024-03-14 |
WO2022242481A1 (zh) | 2022-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230298600A1 (en) | Audio encoding and decoding method and apparatus | |
WO2022262576A1 (zh) | 三维音频信号编码方法、装置、编码器和系统 | |
US20240087580A1 (en) | Three-dimensional audio signal coding method and apparatus, and encoder | |
US20240112684A1 (en) | Three-dimensional audio signal processing method and apparatus | |
WO2022253187A1 (zh) | 一种三维音频信号的处理方法和装置 | |
WO2022242481A1 (zh) | 三维音频信号编码方法、装置和编码器 | |
WO2022242483A1 (zh) | 三维音频信号编码方法、装置和编码器 | |
WO2022242479A1 (zh) | 三维音频信号编码方法、装置和编码器 | |
WO2024146408A1 (zh) | 场景音频解码方法及电子设备 | |
WO2024212638A1 (zh) | 场景音频解码方法及电子设备 | |
WO2024245018A1 (zh) | 场景音频解码方法及电子设备 | |
TW202447610A (zh) | 場景音訊解碼方法及電子設備 | |
TW202447609A (zh) | 場景音訊解碼方法及電子設備 | |
WO2024244441A1 (zh) | 场景音频解码方法及电子设备 |
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 |