CN115881140A - 编解码方法、装置、设备、存储介质及计算机程序产品 - Google Patents
编解码方法、装置、设备、存储介质及计算机程序产品 Download PDFInfo
- Publication number
- CN115881140A CN115881140A CN202111155384.0A CN202111155384A CN115881140A CN 115881140 A CN115881140 A CN 115881140A CN 202111155384 A CN202111155384 A CN 202111155384A CN 115881140 A CN115881140 A CN 115881140A
- Authority
- CN
- China
- Prior art keywords
- signal
- scheme
- current frame
- decoding
- encoding
- 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
- 238000000034 method Methods 0.000 title claims abstract description 185
- 238000003860 storage Methods 0.000 title claims abstract description 39
- 238000004590 computer program Methods 0.000 title claims abstract description 15
- 238000004458 analytical method Methods 0.000 claims description 26
- 238000005070 sampling Methods 0.000 claims description 21
- 230000005540 biological transmission Effects 0.000 claims description 16
- 230000005236 sound signal Effects 0.000 abstract description 26
- 230000007704 transition Effects 0.000 abstract description 13
- 230000006835 compression Effects 0.000 abstract description 11
- 238000007906 compression Methods 0.000 abstract description 11
- 238000012545 processing Methods 0.000 abstract description 11
- 238000009877 rendering Methods 0.000 abstract description 10
- 230000008569 process Effects 0.000 description 36
- 238000010586 diagram Methods 0.000 description 22
- 238000004891 communication Methods 0.000 description 19
- 239000012792 core layer Substances 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000001914 filtration Methods 0.000 description 10
- 230000015572 biosynthetic process Effects 0.000 description 7
- 238000003786 synthesis reaction Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 238000000354 decomposition reaction Methods 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012432 intermediate storage Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 206010019133 Hangover Diseases 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum 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/18—Vocoders using multiple modes
- G10L19/22—Mode decision, i.e. based on audio signal content versus external parameters
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Mathematical Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Stereophonic System (AREA)
Abstract
本申请实施例公开了一种编解码方法、装置、设备、存储介质及计算机程序产品,属于音频处理技术领域。该方法结合基于虚拟扬声器选择的编解码方案和基于方向音频编码的编解码方案对音频帧的HOA信号进行编解码,即针对不同的音频帧选择合适的编解码方案,这样能提升音频信号的压缩率。同时,为了在不同编解码方案之间切换时听觉质量的平滑过渡,对于某些音频帧来说,并非直接采用上述两个编解码方案中的任一个,而是采用一种新的编解码方案来编解码这些音频帧,即将这些音频帧的HOA信号中指定通道的信号编入码流,即采用一种折中的方案进行编解码,从而使得对解码恢复出的HOA信号进行渲染播放后的听觉质量能够平滑过渡。
Description
技术领域
本申请实施例涉及音频处理技术领域,特别涉及一种编解码方法、装置、设备、存储介质及计算机程序产品。
背景技术
高阶立体混响(higher order ambisonics,HOA)技术作为一种三维音频技术,因其在进行三维音频回放时具有更高的灵活性,因而得到了广泛的关注。为了实现更好的听觉效果,HOA技术需要大量的数据记录详细的声音场景信息。但随着HOA阶数的增加将会产生更多的数据,大量的数据造成传输和存储的困难。因此如何对HOA信号进行编解码成为目前重点关注的问题。
相关技术提出了两种对HOA信号进行编解码的方案。其中一种方案为基于方向音频编码(directional audio coding,DirAC)的编解码方案。在该方案中,编码端从当前帧的HOA信号中提取核心层信号和空间参数,将提取的核心层信号和空间参数编入码流。解码端采用与编码对称的解码方法从码流中重建出当前帧的HOA信号。另一种方案为基于虚拟扬声器选择的编解码方案。在该方案中,编码端基于匹配投影(match-projection,MP)算法从虚拟扬声器集合中选择与当前帧的HOA信号匹配的目标虚拟扬声器,基于当前帧的HOA信号和目标虚拟扬声器,确定虚拟扬声器信号,基于当前帧的HOA信号和虚拟扬声器信号确定残差信号,将虚拟扬声器信号和残差信号编入码流。解码端采用与编码对称的解码方法从码流中重建出当前帧的HOA信号。
然而,对于声场中相异性声源较少的情况,基于虚拟扬声器选择的编解码方案的压缩率较高,对于声场中相异性声源较多的情况,基于DirAC的编解码方案的压缩率较高。其中,相异性声源指声源的位置和/或方向不同的点声源。而不同音频帧的声场类型(与声场中相异性声源相关)可能不同,如果想要同时满足对不同声场类型下的音频帧均有较高的压缩率,需要根据各音频帧的声场类型为相应音频帧选择合适的编解码方案,这样就需要在不同的编解码方案之间进行切换。但基于不同的编解码方案重建出的HOA信号经过渲染回放后的听觉质量不同,在不同的编解码方案之间进行切换时,如何保证听觉质量的平滑过渡是当前需要考虑的问题。
发明内容
本申请实施例提供了一种编解码方法、装置、设备、存储介质及计算机程序产品,能够在不同的编解码方案之间进行切换时,保证听觉质量的平滑过渡。所述技术方案如下:
第一方面,提供了一种编码方法,该方法包括:
根据当前帧的HOA信号确定当前帧的编码方案,当前帧的编码方案为第一编码方案、第二编码方案和第三编码方案中的一种;其中,第一编码方案为基于方向音频编码的HOA编码方案(即DirAC解码方案),第二编码方案为基于虚拟扬声器选择的HOA编码方案(可以简称为基于MP的HOA解码方案),第三编码方案为混合编码方案;若当前帧的编码方案为第三编码方案,则将该HOA信号中指定通道的信号编入码流,指定通道为该HOA信号的所有通道中的部分通道。其中,混合编码方案在编码过程中既会使用第一编码方案(即DirAC编码方案)相关的技术手段,也会使用第二编码方案(基于MP的HOA编码方案)相关的技术手段,所以叫混合编码方案。
在本申请实施例中,针对不同的音频帧选择合适的编解码方案,这样能提升音频信号的压缩率。同时,对于某些音频帧来说,并非直接采用第一编码方案和第二编码方案中的任一个,而是采用一种新的编解码方案来编解码这些音频帧,即将这些音频帧的HOA信号中指定通道的信号编入码流,即采用一种折中的方案进行编解码,从而使得对解码恢复出的HOA信号进行渲染播放后的听觉质量能够平滑过渡。
可选地,指定通道的信号包括一阶立体混响(first-order ambisonics,FOA)信号,FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号。
可选地,将HOA信号中指定通道的信号编入码流,包括:基于W信号、X信号、Y信号和Z信号,确定虚拟扬声器信号和残差信号;将虚拟扬声器信号和残差信号编入码流。
可选地,基于W信号、X信号、Y信号和Z信号,确定虚拟扬声器信号和残差信号,包括:将W信号确定为一路虚拟扬声器信号;基于W信号、X信号、Y信号和Z信号确定三路残差信号,或者,将X信号、Y信号和Z信号确定为三路残差信号。可选地,将X信号、Y信号和Z信号分别与W信号之间的差信号确定为三路残差信号。
可选地,将虚拟扬声器信号和残差信号编入码流,包括:将这一路虚拟扬声器信号与第一路预设单声道信号组合,以得到一路立体声信号;将这三路残差信号与第二路预设单声道信号组合,以得到两路立体声信号;通过立体声编码器将得到的三路立体声信号分别编入码流。
可选地,将这三路残差信号与第二路预设单声道信号组合,以得到两路立体声信号,包括:将这三路残差信号中相关性最高的两路残差信号组合,以得到两路立体声信号中的一路立体声信号;将这三路残差信号中除相关性最高的两路残差信号之外的一路残差信号与第二路预设单声道信号组合,以得到两路立体声信号中的另一路立体声信号。
可选地,第一路预设单声道信号为全零信号或全一信号,全零信号包括采样点的值均为零的信号或者频点的值均为零的信号,全一信号包括采样点的值均为一的信号或者频点的值均为一的信号;第二路预设单声道信号为全零信号或全一信号;第一路预设单声道信号与第二路预设单声道信号相同或不同。
可选地,将虚拟扬声器信号和残差信号编入码流,包括:通过单声道编码器将这一路虚拟扬声器信号、以及这三路残差信号中的各路残差信号分别编入码流。
可选地,根据当前帧的HOA信号确定当前帧的编码方案之后,还包括:若当前帧的编码方案为第一编码方案,则按照第一编码方案将该HOA信号编入码流;若当前帧的编码方案为第二编码方案,则按照第二编码方案将该HOA信号编入码流。
可选地,根据当前帧的高阶立体混响HOA信号确定当前帧的编码方案,包括:根据该HOA信号确定当前帧的初始编码方案,初始编码方案为第一编码方案或第二编码方案;若当前帧的初始编码方案与当前帧的前一帧的初始编码方案相同,则确定当前帧的编码方案为当前帧的初始编码方案;若当前帧的初始编码方案为第一编码方案且当前帧的前一帧的初始编码方案为第二编码方案,或当前帧的初始编码方案为第二编码方案且当前帧的前一帧的初始编码方案为第一编码方案,则确定当前帧的编码方案为第三编码方案。
可选地,根据该HOA信号确定当前帧的初始编码方案之后,还包括:将当前帧的初始编码方案的指示信息编入码流。
可选地,根据当前帧的高阶立体混响HOA信号确定当前帧的编码方案之后,还包括:确定当前帧的切换标志的值,当当前帧的编码方案为第一编码方案或第二编码方案时,当前帧的切换标志的值为第一值;当当前帧的编码方案为第三编码方案时,当前帧的切换标志的值为第二值;将切换标志的值编入码流。也即是,用切换标志来指示当前帧是否为切换帧。
可选地,根据当前帧的HOA信号确定当前帧的编码方案之后,还包括:将当前帧的编码方案的指示信息编入码流。
可选地,指定通道与第一编码方案中预设的传输通道一致。这样能够保证切换帧的听觉质量与采用第一编码方案所编码的音频帧的听觉质量相近。
第二方面,提供了一种解码方法,该方法包括:
基于码流获得当前帧的解码方案,当前帧的解码方案为第一解码方案、第二解码方案和第三解码方案中的一种;其中,第一解码方案为基于方向音频解码的高阶立体混响HOA解码方案,第二解码方案为基于虚拟扬声器选择的HOA解码方案,第三解码方案为混合解码方案;若当前帧的解码方案为第三解码方案,则基于码流确定当前帧的HOA信号中指定通道的信号,指定通道为该HOA信号的所有通道中的部分通道;基于指定通道的信号,确定该HOA信号中除指定通道之外的一个或多个剩余通道的增益;基于指定通道的信号和该一个或多个剩余通道的增益,确定该一个或多个剩余通道中各个剩余通道的信号;基于指定通道的信号和该一个或多个剩余通道的信号,获得当前帧的重建HOA信号。其中,混合解码方案在解码过程中既会使用第一解码方案(即DirAC解码方案)相关的技术手段,也会使用第二解码方案(基于MP的HOA解码方案)相关的技术手段,所以叫混合解码方案。
在本申请实施例中,由于编码端采用第三编码方案编码当前帧的HOA信号时,将指定通道的信号编入了码流,那么解码端从码流中解析出指定通道的信号,之后基于指定通道的信号重建出剩余通道的信号,进而重建出HOA信号。也即是,采用一种折中的方案,从而使得对解码恢复出的HOA信号进行渲染播放后的听觉质量能够平滑过渡。
可选地,基于码流确定当前帧的HOA信号中指定通道的信号,包括:基于码流确定虚拟扬声器信号和残差信号;基于该虚拟扬声器信号和残差信号,确定指定通道的信号。
可选地,基于码流确定虚拟扬声器信号和残差信号,包括:通过立体声解码器对码流进行解码,以得到三路立体声信号;基于这三路立体声信号,确定一路虚拟扬声器信号和三路残差信号。
可选地,基于这三路立体声信号,确定一路虚拟扬声器信号和三路残差信号,包括:基于这三路立体声信号中的一路立体声信号,确定一路虚拟扬声器信号;基于这三路立体声信号中的另两路立体声信号,确定三路残差信号。
可选地,基于码流确定虚拟扬声器信号和残差信号,包括:通过单声道解码器对码流进行解码,以得到一路虚拟扬声器信号和三路残差信号。
可选地,指定通道的信号包括一阶立体混响FOA信号,FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号;基于虚拟扬声器信号和残差信号,确定指定通道的信号,包括:基于该虚拟扬声器信号,确定W信号;基于该残差信号与W信号确定X信号、Y信号和Z信号,或者,基于该残差信号确定X信号、Y信号和Z信号。
可选地,该方法还包括:若当前帧的解码方案为第一解码方案,则按照第一解码方案,根据码流获得当前帧的重建HOA信号;若当前帧的解码方案为第二解码方案,则按照第二解码方案,根据码流获得当前帧的重建HOA信号。
可选地,按照第二解码方案,根据码流获得当前帧的重建HOA信号,包括:按照第二解码方案,根据码流获得初始HOA信号;若当前帧的前一帧的解码方案为第三解码方案,则根据当前帧的前一帧的高阶增益,对初始HOA信号的高阶部分进行增益调整;基于初始HOA信号的低阶部分和经增益调整的高阶部分,获得重建HOA信号。也即是,通过高阶增益调整,使得听觉质量进一步地平滑过渡。
可选地,基于码流获得当前帧的解码方案,包括:从码流中解析出当前帧的切换标志的值;若切换标志的值为第一值,则从码流中解析当前帧的解码方案的指示信息,指示信息用于指示当前帧的解码方案为第一解码方案或第二解码方案;若切换标志的值为第二值,确定当前帧的解码方案为第三解码方案。
可选地,基于码流获得当前帧的解码方案,包括:从码流中解析出当前帧的解码方案的指示信息,指示信息用于指示当前帧的解码方案为第一解码方案、第二解码方案或第三解码方案。
可选地,基于码流获得当前帧的解码方案,包括:从码流中解析出当前帧的初始解码方案,初始解码方案为第一解码方案或第二解码方案;若当前帧的初始解码方案与当前帧的前一帧的初始解码方案相同,则确定当前帧的解码方案为当前帧的初始解码方案;若当前帧的初始解码方案为第一解码方案且当前帧的前一帧的初始解码方案为第二解码方案,或当前帧的初始解码方案为第二解码方案且当前帧的前一帧的初始解码方案为第一解码方案,则确定当前帧的解码方案为第三解码方案。
第三方面,提供了一种编码装置,所述编码装置具有实现上述第一方面中编码方法行为的功能。所述编码装置包括一个或多个模块,该一个或多个模块用于实现上述第一方面所提供的编码方法。
也即是,提供了一种编码装置,该装置包括:
第一确定模块,用于根据当前帧的高阶立体混响HOA信号确定当前帧的编码方案,当前帧的编码方案为第一编码方案、第二编码方案和第三编码方案中的一种;其中,第一编码方案为基于方向音频编码的HOA编码方案,第二编码方案为基于虚拟扬声器选择的HOA编码方案,第三编码方案为混合编码方案;
第一编码模块,用于若当前帧的编码方案为第三编码方案,则将HOA信号中指定通道的信号编入码流,指定通道为HOA信号的所有通道中的部分通道。
可选地,指定通道的信号包括一阶立体混响FOA信号,FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号。
可选地,第一编码模块包括:
第一确定子模块,用于基于W信号、X信号、Y信号和Z信号,确定虚拟扬声器信号和残差信号;
编码子模块,用于将该虚拟扬声器信号和残差信号编入码流。
可选地,第一确定子模块用于:
将W信号确定为一路虚拟扬声器信号;
基于W信号、X信号、Y信号和Z信号确定三路残差信号,或者,将X信号、Y信号和Z信号确定为三路残差信号。
可选地,编码子模块用于:
将这一路虚拟扬声器信号与第一路预设单声道信号组合,以得到一路立体声信号;
将这三路残差信号与第二路预设单声道信号组合,以得到两路立体声信号;
通过立体声编码器将得到的三路立体声信号分别编入码流。
可选地,编码子模块用于:
将这三路残差信号中相关性最高的两路残差信号组合,以得到两路立体声信号中的一路立体声信号;
将这三路残差信号中除相关性最高的两路残差信号之外的一路残差信号与第二路预设单声道信号组合,以得到两路立体声信号中的另一路立体声信号。
可选地,第一路预设单声道信号为全零信号或全一信号,全零信号包括采样点的值均为零的信号或者频点的值均为零的信号,全一信号包括采样点的值均为一的信号或者频点的值均为一的信号;第二路预设单声道信号为全零信号或全一信号;第一路预设单声道信号与第二路预设单声道信号相同或不同。
可选地,编码子模块用于:
通过单声道编码器将这一路虚拟扬声器信号、以及这三路残差信号中的各路残差信号分别编入码流。
可选地,该装置还包括:
第二编码模块,用于若当前帧的编码方案为第一编码方案,则按照第一编码方案将该HOA信号编入码流;
第三编码模块,用于若当前帧的编码方案为第二编码方案,则按照第二编码方案将该HOA信号编入码流。
可选地,第一确定模块包括:
第二确定子模块,用于根据该HOA信号确定当前帧的初始编码方案,初始编码方案为第一编码方案或第二编码方案;
第三确定子模块,用于若当前帧的初始编码方案与当前帧的前一帧的初始编码方案相同,则确定当前帧的编码方案为当前帧的初始编码方案;
第四确定子模块,用于若当前帧的初始编码方案为第一编码方案且当前帧的前一帧的初始编码方案为第二编码方案,或当前帧的初始编码方案为第二编码方案且当前帧的前一帧的初始编码方案为第一编码方案,则确定当前帧的编码方案为第三编码方案。
可选地,该装置还包括:
第四编码模块,用于将当前帧的初始编码方案的指示信息编入码流。
可选地,该装置还包括:
第二确定模块,用于确定当前帧的切换标志的值,当当前帧的编码方案为第一编码方案或第二编码方案时,当前帧的切换标志的值为第一值;当当前帧的编码方案为第三编码方案时,当前帧的切换标志的值为第二值;
第五编码模块,用于将该切换标志的值编入码流。
可选地,该装置还包括:
第六编码模块,用于将当前帧的编码方案的指示信息编入码流。
可选地,指定通道与第一编码方案中预设的传输通道一致。
第四方面,提供了一种解码装置,所述解码装置具有实现上述第二方面中解码方法行为的功能。所述解码装置包括一个或多个模块,该一个或多个模块用于实现上述第二方面所提供的解码方法。
也即是,提供了一种解码装置,该装置包括:
第一获得模块,用于基于码流获得当前帧的解码方案,当前帧的解码方案为第一解码方案、第二解码方案和第三解码方案中的一种;其中,第一解码方案为基于方向音频解码的高阶立体混响HOA解码方案,第二解码方案为基于虚拟扬声器选择的HOA解码方案,第三解码方案为混合解码方案;
第一确定模块,用于若当前帧的解码方案为第三解码方案,则基于码流确定当前帧的HOA信号中指定通道的信号,指定通道为HOA信号的所有通道中的部分通道;
第二确定模块,用于基于指定通道的信号,确定HOA信号中除指定通道之外的一个或多个剩余通道的增益;
第三确定模块,用于基于指定通道的信号和该一个或多个剩余通道的增益,确定该一个或多个剩余通道中各个剩余通道的信号;
第二获得模块,用于基于指定通道的信号和该一个或多个剩余通道的信号,获得当前帧的重建HOA信号。
可选地,第一确定模块包括:
第一确定子模块,用于基于码流确定虚拟扬声器信号和残差信号;
第二确定子模块,用于基于该虚拟扬声器信号和残差信号,确定指定通道的信号。
可选地,第一确定子模块用于:
通过立体声解码器对码流进行解码,以得到三路立体声信号;
基于这三路立体声信号,确定一路虚拟扬声器信号和三路残差信号。
可选地,第一确定子模块用于:
基于这三路立体声信号中的一路立体声信号,确定一路虚拟扬声器信号;
基于这三路立体声信号中的另两路立体声信号,确定三路残差信号。
可选地,第一确定子模块用于:
通过单声道解码器对码流进行解码,以得到一路虚拟扬声器信号和三路残差信号。
可选地,指定通道的信号包括一阶立体混响FOA信号,FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号;
第一确定子模块用于:
基于该虚拟扬声器信号,确定W信号;
基于该残差信号与W信号确定X信号、Y信号和Z信号,或者,基于该残差信号确定X信号、Y信号和Z信号。
可选地,该装置还包括:
第一解码模块,用于若当前帧的解码方案为第一解码方案,则按照第一解码方案,根据码流获得当前帧的重建HOA信号;
第二解码模块,用于若当前帧的解码方案为第二解码方案,则按照第二解码方案,根据码流获得当前帧的重建HOA信号。
可选地,第二解码模块包括:
第一获得子模块,用于按照第二解码方案,根据码流获得初始HOA信号;
增益调整子模块,用于若当前帧的前一帧的解码方案为第三解码方案,则根据当前帧的前一帧的高阶增益,对初始HOA信号的高阶部分进行增益调整;
第二获得子模块,用于基于初始HOA信号的低阶部分和经增益调整的高阶部分,获得重建HOA信号。
可选地,第一获得模块包括:
第一解析子模块,用于从码流中解析出当前帧的切换标志的值;
第二解析子模块,用于若该切换标志的值为第一值,则从码流中解析当前帧的解码方案的指示信息,指示信息用于指示当前帧的解码方案为第一解码方案或第二解码方案;
第三确定子模块,用于若该切换标志的值为第二值,确定当前帧的解码方案为第三解码方案。
可选地,第一获得模块包括:
第三解析子模块,用于从码流中解析出当前帧的解码方案的指示信息,指示信息用于指示当前帧的解码方案为第一解码方案、第二解码方案或第三解码方案。
可选地,第一获得模块包括:
第四解析子模块,用于从码流中解析出当前帧的初始解码方案,初始解码方案为第一解码方案或第二解码方案;
第四确定子模块,用于若当前帧的初始解码方案与当前帧的前一帧的初始解码方案相同,则确定当前帧的解码方案为当前帧的初始解码方案;
第五确定子模块,用于若当前帧的初始解码方案为第一解码方案且当前帧的前一帧的初始解码方案为第二解码方案,或当前帧的初始解码方案为第二解码方案且当前帧的前一帧的初始解码方案为第一解码方案,则确定当前帧的解码方案为第三解码方案。
第五方面,提供了一种编码端设备,所述编码端设备包括处理器和存储器,所述存储器用于存储执行上述第一方面所提供的编码方法的程序,以及存储用于实现上述第一方面所提供的编码方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第六方面,提供了一种解码端设备,所述解码端设备包括处理器和存储器,所述存储器用于存储执行上述第二方面所提供的解码方法的程序,以及存储用于实现上述第二方面所提供的解码方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当该指令在计算机上运行时,使得计算机执行上述第一方面所述的编码方法或第二方面所述的解码方法。
第八方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的编码方法或第二方面所述的解码方法。
上述第三方面、第四方面、第五方面、第六方面、第七方面和第八方面所获得的技术效果与第一方面或第二方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
本申请实施例提供的技术方案至少能够带来以下有益效果:
在本申请实施例中,结合两个方案(即基于虚拟扬声器选择的编解码方案和基于方向音频编码的编解码方案)对音频帧的HOA信号进行编解码,也即针对不同的音频帧选择合适的编解码方案,这样能够提升音频信号的压缩率。同时,为了使得在不同编解码方案之间切换时听觉质量的平滑过渡,本方案中对于某些音频帧来说,并非直接采用上述两个方案中的任一个方案进行编解码,而是采用一种新的编解码方案来编解码这些音频帧,即将这些音频帧的HOA信号中指定通道的信号编入码流,即采用一种折中的方案进行编解码,从而使得对解码恢复出的HOA信号进行渲染播放后的听觉质量能够平滑过渡。
附图说明
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的一种终端场景的实施环境的示意图;
图3是本申请实施例提供的一种无线或核心网设备的转码场景的实施环境的示意图;
图4是本申请实施例提供的一种广播电视场景的实施环境的示意图;
图5是本申请实施例提供的一种虚拟现实流场景的实施环境的示意图;
图6是本申请实施例提供的一种编码方法的流程图;
图7是本申请实施例提供的一种切换帧编码方案的示意图;
图8是本申请实施例提供的一种基于虚拟扬声器选择的HOA编码方案的示意图;
图9是本申请实施例提供的一种基于DirAC的HOA编码方案的示意图;
图10是本申请实施例提供的另一种编码方法的流程图;
图11是本申请实施例提供的一种解码方法的流程图;
图12是本申请实施例提供的一种切换帧解码方案的示意图;
图13是本申请实施例提供的一种基于虚拟扬声器选择的HOA解码方案的示意图;
图14是本申请实施例提供的一种基于DirAC的HOA解码方案的示意图;
图15是本申请实施例提供的另一种解码方法的流程图;
图16是本申请实施例提供的一种编码装置的结构示意图;
图17是本申请实施例提供的一种解码装置的结构示意图;
图18是本申请实施例提供的一种编解码装置的示意性框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例提供的编解码方法进行详细地解释说明之前,先对本申请实施例涉及的实施环境进行介绍。
请参考图1,图1是本申请实施例提供的一种实施环境的示意图。该实施环境包括源装置10、目的地装置20、链路30和存储装置40。其中,源装置10可以产生经编码的媒体数据。因此,源装置10也可以被称为媒体数据编码装置。目的地装置20可以对由源装置10所产生的经编码的媒体数据进行解码。因此,目的地装置20也可以被称为媒体数据解码装置。链路30可以接收源装置10所产生的经编码的媒体数据,并可以将该经编码的媒体数据传输给目的地装置20。存储装置40可以接收源装置10所产生的经编码的媒体数据,并可以将该经编码的媒体数据进行存储,这样的条件下,目的地装置20可以直接从存储装置40中获取经编码的媒体数据。或者,存储装置40可以对应于文件服务器或可以保存由源装置10产生的经编码的媒体数据的另一中间存储装置,这样的条件下,目的地装置20可以经由流式传输或下载存储装置40存储的经编码的媒体数据。
源装置10和目的地装置20均可以包括一个或多个处理器以及耦合到该一个或多个处理器的存储器,该存储器可以包括随机存取存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、带电可擦可编程只读存储器(electrically erasableprogrammable read-only memory,EEPROM)、快闪存储器、可用于以可由计算机存取的指令或数据结构的形式存储所要的程序代码的任何其它媒体等。例如,源装置10和目的地装置20均可以包括桌上型计算机、移动计算装置、笔记型(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的“智能”电话等电话手持机、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机或其类似者。
链路30可以包括能够将经编码的媒体数据从源装置10传输到目的地装置20的一个或多个媒体或装置。在一种可能的实现方式中,链路30可以包括能够使源装置10实时地将经编码的媒体数据直接发送到目的地装置20的一个或多个通信媒体。在本申请实施例中,源装置10可以基于通信标准来调制经编码的媒体数据,该通信标准可以为无线通信协议等,并且可以将经调制的媒体数据发送给目的地装置20。该一个或多个通信媒体可以包括无线和/或有线通信媒体,例如该一个或多个通信媒体可以包括射频(radio frequency,RF)频谱或一个或多个物理传输线。该一个或多个通信媒体可以形成基于分组的网络的一部分,基于分组的网络可以为局域网、广域网或全球网络(例如,因特网)等。该一个或多个通信媒体可以包括路由器、交换器、基站或促进从源装置10到目的地装置20的通信的其它设备等,本申请实施例对此不做具体限定。
在一种可能的实现方式中,存储装置40可以将接收到的由源装置10发送的经编码的媒体数据进行存储,目的地装置20可以直接从存储装置40中获取经编码的媒体数据。这样的条件下,存储装置40可以包括多种分布式或本地存取的数据存储媒体中的任一者,例如,该多种分布式或本地存取的数据存储媒体中的任一者可以为硬盘驱动器、蓝光光盘、数字多功能光盘(digital versatile disc,DVD)、只读光盘(compact disc read-onlymemory,CD-ROM)、快闪存储器、易失性或非易失性存储器,或用于存储经编码媒体数据的任何其它合适的数字存储媒体等。
在一种可能的实现方式中,存储装置40可以对应于文件服务器或可以保存由源装置10产生的经编码媒体数据的另一中间存储装置,目的地装置20可经由流式传输或下载存储装置40存储的媒体数据。文件服务器可以为能够存储经编码的媒体数据并且将经编码的媒体数据发送给目的地装置20的任意类型的服务器。在一种可能的实现方式中,文件服务器可以包括网络服务器、文件传输协议(file transfer protocol,FTP)服务器、网络附属存储(network attached storage,NAS)装置或本地磁盘驱动器等。目的地装置20可以通过任意标准数据连接(包括因特网连接)来获取经编码媒体数据。任意标准数据连接可以包括无线信道(例如,Wi-Fi连接)、有线连接(例如,数字用户线路(digital subscriber line,DSL)、电缆调制解调器等),或适合于获取存储在文件服务器上的经编码的媒体数据的两者的组合。经编码的媒体数据从存储装置40的传输可为流式传输、下载传输或两者的组合。
图1所示的实施环境仅为一种可能的实现方式,并且本申请实施例的技术不仅可以适用于图1所示的可以对媒体数据进行编码的源装置10,以及可以对经编码的媒体数据进行解码的目的地装置20,还可以适用于其他可以对媒体数据进行编码和对经编码的媒体数据进行解码的装置,本申请实施例对此不做具体限定。
在图1所示的实施环境中,源装置10包括数据源120、编码器100和输出接口140。在一些实施例中,输出接口140可以包括调节器/解调器(调制解调器)和/或发送器,其中发送器也可以称为发射器。数据源120可以包括图像捕获装置(例如,摄像机等)、含有先前捕获的媒体数据的存档、用于从媒体数据内容提供者接收媒体数据的馈入接口,和/或用于产生媒体数据的计算机图形***,或媒体数据的这些来源的组合。
数据源120可以向编码器100发送媒体数据,编码器100可以对接收到由数据源120发送的媒体数据进行编码,得到经编码的媒体数据。编码器可以将经编码的媒体数据发送给输出接口。在一些实施例中,源装置10经由输出接口140将经编码的媒体数据直接发送到目的地装置20。在其它实施例中,经编码的媒体数据还可存储到存储装置40上,供目的地装置20以后获取并用于解码和/或显示。
在图1所示的实施环境中,目的地装置20包括输入接口240、解码器200和显示装置220。在一些实施例中,输入接口240包括接收器和/或调制解调器。输入接口240可经由链路30和/或从存储装置40接收经编码的媒体数据,然后再发送给解码器200,解码器200可以对接收到的经编码的媒体数据进行解码,得到经解码的媒体数据。解码器可以将经解码的媒体数据发送给显示装置220。显示装置220可与目的地装置20集成或可在目的地装置20外部。一般来说,显示装置220显示经解码的媒体数据。显示装置220可以为多种类型中的任一种类型的显示装置,例如,显示装置220可以为液晶显示器(liquid crystal display,LCD)、等离子显示器、有机发光二极管(organic light-emitting diode,OLED)显示器或其它类型的显示装置。
尽管图1中未示出,但在一些方面,编码器100和解码器200可各自与编码器和解码器集成,且可以包括适当的多路复用器-多路分用器(multiplexer-demultiplexer,MUX-DEMUX)单元或其它硬件和软件,用于共同数据流或单独数据流中的音频和视频两者的编码。在一些实施例中,如果适用的话,那么MUX-DEMUX单元可符合ITU H.223多路复用器协议,或例如用户数据报协议(user datagram protocol,UDP)等其它协议。
编码器100和解码器200各自可为以下各项电路中的任一者:一个或多个微处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(applicationspecific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gatearray,FPGA)、离散逻辑、硬件或其任何组合。如果部分地以软件来实施本申请实施例的技术,那么装置可将用于软件的指令存储在合适的非易失性计算机可读存储媒体中,且可使用一个或多个处理器在硬件中执行所述指令从而实施本申请实施例的技术。前述内容(包括硬件、软件、硬件与软件的组合等)中的任一者可被视为一个或多个处理器。编码器100和解码器200中的每一者都可以包括在一个或多个编码器或解码器中,所述编码器或所述解码器中的任一者可以集成为相应装置中的组合编码器/解码器(编码解码器)的一部分。
本申请实施例可大体上将编码器100称为将某些信息“发信号通知”或“发送”到例如解码器200的另一装置。术语“发信号通知”或“发送”可大体上指代用于对经压缩的媒体数据进行解码的语法元素和/或其它数据的传送。此传送可实时或几乎实时地发生。替代地,此通信可经过一段时间后发生,例如可在编码时在经编码位流中将语法元素存储到计算机可读存储媒体时发生,解码装置接着可在所述语法元素存储到此媒体之后的任何时间检索所述语法元素。
本申请实施例提供的编解码方法可以应用于多种场景,接下来以待编码的媒体数据为HOA信号为例,对其中的几种场景分别进行介绍。
请参考图2,图2是本申请实施例提供的一种编解码方法应用于终端场景的实施环境的示意图。该实施环境包括第一终端101和第二终端201,第一终端101与第二终端201进行通信连接。该通信连接可以为无线连接,也可以为有线连接,本申请实施例对此不做限定。
其中,第一终端101可以为发送端设备,也可以为接收端设备,同理,第二终端201可以为接收端设备,也可以为发送端设备。例如,在第一终端101为发送端设备的情况下,第二终端201为接收端设备,在第一终端101为接收端设备的情况下,第二终端201为发送端设备。
接下来以第一终端101为发送端设备,第二终端201为接收端设备为例进行介绍。
第一终端101和第二终端201均包括音频采集模块、音频回放模块、编码器、解码器、信道编码模块和信道解码模块。在本申请实施例中,该编码器为一种三维音频编码器,该解码器为一种三维音频解码器。
第一终端101中的音频采集模块采集HOA信号并传输给编码器,编码器利用本申请实施例提供的编码方法对HOA信号进行编码,该编码可以称为信源编码。之后,为了实现HOA信号在信道中的传输,信道编码模块还需要再进行信道编码,然后将编码得到的码流通过无线或者有线网络通信设备在数字信道中传输。
第二终端201通过无线或者有线网络通信设备接收数字信道中传输的码流,信道解码模块对码流进行信道解码,然后解码器利用本申请实施例提供的解码方法解码得到HOA信号,再通过音频回放模块进行播放。
其中,第一终端101和第二终端201可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如个人计算机(personal computer,PC)、手机、智能手机、个人数字助手(personal digitalassistant,PDA)、可穿戴设备、掌上电脑PPC(pocket PC)、平板电脑、智能车机、智能电视、智能音箱等。
本领域技术人员应能理解上述终端仅为举例,其他现有的或今后可能出现的终端如可适用于本申请实施例,也应包含在本申请实施例保护范围以内,并在此以引用方式包含于此。
请参考图3,图3是本申请实施例提供的一种编解码方法应用于无线或核心网设备的转码场景的实施环境的示意图。该实施环境包括信道解码模块、音频解码器、音频编码器和信道编码模块。在本申请实施例中,该音频编码器为一种三维音频编码器,该音频解码器为一种三维音频解码器。
其中,音频解码器可以为利用本申请实施例提供的解码方法的解码器,也可以为利用其他解码方法的解码器。音频编码器可以为利用本申请实施例提供的编码方法的编码器,也可以为利用其他编码方法的编码器。在音频解码器为利用本申请实施例提供的解码方法的解码器的情况下,音频编码器为利用其他编码方法的编码器,在音频解码器为利用其他解码方法的解码器的情况下,音频编码器为利用本申请实施例提供的编码方法的编码器。
第一种情况,音频解码器为利用本申请实施例提供的解码方法的解码器,音频编码器为利用其他编码方法的编码器。
此时,信道解码模块用于对接收的码流进行信道解码,然后音频解码器用于利用本申请实施例提供的解码方法进行信源解码,再通过音频编码器按照其他编码方法进行编码,实现一种格式到另一种格式的转换,即转码。之后,再通过信道编码后发送。
第二种情况,音频解码器为利用其他解码方法的解码器,音频编码器为利用本申请实施例提供的编码方法的编码器。
此时,信道解码模块用于对接收的码流进行信道解码,然后音频解码器用于利用其他解码方法进行信源解码,再通过音频编码器利用本申请实施例提供的编码方法进行编码,实现一种格式到另一种格式的转换,即转码。之后,再通过信道编码后发送。
其中,无线设备可以为无线接入点、无线路由器、无线连接器等等。核心网设备可以为移动性管理实体、网关等等。
本领域技术人员应能理解上述无线设备或者核心网设备仅为举例,其他现有的或今后可能出现的无线或核心网设备如可适用于本申请实施例,也应包含在本申请实施例保护范围以内,并在此以引用方式包含于此。
请参考图4,图4是本申请实施例提供的一种编解码方法应用于广播电视场景的实施环境的示意图。广播电视场景分为直播场景和后期制作场景。对于直播场景来说,该实施环境包括直播节目三维声制作模块、三维声编码模块、机顶盒和扬声器组,机顶盒包括三维声解码模块。对于后期制作场景来说,该实施环境包括后期节目三维声制作模块、三维声编码模块、网络接收器、移动终端、耳机等。
直播场景下,直播节目三维声制作模块制作出三维声信号(如HOA信号),该三维声信号经过应用本申请实施例的编码方法得到码流,该码流经广电网络传输到用户侧,由机顶盒中的三维声解码器利用本申请实施例提供的解码方法对码流进行解码,从而重建三维声信号,由扬声器组进行回放。或者,该码流经互联网传输到用户侧,由网络接收器中的三维声解码器利用本申请实施例提供的解码方法对码流进行解码,从而重建三维声信号,由扬声器组进行回放。又或者,该码流经互联网传输到用户侧,由移动终端中的三维声解码器利用本申请实施例提供的解码方法对码流进行解码,从而重建三维声信号,由耳机进行回放。
后期制作场景下,后期节目三维声制作模块制作出三维声信号,该三维声信号经过应用本申请实施例的编码方法得到码流,该码流经广电网络传输到用户侧,由机顶盒中的三维声解码器利用本申请实施例提供的解码方法对码流进行解码,从而重建三维声信号,由扬声器组进行回放。或者,该码流经互联网传输到用户侧,由网络接收器中的三维声解码器利用本申请实施例提供的解码方法对码流进行解码,从而重建三维声信号,由扬声器组进行回放。又或者,该码流经互联网传输到用户侧,由移动终端中的三维声解码器利用本申请实施例提供的解码方法对码流进行解码,从而重建三维声信号,由耳机进行回放。
请参考图5,图5是本申请实施例提供的一种编解码方法应用于虚拟现实流场景的实施环境的示意图。该实施环境包括编码端和解码端,编码端包括采集模块、预处理模块、编码模块、打包模块和发送模块,解码端包括解包模块、解码模块、渲染模块和耳机。
采集模块采集HOA信号,然后通过预处理模块对HOA信号进行预处理操作,预处理操作包括滤除掉HOA信号中的低频部分,通常是以20Hz或者50Hz为分界点,提取HOA信号中的方位信息等。之后通过编码模块,利用本申请实施例提供的编码方法进行编码处理,编码之后通过打包模块进行打包,进而通过发送模块发送给解码端。
解码端的解包模块首先进行解包,之后通过解码模块,利用本申请实施例提供的解码方法进行解码,然后通过渲染模块对解码信号进行双耳渲染处理,渲染处理后的信号映射到收听者耳机上。该耳机可以为独立的耳机,也可以是基于虚拟现实的眼镜设备上的耳机。
需要说明的是,本申请实施例描述的***架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着***架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
接下来对本申请实施例提供的编解码方法进行详细地解释说明。需要说明的是,结合图1所示的实施环境,下文中的任一种编码方法可以是源装置10中的编码器100执行的。下文中的任一种解码方法可以是目的地装置20中的解码器200执行的。
图6是本申请实施例提供的一种编码方法的流程图,该编码方法应用于编码端。请参考图6,该方法包括如下步骤。
步骤601:根据当前帧的HOA信号确定当前帧的编码方案。
对于待编码的多个音频帧的HOA信号来说,编码端逐帧进行编码。其中,音频帧的HOA信号是通过HOA采集技术得到的音频信号。HOA信号是一种场景音频信号,也是一种三维音频信号,HOA信号是指对空间中麦克风所在位置的声场进行采集得到的音频信号,采集得到的音频信号称为原始HOA信号。音频帧的HOA信号也可以是将其他格式的三维音频信号转换后获得的HOA信号。例如将5.1声道信号转换成HOA信号,或者将5.1声道信号和对象音频混合的三维音频信号转换成HOA信号。可选地,待编码的音频帧的HOA信号为时域信号或频域信号,可以包含HOA信号的所有通道,也可以包含HOA信号的部分通道。示例性地,若音频帧的HOA信号的阶数为3,HOA信号的通道数为16,音频帧的帧长为20ms,采样率为48KHz,则待编码的音频帧的HOA信号包含16个通道的信号,每个通道包含960个采样点。
为了降低计算复杂度,若编码端获取到的音频帧的HOA信号为原始HOA信号,原始HOA信号的采样点数或频点数较多,那么编码端可以对原始HOA信号进行下采样,以得到待编码的音频帧的HOA信号。例如,编码端对原始HOA信号进行1/Q下采样,以降低待编码的HOA信号的采样点数或频点数,如本申请实施例中原始HOA信号的每个通道包含960个采样点,采用1/120下采样后,得到待编码的HOA信号的每个通道包含8个采样点。
在本申请实施例中以编码端对当前帧进行编码为例,对编码端的编码方法进行介绍。当前帧为待编码的一个音频帧。也即是,编码端获取当前帧的HOA信号,采用本申请实施例提供的编码方法对当前帧的HOA信号进行编码。
需要说明的是,为了满足对不同声场类型下的音频帧均有较高的压缩率,需要根据各音频帧的声场类型为相应音频帧选择合适的编解码方案。在本申请实施例中,编码端先根据当前帧的HOA信号确定当前帧的初始编码方案,初始编码方案为第一编码方案或第二编码方案。编码端再通过对比当前帧的初始编码方案和当前帧的前一帧的初始编码方案是否相同,来判定采用第一编码方案、第二编码方案还是第三编码方案对当前帧的HOA信号进行编码。其中,若当前帧的初始编码方案与当前帧的前一帧的初始编码方案相同,则编码端采用与当前帧的初始编码方案相一致的编码方案来编码当前帧的HOA信号。若当前帧的初始编码方案与当前帧的前一帧的初始编码方案不同,则编码端采用切换帧编码方案来编码当前帧的HOA信号。
在本申请实施例中,当前帧的编码方案为第一编码方案、第二编码方案和第三编码方案中的一种。其中,第一编码方案为基于DirAC的HOA编码方案,第二编码方案为基于虚拟扬声器选择的HOA编码方案,第三编码方案为混合编码方案。可选地,混合编码方案也称为切换帧编码方案。第三编码方案为本申请实施例提供的一种切换帧编码方案,第三编码方案为了在不同的编解码方案之间切换时听觉质量的平滑过渡。本申请实施例将会在下文对这三种编码方案进行详细介绍。在本申请实施例中,基于虚拟扬声器选择的HOA编码方案也称为基于MP的HOA编码方案。
在本申请实施例中,编码端根据当前帧的HOA信号确定当前帧的初始编码方案。然后,编码端基于当前帧的初始编码方案和当前帧的前一帧的初始编码方案,确定当前帧的编码方案。需要说明的是,本申请实施例不限定编码端确定初始编码方案的实现方式。
可选地,编码端对当前帧的HOA信号进行声场类型分析,以得到当前帧的声场分类结果,基于当前帧的声场分类结果,确定当前帧的初始编码方案。需要说明的是,本申请实施例不限定声场类型分析的方法,例如编码端通过对当前帧的HOA信号进行奇异值分解以进行声场类型分析,或者对该HOA信号进行其他的线性分解以进行声场类型分析。
可选地,声场分类结果包括相异性声源数量。以编码端对当前帧的HOA信号直接进行声场类型分析为例,编码端对当前帧的HOA信号进行声场类型分析,以得到当前帧的声场分类结果的一种实现方式为:编码端对当前帧的HOA信号进行奇异值分解,得到M个奇异值。编码端计算该M个奇异值中的第i个奇异值与第i+1个奇异值的比值,以得到M-1个声场分类参数。其中,i=1,2,…,M。编码端基于该M-1个声场分类参数,确定当前帧对应的相异性声源数量。其中,M=min(L,K),L表示当前帧的HOA信号的通道数量,K表示当前帧的HOA信号的每个通道的信号点数,min表示取最小值运算。若HOA信号为时域信号,则信号点数为采样点数,若HOA信号为频域信号,则信号点数为频点数。
可选地,假设该M-1个声场类型参数为temp[i],i=0,1,…,M-2,编码端基于该M-1个声场分类参数,确定当前帧对应的相异性声源数量的一种实现方式为:从i=0开始依次执行如下流程:判断temp[i]是否大于预设的相异性声源判定阈值,若本轮流程中temp[i]小于该相异性声源判定阈值,则更新i的取值为i+1,继续执行下轮流程,若本轮流程中temp[i]大于或等于该相异性声源判定阈值,则确定当前帧对应的相异性声源数量等于i+1,结束流程。可选地,相异性声源判定阈值为30、80或100等,相异性声源判定阈值为预设的值,可以根据经验或通过统计进行预设。
相应地,在一种实现方式中,在确定当前帧对应的相异性声源数量之后,若当前帧对应的相异性声源数量大于第一阈值且小于第二阈值,则编码端确定当前帧的初始编码方案为第二编码方案。若当前帧对应的相异性声源数量不大于第一阈值或不小于第二阈值,则编码端确定当前帧的初始编码方案为第一编码方案。其中,第一阈值小于第二阈值。可选地,第一阈值为0或其他值,第二阈值为3或其他值。前述第一阈值、第二阈值为预设的值,可以根据经验或通过统计进行预设。
示例性地,假设当前帧的HOA信号的通道数量L=16,每个通道的频点数K=8,min(L,K)=8。那么,编码端对当前帧的HOA信号进行奇异值分解,得到奇异值v[i],i=0,1,…,min(L,K)-1。编码端计算相邻奇异值之间的比值,将得到的比值作为当前帧的声场分类结果temp[i],temp[i]=v[i]/v[i+1],i=0,1,…,min(L,K)-2。假设相异性声源判定阈值为100,确定相异性声源数量n的过程如下:从i=0开始,判断temp[i]是否大于或等于100,若temp[i]大于或等于100,即满足temp[i]≥100,则停止判断;否则i=i+1,继续判断。若停止判断,则停止判断时的序号i加上1等于当前帧对应的相异性声源数量n。例如,i=0时,若temp[0]≥100,则停止判断,相异性声源数量n等于1;否则令i=1,继续判断i=1;当i=1时,temp[1]≥100,则停止判断,相异性声源数量n等于i+1=2。假设第一阈值为0,第二阈值为3,则若当前帧对应的相异性声源数量n满足0<n<3,则编码端确定当前帧的初始编码方案为第二编码方案。若当前帧对应的相异性声源数量n满足n=0或n≥3,则编码端确定当前帧的初始编码方案为第一编码方案。
可选地,声场分类结果包括声场类型,声场类型分为弥散性声场和相异性声场。声场类型可以根据前述方法得到的相异性声源数量来确定,即,编码端基于当前帧对应的相异性声源数量确定当前帧的声场类型。例如,若当前帧对应的相异性声源数量大于第一阈值且小于第二阈值,则编码端确定当前帧的声场类型为相异性声场。若当前帧对应的相异性声源数量不大于第一阈值或不小于第二阈值,则编码端确定当前帧的声场类型为弥散性声场。相应地,若当前帧的声场类型为相异性声场,则编码端确定当前帧的初始编码方案为第二编码方案,即基于MP的HOA编码方案。若当前帧的声场类型为弥散性声场类型,则编码端确定当前帧的初始编码方案为第一编码方案,即基于DirAC的HOA编码方案。
在一些实施例中,通过上述实现方式确定各个音频帧(包括当前帧)的初始编码方案之后,可能会出现各个音频帧的初始编码方案来回切换的情况,也即最终需要编码的切换帧较多。由于编码方案之间的切换带来的问题较多,即需要解决的问题较多,那么可以通过减少切换帧的数量来减少切换带来的问题。为了减少切换帧的数量,编码端可以先根据当前帧的声场分类结果,确定当前帧的预计编码方案,即编码端将按照前述方法确定的初始编码方案作为预计编码方案。然后,编码端采用滑动窗的方法基于预计编码方案更新当前帧的初始编码方案,如编码端通过hangover处理来更新当前帧的初始编码方案。
可选地,假设滑动窗的长度为N,滑动窗内包含当前帧的预计编码方案以及当前帧的前N-1帧的已更新的初始编码方案。若滑动窗内第二编码方案的个数累计不小于第一指定阈值,则编码端将当前帧的初始编码方案更新为第二编码方案。若滑动窗内第二编码方案的个数累计小于第一指定阈值,则编码端将当前帧的初始编码方案更新为第一编码方案。其中,滑动窗的长度N为8、10、15等,第一指定阈值为5、6、7等值,本申请实施例对滑动窗的长度和第一指定阈值的取值不作限定。举例说明如下,假设滑动窗的长度为10,第一指定阈值为7,滑动窗内包含当前帧的预计编码方案以及当前帧的前9帧的已更新的初始编码方案,如果滑动窗内第二编码方案的个数累计到不小于7,则编码端将当前帧的初始编码方案确定为第二编码方案,如果滑动窗内第二编码方案的个数累计小于7,则编码端将当前帧的初始编码方案更新为第一编码方案。
或者,若滑动窗内第一编码方案的个数累计不小于第二指定阈值,则编码端将当前帧的初始编码方案更新为第一编码方案。若滑动窗内第一编码方案的个数累计小于第二指定阈值,则编码端将当前帧的初始编码方案更新为第二编码方案。其中,第二指定阈值为5、6、7等值,本申请实施例对第二指定阈值的取值不作限定。可选地,第二指定阈值与上述第一指定阈值不同或相同。
除了上述介绍的一些实现方式之外,编码端也可以采用其他的方法来得到当前帧的声场分类结果,基于声场分类结果确定初始编码方案的方法也可以采用其他的方法,本申请实施例对此不作限定。
在本申请实施例中,编码端确定当前帧的初始编码方案之后,若当前帧的初始编码方案与当前帧的前一帧的初始编码方案相同,则编码端确定当前帧的编码方案为当前帧的初始编码方案。若当前帧的初始编码方案与当前帧的前一帧的初始编码方案不同,则编码端确定当前帧的编码方案为第三编码方案。也即是,若当前帧的初始编码方案与当前帧的前一帧的初始编码方案相同且为第一编码方案,则编码端确定当前帧的编码方案为第一编码方案。若当前帧的初始编码方案与当前帧的前一帧的初始编码方案相同且为第二编码方案,则编码端确定当前帧的编码方案为第二编码方案。若当前帧的初始编码方案与当前帧的前一帧的初始编码方案中的一个为第一编码方案,另一个为第二编码方案,则编码端确定当前帧的编码方案为第三编码方案。其中,当前帧的初始编码方案与当前帧的前一帧的初始编码方案中的一个为第一编码方案,另一个为第二编码方案,即,当前帧的初始编码方案为第一编码方案且当前帧的前一帧的初始编码方案为第二编码方案,或者,当前帧的初始编码方案为第二编码方案且当前帧的前一帧的初始编码方案为第一编码方案。也即是,对于切换帧来说,编码端既不采用第一编码方案也不采用第二编码方案来编码切换帧的HOA信号,而是将采用切换帧编码方案来编码切换帧的HOA信号。对于非切换帧来说,编码端将采用与非切换帧的初始编码方案相一致的编码方案来编码切换帧的HOA信号。其中,初始编码方案与前一帧的初始编码方案不同的音频帧为切换帧,初始编码方案与前一帧的初始编码方案相同的音频帧为非切换帧。
需要说明的是,编码端除了确定当前帧的编码方案之外,还需将能够指示当前帧的编码方案的信息编入码流,以便于解码端确定采用哪个解码方案来解码当前帧的码流。在本申请实施例中,编码端将能够指示当前帧的编码方案的信息编入码流的实现方式有多种,接下来介绍其中的三种实现方式。
第一种实现方式、编码切换标志以及两种编码方案的指示信息
在该实现方式中,编码端需要确定当前帧的切换标志的值,将当前帧的切换标志的值编入码流。其中,当当前帧的编码方案为第一编码方案或第二编码方案时,当前帧的切换标志的值为第一值。当当前帧的编码方案为第三编码方案时,当前帧的切换标志的值为第二值。可选地,第一值为“0”,第二值为“1”,第一值和第二值也可以为其他的值。
另外,编码端将当前帧的初始编码方案的指示信息编入码流。或者,若当前帧的切换标志的值为第一值,则编码端将当前帧的初始编码方案的指示信息编入码流,若当前帧的切换标志的值为第二值,则编码端将预设指示信息编入码流。
可选地,初始编码方案的指示信息以与初始编码方案相对应的编码模式(codingmode)来表示,即,以编码模式作为指示信息。例如,与初始编码方案相对应的编码模式为初始编码模式,初始编码模式为第一编码模式(即DirAC模式)或第二编码模式(即MP模式)。可选地,预设指示信息为预设编码模式,预设编码模式为第一编码模式或第二编码模式。在其他一些实施例中,预设指示信息为其他编码模式,也即不限定编入码流的切换帧的编码方案的指示信息具体是什么。
也即是,在该第一种实现方式中,编码端以切换标志来指示切换帧,且可以不限定编入码流的切换帧的编码方案的指示信息,切换帧的编码方案的指示信息可以为初始编码模式,也可以为预设编码模式,也可以从第一编码模式和第二编码模式中随机选定,也可以是其他的指示信息。需要说明的是,在这种实现方式中,用切换标志来指示当前帧是否为切换帧,这样,解码端即能够直接通过获取码流中的切换标志来确定当前帧是否为切换帧。
可选地,在该第一种实现方式中,当前帧的切换标志和初始编码方案的指示信息各占码流的一个比特位。示例性地,当前帧的切换标志的值为“0”或“1”,其中,切换标志的值为“0”指示当前帧不是切换帧,即当前帧的切换标志的值为第一值。切换标志为“1”指示当前帧是切换帧,即当前帧的切换标志的值为第二值。可选地,初始编码方案的指示信息为“0”或“1”,其中,“0”表示DirAC模式(即DirAC编码方案),“1”表示MP模式(即基于MP的编码方案)。
在其他一些实施例中,若当前帧的初始编码方案与当前帧的前一帧的初始编码方案不同,则编码端确定当前帧的切换标志的值为第二值,将当前帧的切换标志的值编入码流。也即是,对于切换帧来说,由于码流中切换标志即能够指示切换帧,因此无需编码切换帧的编码方案的指示信息。
第二种实现方式、编码两种编码方案的指示信息
在该实现方式中,编码端将当前帧的初始编码方案的指示信息编入码流。以编码模式作为指示信息为例,编入码流的指示信息实质上是与初始编码方案相一致的编码模式,即初始编码模式,初始编码模式为第一编码模式或第二编码模式。另外,编码端可以不编码切换标志。
可选地,在该第一种实现方式中,初始编码方案的指示信息占码流的一个比特位。示例性地,以编码模式作为指示信息为例,编入码流的编码模式为“0”或“1”,其中,“0”表示DirAC模式,指示当前帧的初始编码方案为第一编码方案,“1”表示MP模式,指示当前帧的初始编码方案为第二编码方案。
第三种实现方式、编码三种编码方案的指示信息
在该实现方式中,编码端将当前帧的编码方案的指示信息编入码流。以编码模式作为指示信息为例,编入码流的指示信息实质上是与当前帧的编码方案相一致的编码模式,与当前帧的编码方案相一致的编码模式为实际编码模式,实际编码模式即第一编码模式、第二编码模式或第三编码模式。可选地,第三编码模式为MP-W模式。
可选地,在该第三种实现方式中,当前帧的编码方案的指示信息占码流的两个比特位。示例性地,当前帧的编码方案的指示信息为“00”、“01”或“10”。其中,“00”指示当前帧的编码方案为第一编码方案,“01”指示当前帧的编码方案为第二编码方案,“10”指示当前帧的编码方案为第三编码方案。
由上述可知,在上述第一种实现方式中,编码端确定当前帧的初始编码方案之后,确定切换标志的值,将切换标志的值编入码流。另外,将当前帧的初始编码方案的指示信息编入码流,或者,若当前帧为切换帧,则编码端将预设指示信息编入码流,若当前帧为非切换帧,则编码端将当前帧的初始编码方案的指示信息编入码流。在上述第二种实现方式中,编码端确定当前帧的初始编码方案之后,直接将当前帧的初始编码方案的指示信息编入码流。在上述第三种实现方式中,编码端确定当前帧的初始编码方案之后,基于当前帧的初始编码方案和当前帧的前一帧的初始编码方案,确定当前帧的编码方案,将当前帧的编码方案的指示信息编入码流。
步骤602:若当前帧的编码方案为第三编码方案,则将该HOA信号中指定通道的信号编入码流,指定通道为该HOA信号的所有通道中的部分通道。
在本申请实施例中,若当前帧的编码方案为第三编码方案,表示当前帧为切换帧,则编码端按照第三编码方案(即混合编码方案)对当前帧的HOA信号进行编码。对应于上述步骤601中的第一种实现方式,若当前帧的切换标志的值为第二值,表示当前帧为切换帧。对应于上述步骤601中的第二种实现方式,若当前帧的初始编码方案与当前帧的前一帧的初始编码方案不同,表示当前帧为切换帧。对应于上述步骤601中的第三种实现方式,若当前帧的编码方案为第三编码方案,则当前帧的编码方案指示当前帧为切换帧。对于切换帧来说,编码端采用第三编码方案来编码当前帧的HOA信号。其中,第三编码方案指示将当前帧的HOA信号中指定通道的信号编入码流,其中,指定通道为该HOA信号的所有通道中的部分通道。也即是,对于切换帧来说,编码端将切换帧的HOA信号中指定通道的信号编入码流,而非采用第一编码方案或第二编码方案对切换帧进行编码,即本方案为了编码方案切换时听觉质量的平滑过渡,采用一种折中的方式来编码切换帧。
可选地,指定通道与第一编码方案中预设的传输通道一致,即指定通道为预设通道。也即是,在第三编码方案与第二编码方案不同的前提下,为了使得第三编码方案与第二编码方案的编码效果相接近,编码端将切换帧的HOA信号中与第一编码方案中预设的传输通道相同的通道的信号编入码流,从而使得听觉质量尽可能地平滑过渡。需要说明的是,根据编码带宽、码率的不同,甚至是应用场景的不同,可以分别预设不同的传输通道。可选地,不同的编码带宽、码率或应用场景下,预设的传输通道也可以相同。
可选地,指定通道的信号包括FOA信号,FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号。也即是,指定通道包括FOA通道,FOA通道的信号为低阶信号,即,若当前帧为切换帧,则编码端将当前帧的HOA信号的低阶部分编入码流,低阶部分即包括FOA通道的W信号、X信号、Y信号和Z信号。
需要说明的是,在本申请实施例中,编码端将HOA信号中指定通道的信号编入码流的实现方式有很多,能将指定通道的信号编入码流即可。接下来介绍其中的一些实现方式。
在本申请实施例中,若指定通道包括FOA通道,则编码端基于W信号、X信号、Y信号和Z信号,确定虚拟扬声器信号和残差信号,将虚拟扬声器信号和残差信号编入码流。
可选地,编码端将W信号确定为一路虚拟扬声器信号,基于W信号、X信号、Y信号和Z信号确定三路残差信号,或者,将X信号、Y信号和Z信号确定为三路残差信号。可选地,编码端将W信号、X信号、Y信号和Z信号中任意三路信号与剩余一路信号之间的差信号确定为三路残差信号。例如,编码端将X信号、Y信号和Z信号分别与W信号之间的差信号确定为三路残差信号。示例性地,编码端将X-W、Y-W、Z-W分别得到的差信号X’、Y’、Z’作为三路残差信号。
若编码端使用核心编码器对当前帧进行编码,核心编码器为立体声编码器,由于所确定的一路虚拟扬声器信号和三路残差信号都是单声道信号,因此,编码端需要先基于这些单声道信号组合出立体声信号,进而使用立体声编码器进行编码。可选地,编码端将该一路虚拟扬声器信号与第一路预设单声道信号组合,以得到一路立体声信号,将该三路残差信号与第二路预设单声道信号组合,以得到两路立体声信号。编码端通过立体声编码器将得到的三路立体声信号分别编入码流。
其中,本申请实施例不限定编码端将该三路残差信号与一路预设单声道信号组合,以得到两路立体声信号的具体组合方式。可选地,编码端将该三路残差信号中相关性最高的两路残差信号组合,以得到该两路立体声信号中的一路立体声信号,将该三路残差信号中除相关性最高的两路残差信号之外的一路残差信号与第二路预设单声道信号组合,以得到该两路立体声信号中的另一路立体声信号。也即是,编码端根据信号的相关性来组合得到立体声信号。在其他一些实施例中,编码端也可以将该三路残差信号中的任意两路残差信号组合,以得到这两路立体声信号中的一路立体声信号,将剩余一路残差信号与第二路预设单声道信号组合,以得到该两路立体声信号中的另一路立体声信号。
可选地,本申请实施例中的第一路预设单声道信号为全零信号或全一信号,第二路预设单声道信号为全零信号或全一信号。可选地,第一路预设单声道信号与第二路预设单声道信号相同或不同,即,第一路预设单声道信号与第二路预设单声道信号均为全零信号或全一信号,或者,第一路预设单声道信号为全零信号且第二路预设单声道信号为全一信号,或者,第一路预设单声道信号为全一信号且第二路预设单声道信号为全零信号。其中,全零信号包括采样点的值均为零的信号或者频点的值均为零的信号,全一信号包括采样点的值均为一的信号或者频点的值均为一的信号。其中,若HOA信号为时域信号,则全零信号包括采样点的值均为零的信号,全一信号包括采样点的值均为一的信号。若HOA信号为频域信号,则全零信号包括频点的值均为零的信号,全一信号包括频点的值均为一的信号。在其他一些实施例中,第一路预设单声道信号和/或第二路预设单声道信号也可以是预设的其他形式的信号。
若编码端使用的核心编码器为单声道编码器,则编码端通过单声道编码器将该一路虚拟扬声器信号、以及该三路残差信号中的各路残差信号分别编入码流。
图7是本申请实施例提供的一种切换帧编码方案的示意图。请参考图7,待编码的当前帧为切换帧,编码端获取当前帧的HOA信号,将该HOA信号中的W信号作为虚拟扬声器信号,根据该HOA信号中的FOA信号确定残差信号,如根据该HOA信号中的X、Y、Z信号确定残差信号,或根据W信号和X、Y、Z信号确定残差信号。编码端通过核心编码器将所确定的虚拟扬声器信号和残差信号编入码流,以得到切换帧的码流。
可选地,在其他实施例中,编码端将W信号、X信号、Y信号和Z信号中的两路信号确定为两路虚拟扬声器信号,将剩余两路信号确定为两路残差信号。编码端将该两路虚拟扬声器信号组合,以得到一路立体声信号,将该两路残差信号组合,以得到另一路立体声信号。编码端通过立体声编码器将得到的两路立体声信号分别编入码流。
其中,本申请实施例不限定编码端将W信号、X信号、Y信号和Z信号进行两两组合以得到两路立体声信号的具体组合方式。可选地,编码端将W信号确定为一路虚拟扬声器信号,将X信号、Y信号和Z信号中与W信号相关性最高的一路信号确定为另一路虚拟扬声器信号,也即将FOA通道包括的四路信号中的W信号以及与W信号相关性最高的一个信号进行组合,将剩余两路信号进行组合。或者,编码端将W信号、X信号、Y信号和Z信号中的任意两路信号进行组合,以得到一路立体声信号,将剩余两路信号进行组合,以得到另一路立体声信号。
需要说明的是,本申请实施例不限定编码端采用核心编码器编码虚拟扬声器信号和残差信号的具体实现方式,例如不限定虚拟扬声器信号和残差信号分别对应的编码比特数等。
以上介绍了当前帧为切换帧的情况下,编码端对当前帧编码的过程,也即编码端按照第三编码方案将切换帧的HOA信号中指定通道的信号编入码流,第三编码方案即切换帧编码方案。由上述可知,在本申请实施例中,指定通道的信号可以包括W信号,W信号是HOA信号的一个核心信号,这样,切换帧编码方案也可称为基于MP-W的编码方案。接下来介绍在当前帧为非切换帧的情况下,编码端对当前帧编码的过程。
在本申请实施例中,若当前帧的编码方案为第一编码方案,则编码端按照第一编码方案将当前帧的HOA信号编入码流。若当前帧的编码方案为第二编码方案,则编码端按照第二编码方案将当前帧的HOA信号编入码流。也即是,若当前帧不是切换帧,则编码端采用当前帧的初始编码方案来编码当前帧。
示例性地,参见图8,编码端按照第二编码方案将当前帧的HOA信号编入码流的实现过程为:编码端基于MP算法从虚拟扬声器集合中选择与当前帧的HOA信号匹配的目标虚拟扬声器,基于当前帧的HOA信号和目标虚拟扬声器,通过基于MP的空间编码器确定虚拟扬声器信号,基于当前帧的HOA信号和虚拟扬声器信号通过基于MP的空间编码器确定残差信号,通过核心编码器将虚拟扬声器信号和残差信号编入码流。需要说明的是,基于MP的HOA编码方案与切换帧编码方案中确定虚拟扬声器信号和残差信号的原理和具体方式不同,且两个方案所确定的虚拟扬声器信号和残差信号也不同。对于同一帧来说,采用基于MP的HOA编码方案编入码流的有效信息会多于采用切换帧编码方案。而本方案在切换帧编码方案与第二编码方案不同的前提下,为了使得切换帧编码方案与第二编码方案的编码效果相接近,切换帧编码方案也是将虚拟扬声器信号和残差信号编入码流,从而使得听觉质量尽可能地平滑过渡。
编码端按照第一编码方案将当前帧的HOA信号编入码流的实现过程为:编码端从当前帧的HOA信号中提取核心层信号和空间参数,将提取的核心层信号和空间参数编入码流。示例性地,参见图9,编码端通过核心编码信号获取模块从当前帧的HOA信号中提取核心层信号,通过基于DirAC的空间参数提取模块从当前帧的HOA信号中提取出空间参数,通过核心编码器将核心层信号编入码流,通过空间参数编码器将空间参数编入码流。其中,核心层信号对应的通道与本方案中的指定通道一致。另外,采用第一编码方案除了将核心层信号编入码流之外,还将提取的空间参数编入码流,空间参数包含丰富的场景信息,例如方向信息等。可见,对于同一帧来说,采用基于DirAC的HOA编码方案编入码流的有效信息也会多于采用切换帧编码方案编入码流的有效信息,而本方案在切换帧编码方案与第一编码方案不同的前提下,为了使得切换帧编码方案与第一编码方案的编码效果相接近,切换帧编码方案也是将HOA信号中与第一编码方案所预设的传输通道的信号编入码流,但不会将HOA信号中除指定通道的信号之外更多的信息编入码流,也即不会提取空间参数,更不会将空间参数编入码流,从而使得听觉质量尽可能地平滑过渡。
图10是本申请实施例提供的另一种编码方法的流程图。请参考图10,以将当前帧的初始编码方案的指示信息编入码流为例,对本申请实施例提供的编码方法再次进行解释说明。编码端首先获取待编码的当前帧的HOA信号。然后,编码端对该HOA信号进行声场类型分析,以确定当前帧的初始编码方案,编码端将当前帧的初始编码方案的指示信息编入码流。编码端判断当前帧的初始编码方案与前一帧的初始编码方案是否相同。若当前帧的初始编码方案与前一帧的初始编码方案相同,则编码端采用当前帧的初始编码方案对当前帧的HOA信号进行编码,以得到当前帧的码流。若当前帧的初始编码方案与前一帧的初始编码方案不同,则编码端采用切换帧编码方案对当前帧的HOA信号进行编码,以得到当前帧的码流。
需要说明的是,若当前帧为待编码的第一个音频帧,则当前帧的初始编码方案为第一编码方案或第二编码方案,编码端采用当前帧的初始编码方案将当前帧的HOA信号编入码流。
综上所述,在本申请实施例中,结合两个方案(即基于虚拟扬声器选择的编解码方案和基于方向音频编码的编解码方案)对音频帧的HOA信号进行编解码,也即针对不同的音频帧选择合适的编解码方案,这样能够提升音频信号的压缩率。同时,为了使得在不同编解码方案之间切换时听觉质量的平滑过渡,本方案中对于某些音频帧来说,并非直接采用上述两个方案中的任一个方案进行编码,而是采用一种新的编解码方案来编解码这些音频帧,即将这些音频帧的HOA信号中指定通道的信号编入码流,即采用一种折中的方案进行编解码,从而使得对解码恢复出的HOA信号进行渲染播放后的听觉质量能够平滑过渡。
图11是本申请实施例提供的一种解码方法的流程图,该方法应用于解码端。需要说明的是,该解码方法对应于图6所示的编码方法。请参考图11,该方法包括如下步骤。
步骤1101:基于码流获得当前帧的解码方案。
其中,当前帧的解码方案为第一解码方案、第二解码方案和第三解码方案中的一种。第一解码方案为基于DirAC的HOA解码方案,第二解码方案为基于虚拟扬声器选择的HOA解码方案,第三解码方案为混合解码方案。可选地,混合解码方案也称为切换帧解码方案。
需要说明的是,由于编码端对不同的音频帧采用不同的编码方案进行编码,那么解码端也需要用对应的解码方案来解码各个音频帧。
接下来首先介绍解码端如何确定当前帧的编码方案。由前述可知,在图6所示编码方法的步骤601中介绍了编码端将能够用于指示当前帧的编码方案的信息编入码流的三种实现方式,相应地,解码端确定当前帧的编码方案也对应有三种实现方式,接下来将对此进行介绍。
第一种实现方式、编码了切换标志以及两种编码方案的指示信息
解码端先从码流中解析出当前帧的切换标志的值。若该切换标志的值为第一值,则解码端再从该码流中解析出当前帧的解码方案的指示信息,该指示信息用于指示当前帧的解码方案为第一解码方案或第二解码方案。若该切换标志为的值为第二值,则解码端确定当前帧的解码方案为第三解码方案。需要说明的是,编码端编入码流的编码方案的指示信息即为解码端从码流中解析出的解码方案的指示信息。
换句话说,若解码端解析出当前帧的切换标志的值为第一值,说明当前帧为非切换帧。解码端再从码流中解析出解码方案的指示信息,基于指示信息确定当前帧的解码方案。若解码端解析出当前帧的切换标志的值为第二值,说明当前帧为切换帧,即使码流中包含指示信息,解码端也无需解码指示信息。
需要说明的是,若切换标志的值为第二值,则解码端确定当前帧的解码方案为切换帧解码方案,且当前帧为切换帧,切换帧解码方案是不同于第一解码方案和第二解码方案的解码方案,切换帧解码方案是为了听觉质量的平滑过渡。
可选地,在该第一种实现方式中,解码方案的指示信息和切换标志各占码流的一个比特位。示例性地,解码端先从码流中解析当前帧的切换标志的值,若解析出的切换标志的值为“0”,即切换标志的值为第一值,则解码端再从码流中解析当前帧的解码方案的指示信息,若解析出的指示信息为“0”,则解码端确定当前帧的解码方案为第一解码方案。若解析出的指示信息为“1”,则解码端确定当前帧的解码方案为第二解码方案。若解析出的切换标志为的值“1”,则解码端确定当前帧的解码方案为切换帧解码方案(第三解码方案)。
第二种实现方式、编码了两种编码方案的指示信息
解码端从码流中解析出当前帧的初始解码方案,初始解码方案为第一解码方案或第二解码方案。若当前帧的初始解码方案与当前帧的前一帧的初始解码方案相同,则确定当前帧的解码方案为当前帧的初始解码方案。若当前帧的初始解码方案与当前帧的前一帧的初始解码方案不同,则确定当前帧的解码方案为第三解码方案,即混合解码方案。其中,当前帧的初始解码方案与当前帧的前一帧的初始解码方案不同是指,当前帧的初始解码方案为第一解码方案且当前帧的前一帧的初始解码方案为第二解码方案,或者,当前帧的初始解码方案为第二解码方案且当前帧的前一帧的初始解码方案为第一解码方案。也即是,当前帧的初始解码方案与当前帧的前一帧的初始解码方案中的一个为第一解码方案,另一个为第二解码方案。
可选地,在该第二种实现方式中,用于指示初始编码方案的指示信息占码流的一个比特位,以编码模式作为指示信息为例,码流中的编码模式占一个比特位。示例性地,解码端从码流中解析当前帧的初始编码方案的指示信息,若解析出的指示信息为“0”,且当前帧的前一帧的指示信息也为“0”,则解码端确定当前帧的解码方案为第一解码方案。若解析出的指示信息为“1”,且当前帧的前一帧的指示信息也为“1”,则解码端确定当前帧的解码方案为第二解码方案。若解析出的指示信息为“0”且当前帧的前一帧的指示信息为“1”,或者解析出的指示信息为“1”且当前帧的前一帧的指示信息为“0”,则解码端确定当前帧的解码方案为切换帧解码方案。
可选地,当前帧的前一帧的初始解码方案的指示信息为缓存的数据。在解码到当前帧时,解码端可以从缓存中获取当前帧的前一帧的初始解码方案的指示信息。
第三种实现方式、编码了三种编码方案的指示信息
解码端从码流中解析出当前帧的解码方案的指示信息,该指示信息用于指示当前帧的解码方案为第一解码方案、第二解码方案或第三解码方案。
可选地,在该第三种实现方式中,解码方案的指示信息占码流的两个比特位。例如,假设以编码模式作为指示信息,当前帧的编码模式占码流的两个比特位。
示例性地,解码端从码流中解析当前帧的解码方案的指示信息,若解析出的指示信息为“00”,则解码端确定当前帧的解码方案为第一解码方案。若解析出的指示信息为“01”,则解码端确定当前帧的解码方案为第二解码方案。若解析出的指示信息为“10”,则解码端确定当前帧的解码方案为切换帧解码方案。
步骤1102:若当前帧的解码方案为第三解码方案,则基于码流确定当前帧的HOA信号中指定通道的信号,指定通道为HOA信号的所有通道中的部分通道。
在本申请实施例中,解码端获得当前帧的解码方案之后,若当前帧的解码方案为第三编码方案,表示当前帧为切换帧,则解码端基于码流确定当前帧的HOA信号中指定通道的信号。也即是,对于切换帧来说,编码端是将指定通道的信号编入码流,那么解码端采用切换帧解码方案来解码切换帧,即需要先从码流中解析出指定通道的信号。
接下来对解码端采用切换帧解码方案解码切换帧的实现过程进行详细介绍,也即详细介绍在当前帧为切换帧的情况下,解码端基于码流确定当前帧的HOA信号中指定通道的信号的实现过程。
需要说明的是,解码端基于码流确定当前帧的HOA信号中指定通道的信号的过程,与编码端将当前帧的HOA信号中指定通道的信号编入码流的过程是对称的。在前述编码方法的实施例中介绍了将该指定通道的信号编入码流的一些实现过程,在解码端将介绍与这些实现过程相对称的解码过程。
在本申请实施例中,若编码端是先基于该指定通道的信号确定虚拟扬声器信号和残差信号,再将虚拟扬声器信号和残差信号编入码流,那么,相对应地,解码端先基于码流确定虚拟扬声器信号和残差信号,再基于虚拟扬声器信号和残差信号,确定指定通道的信号。
可选地,若编码端通过立体声编码器将基于虚拟扬声器信号和残差信号组合得到的三路立体声信号编入了码流,那么,解码端通过立体声解码器对码流进行解码,以得到三路立体声信号,然后基于该三路立体声信号,确定一路虚拟扬声器信号和三路残差信号。可选地,解码端基于该三路立体声信号中的一路立体声信号,确定一路虚拟扬声器信号,基于该三路立体声信号中的另两路立体声信号,确定三路残差信号。也即是,解码端先从码流中解析出这三路立体声信号,再通过拆解这三路立体声信号以得到一路虚拟扬声器信号和三路残差信号。
示例性地,解码端从码流中解析出三路立体声信号分别为S1、S2和S3,其中S1是由一路虚拟扬声器信号和一路预设单声道信号组合得到,S2是由两路残差信号组合得到,S3是由剩余一路残差信号与一路预设单声道信号组合得到。解码端将S1拆解得到一路虚拟扬声器信号,将S2拆解得到两路残差信号,将S3拆解得到剩余一路残差信号。
可选地,若编码端通过单声道编码器将基于虚拟扬声器信号和残差信号确定的四路单声道信号编入了码流,那么,解码端通过单声道解码器对码流进行解码,以得到一路虚拟扬声器信号和三路残差信号,这四路单声道信号包括该一路虚拟扬声器信号和该三路残差信号。
可选地,若该指定通道的信号包括FOA信号,FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号,那么,解码端基于码流确定虚拟扬声器信号和残差信号之后,基于该虚拟扬声器信号,确定W信号。解码端基于残差信号和W信号确定X信号、Y信号和Z信号,或者,解码端基于残差信号确定X信号、Y信号和Z信号。例如,解码端解析出三路残差信号的情况下,将这三路残差信号分别与W信号之和确定为X信号、Y信号和Z信号,或者,将这三路残差信号分别确定为X信号、Y信号和Z信号。其中,若编码端将X信号、Y信号和Z信号分别与W信号之间的差信号确定为三路残差信号,那么解码端将这三路残差信号分别与W信号之和确定为X信号、Y信号和Z信号。若编码端将X信号、Y信号和Z信号确定为三路残差信号,那么解码端将这三路残差信号分别确定为X信号、Y信号和Z信号。即,解码端的解码过程是与编码端的编码过程匹配的。
若编码端通过立体声编码器将基于虚拟扬声器信号和残差信号确定的两路立体声信号编入了码流,那么,解码端通过立体声解码器对码流进行解码,以得到这两路立体声信号。解码端基于这两路立体声信号中的一路立体声信号确定两路虚拟扬声器信号,基于这两路立体声信号中的另一路立体声信号确定两路残差信号,这两路虚拟扬声器信号和这两路残差信号即包括W信号、X信号、Y信号和Z信号。可选地,若编码端将W信号,以及X信号、Y信号、Z信号中与W信号相关性最高的一路信号确定为两路虚拟扬声器信号,则解码端确定的两路虚拟扬声器信号包括W信号以及X信号、Y信号、Z信号中与W信号相关性最高的一路信号。假设X信号、Y信号、Z信号中与W信号相关性最高的一路信号为X信号,则解码端确定的两路虚拟扬声器信号包括W信号和X信号,解码端确定的两路残差信号包括Y信号和Z信号。
步骤1103:基于该指定通道的信号,确定当前帧的HOA信号中除指定通道之外的一个或多个剩余通道的增益。
在本申请实施例中,解码端基于码流确定当前帧的HOA信号中指定通道的信号之后,基于该指定通道的信号,确定该HOA信号中除指定通道之外的一个或多个剩余通道的增益。
示例性地,假设指定通道为FOA通道,FOA通道可称为低阶通道,FOA通道的信号可称为HOA信号的低阶部分,HOA信号中除指定通道之外的一个或多个剩余通道称为高阶通道,高阶通道的信号可称为HOA信号的高阶部分,那么,解码端即基于该HOA信号的低阶部分,确定该HOA信号的高阶增益,即高阶通道的增益。
可选地,解码端先对该HOA信号中指定通道的信号进行分析滤波处理,以得到经分析滤波的指定通道的信号,基于经分析滤波的指定通道的信号确定该一个或多个剩余通道的增益。例如,假设指定通道的信号为HOA信号的低阶部分,那么解码端先对该HOA信号的低阶部分进行分析滤波处理,以得到经分析滤波的HOA信号的低阶部分,再基于经分析滤波的HOA信号的低阶部分估计出高阶增益。可选地,本方案中对于切换帧来说,解码端进行分析滤波处理所使用的分析滤波器,与基于DirAC的HOA解码方案中使用的分析滤波器相同,这样能够使得切换帧的解码时延与基于DirAC的HOA解码方案的解码时延一致,即时延对齐。需要说明的是,本文所讲的解码时延为端到端的编解码时延,解码时延也可称为编码时延。
需要说明的是,在本申请实施例中,解码端基于该指定通道的信号,确定HOA信号中除指定通道之外的一个或多个剩余通道的增益的过程,即基于指定通道的信号估计剩余通道的增益的过程,具体实现方式与基于DirAC的编解码方案中的剩余通道增益估计方法相同,本申请实施例不详细介绍。示例性地,本方案中对于切换帧来说,解码端基于HOA信号的低阶部分估计高阶增益的方法与基于DirAC的编解码方案中的高阶增益估计方法相同。
步骤1104:基于该指定通道的信号和该一个或多个剩余通道的增益,确定该一个或多个剩余通道中各个剩余通道的信号。
在本申请实施例中,解码端基于该指定通道的信号和该一个或多个剩余通道的增益,确定该一个或多个剩余通道中各个剩余通道的信号。示例性地,假设该指定通道的信号为HOA信号中的低阶部分,该一个或多个剩余通道的增益为高阶增益,那么,解码端可以基于该低阶部分中的W信号和高阶增益,确定HOA信号中的高阶部分。或者,若解码端对HOA信号的低阶部分进行了分析滤波处理,那么解码端可以基于经分析滤波的HOA信号的低阶部分中的W信号和高阶增益,确定经分析滤波的HOA信号的高阶部分。
步骤1105:基于该指定通道的信号和该一个或多个剩余通道的信号,获得当前帧的重建HOA信号。
在本申请实施例中,解码端在得到指定通道的信号和该一个或多个剩余通道的信号之后,基于该指定通道的信号和该一个或多个剩余通道的信号,获得当前帧的重建HOA信号,即重建当前帧的HOA信号。示例性地,解码端对该指定通道的信号和该一个或多个剩余通道的信号进行合成滤波处理,以获得当前帧的重建HOA信号。例如,假设该指定通道的信号为HOA信号中的低阶部分,该一个或多个剩余通道的信号为HOA信号中的高阶部分,那么解码端对该HOA信号的低阶部分和高阶部分进行合成滤波处理,以获得当前帧的重建HOA信号。或者,若解码端对HOA信号的低阶部分进行了分析滤波处理,那么解码端对经分析滤波的HOA信号的低阶部分和经分析滤波的HOA信号的高阶部分进行合成滤波处理,以获得当前帧的重建HOA信号。可选地,本方案中对于切换帧来说,解码端进行合成滤波处理所使用的合成滤波器,与基于DirAC的HOA编解码方案中使用的合成滤波器相同,这样能够使得切换帧的解码时延与基于DirAC的HOA解码方案的解码时延一致,即时延对齐。
图12是本申请实施例提供的一种切换帧解码方案的示意图。参见图12,待解码的当前帧为切换帧,假设指定通道的信号为HOA信号的低阶部分,那么,在解码过程中,解码端获取待解码的当前帧的码流,通过核心解码器对该码流进行核心解码,以重建出当前帧的HOA信号的低阶部分,采用与基于DirAC的HOA解码方案中确定高阶部分相类似的方法,基于该低阶部分估计出高阶部分,也即重建该HOA信号的高阶部分。之后,解码端基于解码得到的低阶部分和通过估计得到的高阶部分重建出该HOA信号。
以上介绍了当前帧为切换帧的情况下,解码端对当前帧解码的过程,也即解码端采用切换帧解码方案来解码切换帧,即解码端先解码出HOA信号中指定通道的信号(如低阶部分),再重构出各个剩余通道的信号(如重构高阶部分)。接下来介绍在当前帧为非切换帧的情况下,解码端对当前帧解码的过程。
在本申请实施例中,解码端确定当前帧的解码方案之后,若当前帧的解码方案为第一解码方案,则解码端按照第一解码方案,根据该码流获得当前帧的重建HOA信号。若当前帧的解码方案为第二解码方案,则解码端按照第二解码方案,根据该码流获得当前帧的重建HOA信号。
在本申请实施例中,参见图13,解码端按照第二解码方案,根据该码流获得当前帧的重建HOA信号的实现过程为:解码端通过核心解码器从码流中解析出虚拟扬声器信号和残差信号,将解析出的虚拟扬声器信号和残差信号送入基于MP的空间解码器,以获得当前帧的重建HOA信号。需要说明的是,图13所示的解码方案是与图8所示的编码方案相对应的。
解码端按照第一解码方案,根据该码流获得当前帧的重建HOA信号的实现过程为:解码端从码流中解析出核心层信号和空间参数,基于核心层信号和空间参数重建出当前帧的HOA信号。示例性地,参见图14,解码端通过核心解码器从码流中解析出核心层信号,通过空间参数解码器从码流中解析出空间参数,基于解析出的核心层信号和空间参数进行基于DirAC的HOA信号合成处理,以获得当前帧的重建HOA信号。需要说明的是,图14所示的解码方案是与图9所示的编码方案相对应的。
可选地,由于HOA信号的高阶部分对听觉质量的影响较大,为了进一步使得不同编解码方案之间切换时听觉质量的平滑过渡,解码端在按照第二解码方案,根据码流获得当前帧的重建HOA信号的过程中,还可以对当前帧的高阶部分进行增益调整。例如,解码端按照第二解码方案,根据码流获得初始HOA信号,若当前帧的前一帧的解码方案为第三解码方案,即当前帧的前一帧为切换帧,则解码端根据当前帧的前一帧的高阶增益,对初始HOA信号的高阶部分进行增益调整。然后,解码端基于初始HOA信号的低阶部分和经增益调整的高阶部分,获得当前帧的重建HOA信号。
需要说明的是,若当前帧的前一帧为切换帧,则当前帧利用前一帧的高阶增益对当前帧的初始HOA信号的高阶部分进行增益调整,以使当前帧的经增益调整的高阶部分与前一帧的高阶部分相似,如增益调整使得这相邻两帧的HOA信号的高阶部分的能量相近。这样,后续解码端对各个音频帧进行渲染播放的过程中,切换帧的听觉质量,以及切换帧的下一帧的听觉质量均能够很好的平滑过渡。
可选地,除了对切换帧之后的解码方案为第二解码方案的音频帧进行高阶增益调整之外,对于其他的解码方案为第二解码方案的音频帧来说,解码端也可以对这些音频帧的HOA信号的高阶部分进行增益调整,本申请实施例不限定对这些音频帧的HOA信号的高阶部分进行增益调整的具体实现方式。可选地,除了对高阶部分进行增益调整之外,解码端还可以对这些音频帧的HOA信号的其他部分进行增益调整。也即是,本申请实施例不限定对HOA信号的哪些通道的信号进行增益调整。换句话说,解码端可以对HOA信号中任意一个或多个通道的信号进行增益调整,该一个或多个通道可以包括高阶通道中的部分或全部,或除指定通道之外的剩余通道中部分或全部,或其他通道。
图15是本申请实施例提供的另一种解码方法的流程图。参见图15,以编码端将初始编码方案的指示信息编入码流为例,且假设码流中未编入切换标志,则在解码过程中,解码端先从码流中解析出当前帧的初始解码方案的指示信息。然后,解码端判断当前帧的初始解码方案与前一帧的初始解码方案是否相同。若当前帧的初始解码方案与前一帧的初始解码方案相同,说明当前帧为非切换帧,则解码端采用当前帧的初始解码方案对码流进行解码,以获得当前帧的重建HOA信号。若当前帧的初始解码方案与前一帧的初始解码方案不同,说明当前帧为切换帧,则解码端采用切换帧解码方案对码流进行解码,以获得当前帧的重建HOA信号。
综上所述,在本申请实施例中,结合两个方案(即基于虚拟扬声器选择的编解码方案和基于方向音频编码的编解码方案)对音频帧的HOA信号进行编解码,也即针对不同的音频帧选择合适的编解码方案,这样能够提升音频信号的压缩率。同时,为了使得在不同编解码方案之间切换时听觉质量的平滑过渡,本方案中对于某些音频帧来说,并非直接采用上述两个方案中的任一个方案进行编解码,而是采用一种新的编解码方案来编解码这些音频帧,即编码时将这些音频帧的HOA信号中指定通道的信号编入码流,即采用一种折中的方案进行编解码,从而使得对解码恢复出的HOA信号进行渲染播放后的听觉质量能够平滑过渡。
图16是本申请实施例提供的一种编码装置1600的结构示意图,该编码装置1600可以由软件、硬件或者两者的结合实现成为编码端设备的部分或者全部,该编码端设备可以为前述实施例中的任一编码端设备。参见图16,该装置1600包括:第一确定模块1601和第一编码模块1602。
第一确定模块1601,用于根据当前帧的高阶立体混响HOA信号确定当前帧的编码方案,当前帧的编码方案为第一编码方案、第二编码方案和第三编码方案中的一种;其中,第一编码方案为基于方向音频编码的HOA编码方案,第二编码方案为基于虚拟扬声器选择的HOA编码方案,第三编码方案为混合编码方案;
第一编码模块1602,用于若当前帧的编码方案为第三编码方案,则将HOA信号中指定通道的信号编入码流,指定通道为HOA信号的所有通道中的部分通道。
可选地,指定通道的信号包括一阶立体混响FOA信号,FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号。
可选地,第一编码模块1602包括:
第一确定子模块,用于基于W信号、X信号、Y信号和Z信号,确定虚拟扬声器信号和残差信号;
编码子模块,用于将该虚拟扬声器信号和残差信号编入码流。
可选地,第一确定子模块用于:
将W信号确定为一路虚拟扬声器信号;
基于W信号、X信号、Y信号和Z信号确定三路残差信号,或者,将X信号、Y信号和Z信号确定为三路残差信号。
可选地,编码子模块用于:
将这一路虚拟扬声器信号与第一路预设单声道信号组合,以得到一路立体声信号;
将这三路残差信号与第二路预设单声道信号组合,以得到两路立体声信号;
通过立体声编码器将得到的三路立体声信号分别编入码流。
可选地,编码子模块用于:
将这三路残差信号中相关性最高的两路残差信号组合,以得到两路立体声信号中的一路立体声信号;
将这三路残差信号中除相关性最高的两路残差信号之外的一路残差信号与第二路预设单声道信号组合,以得到两路立体声信号中的另一路立体声信号。
可选地,第一路预设单声道信号为全零信号或全一信号,全零信号包括采样点的值均为零的信号或者频点的值均为零的信号,全一信号包括采样点的值均为一的信号或者频点的值均为一的信号;第二路预设单声道信号为全零信号或全一信号;第一路预设单声道信号与第二路预设单声道信号相同或不同。
可选地,编码子模块用于:
通过单声道编码器将这一路虚拟扬声器信号、以及这三路残差信号中的各路残差信号分别编入码流。
可选地,该装置1600还包括:
第二编码模块,用于若当前帧的编码方案为第一编码方案,则按照第一编码方案将该HOA信号编入码流;
第三编码模块,用于若当前帧的编码方案为第二编码方案,则按照第二编码方案将该HOA信号编入码流。
可选地,第一确定模块1601包括:
第二确定子模块,用于根据该HOA信号确定当前帧的初始编码方案,初始编码方案为第一编码方案或第二编码方案;
第三确定子模块,用于若当前帧的初始编码方案与当前帧的前一帧的初始编码方案相同,则确定当前帧的编码方案为当前帧的初始编码方案;
第四确定子模块,用于若当前帧的初始编码方案为第一编码方案且当前帧的前一帧的初始编码方案为第二编码方案,或当前帧的初始编码方案为第二编码方案且当前帧的前一帧的初始编码方案为第一编码方案,则确定当前帧的编码方案为第三编码方案。
可选地,该装置1600还包括:
第四编码模块,用于将当前帧的初始编码方案的指示信息编入码流。
可选地,该装置1600还包括:
第二确定模块,用于确定当前帧的切换标志的值,当当前帧的编码方案为第一编码方案或第二编码方案时,当前帧的切换标志的值为第一值;当当前帧的编码方案为第三编码方案时,当前帧的切换标志的值为第二值;
第五编码模块,用于将该切换标志的值编入码流。
可选地,该装置1600还包括:
第六编码模块,用于将当前帧的编码方案的指示信息编入码流。
可选地,指定通道与第一编码方案中预设的传输通道一致。
在本申请实施例中,结合两个方案(即基于虚拟扬声器选择的编解码方案和基于方向音频编码的编解码方案)对音频帧的HOA信号进行编解码,也即针对不同的音频帧选择合适的编解码方案,这样能够提升音频信号的压缩率。同时,为了使得在不同编解码方案之间切换时听觉质量的平滑过渡,本方案中对于某些音频帧来说,并非直接采用上述两个方案中的任一个方案进行编解码,而是采用一种新的编解码方案来编解码这些音频帧,即将这些音频帧的HOA信号中指定通道的信号编入码流,即采用一种折中的方案进行编解码,从而使得对解码恢复出的HOA信号进行渲染播放后的听觉质量能够平滑过渡。
需要说明的是:上述实施例提供的编码装置在编码音频帧时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的编码装置与编码方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图17是本申请实施例提供的一种解码装置1700的结构示意图,该解码装置1700可以由软件、硬件或者两者的结合实现成为解码端设备的部分或者全部,该解码端设备可以为前述实施例中的任一编码端设备。参见图17,该装置1700包括:第一获得模块1701、第一确定模块1702、第二确定模块1703、第三确定模块1704和第二获得模块1705。
第一获得模块1701,用于基于码流获得当前帧的解码方案,当前帧的解码方案为第一解码方案、第二解码方案和第三解码方案中的一种;其中,第一解码方案为基于方向音频解码的高阶立体混响HOA解码方案,第二解码方案为基于虚拟扬声器选择的HOA解码方案,第三解码方案为混合解码方案;
第一确定模块1702,用于若当前帧的解码方案为第三解码方案,则基于码流确定当前帧的HOA信号中指定通道的信号,指定通道为HOA信号的所有通道中的部分通道;
第二确定模块1703,用于基于指定通道的信号,确定HOA信号中除指定通道之外的一个或多个剩余通道的增益;
第三确定模块1704,用于基于指定通道的信号和该一个或多个剩余通道的增益,确定该一个或多个剩余通道中各个剩余通道的信号;
第二获得模块1705,用于基于指定通道的信号和该一个或多个剩余通道的信号,获得当前帧的重建HOA信号。
可选地,第一确定模块1702包括:
第一确定子模块,用于基于码流确定虚拟扬声器信号和残差信号;
第二确定子模块,用于基于该虚拟扬声器信号和残差信号,确定指定通道的信号。
可选地,第一确定子模块用于:
通过立体声解码器对码流进行解码,以得到三路立体声信号;
基于这三路立体声信号,确定一路虚拟扬声器信号和三路残差信号。
可选地,第一确定子模块用于:
基于这三路立体声信号中的一路立体声信号,确定一路虚拟扬声器信号;
基于这三路立体声信号中的另两路立体声信号,确定三路残差信号。
可选地,第一确定子模块用于:
通过单声道解码器对码流进行解码,以得到一路虚拟扬声器信号和三路残差信号。
可选地,指定通道的信号包括一阶立体混响FOA信号,FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号;
第一确定子模块用于:
基于该虚拟扬声器信号,确定W信号;
基于该残差信号与W信号确定X信号、Y信号和Z信号,或者,基于该残差信号确定X信号、Y信号和Z信号。
可选地,该装置1700还包括:
第一解码模块,用于若当前帧的解码方案为第一解码方案,则按照第一解码方案,根据码流获得当前帧的重建HOA信号;
第二解码模块,用于若当前帧的解码方案为第二解码方案,则按照第二解码方案,根据码流获得当前帧的重建HOA信号。
可选地,第二解码模块包括:
第一获得子模块,用于按照第二解码方案,根据码流获得初始HOA信号;
增益调整子模块,用于若当前帧的前一帧的解码方案为第三解码方案,则根据当前帧的前一帧的高阶增益,对初始HOA信号的高阶部分进行增益调整;
第二获得子模块,用于基于初始HOA信号的低阶部分和经增益调整的高阶部分,获得重建HOA信号。
可选地,第一获得模块1701包括:
第一解析子模块,用于从码流中解析出当前帧的切换标志的值;
第二解析子模块,用于若该切换标志的值为第一值,则从码流中解析当前帧的解码方案的指示信息,指示信息用于指示当前帧的解码方案为第一解码方案或第二解码方案;
第三确定子模块,用于若该切换标志的值为第二值,确定当前帧的解码方案为第三解码方案。
可选地,第一获得模块1701包括:
第三解析子模块,用于从码流中解析出当前帧的解码方案的指示信息,指示信息用于指示当前帧的解码方案为第一解码方案、第二解码方案或第三解码方案。
可选地,第一获得模块1701包括:
第四解析子模块,用于从码流中解析出当前帧的初始解码方案,初始解码方案为第一解码方案或第二解码方案;
第四确定子模块,用于若当前帧的初始解码方案与当前帧的前一帧的初始解码方案相同,则确定当前帧的解码方案为当前帧的初始解码方案;
第五确定子模块,用于若当前帧的初始解码方案为第一解码方案且当前帧的前一帧的初始解码方案为第二解码方案,或当前帧的初始解码方案为第二解码方案且当前帧的前一帧的初始解码方案为第一解码方案,则确定当前帧的解码方案为第三解码方案。
在本申请实施例中,结合两个方案(即基于虚拟扬声器选择的编解码方案和基于方向音频编码的编解码方案)对音频帧的HOA信号进行编解码,也即针对不同的音频帧选择合适的编解码方案,这样能够提升音频信号的压缩率。同时,为了使得在不同编解码方案之间切换时听觉质量的平滑过渡,本方案中对于某些音频帧来说,并非直接采用上述两个方案中的任一个方案进行编解码,而是采用一种新的编解码方案来编解码这些音频帧,即将这些音频帧的HOA信号中指定通道的信号编入码流,即采用一种折中的方案进行编解码,从而使得对解码恢复出的HOA信号进行渲染播放后的听觉质量能够平滑过渡。
需要说明的是:上述实施例提供的解码装置在解码音频帧时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的解码装置与解码方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图18为用于本申请实施例的一种编解码装置1800的示意性框图。其中,编解码装置1800可以包括处理器1801、存储器1802和总线***1803。其中,处理器1801和存储器1802通过总线***1803相连,该存储器1802用于存储指令,该处理器1801用于执行该存储器1802存储的指令,以执行本申请实施例描述的各种的编码或解码方法。为避免重复,这里不再详细描述。
在本申请实施例中,该处理器1801可以是中央处理单元(central processingunit,CPU),该处理器1801还可以是其他通用处理器、DSP、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1802可以包括ROM设备或者RAM设备。任何其他适宜类型的存储设备也可以用作存储器1802。存储器1802可以包括由处理器1801使用总线1803访问的代码和数据18021。存储器1802可以进一步包括操作***18023和应用程序18022,该应用程序18022包括允许处理器1801执行本申请实施例描述的编码或解码方法的至少一个程序。例如,应用程序18022可以包括应用1至N,其进一步包括执行在本申请实施例描述的编码或解码方法的编码或解码应用(简称编解码应用)。
该总线***1803除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线***1803。
可选地,编解码装置1800还可以包括一个或多个输出设备,诸如显示器1804。在一个示例中,显示器1804可以是触感显示器,其将显示器与可操作地感测触摸输入的触感单元合并。显示器1804可以经由总线1803连接到处理器1801。
需要指出的是,编解码装置1800可以执行本申请实施例中的编码方法,也可执行本申请实施例中的解码方法。
本领域技术人员能够领会,结合本文公开描述的各种说明性逻辑框、模块和算法步骤所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件来实施,那么各种说明性逻辑框、模块、和步骤描述的功能可作为一或多个指令或代码在计算机可读媒体上存储或传输,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于有形媒体,例如数据存储媒体,或包括任何促进将计算机程序从一处传送到另一处的媒体(例如,基于通信协议)的通信媒体。以此方式,计算机可读媒体大体上可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本申请中描述的技术的指令、代码和/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。
作为实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来存储指令或数据结构的形式的所要程序代码并且可由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体和数据存储媒体并不包括连接、载波、信号或其它暂时媒体,而是实际上针对于非暂时性有形存储媒体。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、DVD和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
可通过例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指前述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的各种说明性逻辑框、模块、和步骤所描述的功能可以提供于经配置以用于编码和解码的专用硬件和/或软件模块内,或者并入在组合编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。在一种示例下,编码器100及解码器200中的各种说明性逻辑框、单元、模块可以理解为对应的电路器件或逻辑元件。
本申请实施例的技术可在各种各样的装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本申请实施例中描述各种组件、模块或单元是为了强调用于执行所揭示的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可结合合适的软件和/或固件组合在编码解码器硬件单元中,或者通过互操作硬件单元(包含如上文所描述的一或多个处理器)来提供。
也就是说,在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(digital subscriber line,DSL))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(digital versatile disc,DVD))或半导体介质(例如:固态硬盘(solid statedisk,SSD))等。值得注意的是,本申请实施例提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。
应当理解的是,本文提及的“至少一个”是指一个或多个,“多个”是指两个或两个以上。在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (54)
1.一种编码方法,其特征在于,所述方法包括:
根据当前帧的高阶立体混响HOA信号确定所述当前帧的编码方案,所述当前帧的编码方案为第一编码方案、第二编码方案和第三编码方案中的一种;其中,所述第一编码方案为基于方向音频编码的HOA编码方案,所述第二编码方案为基于虚拟扬声器选择的HOA编码方案,所述第三编码方案为混合编码方案;
若所述当前帧的编码方案为所述第三编码方案,则将所述HOA信号中指定通道的信号编入码流,所述指定通道为所述HOA信号的所有通道中的部分通道。
2.如权利要求1所述的方法,其特征在于,所述指定通道的信号包括一阶立体混响FOA信号,所述FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号。
3.如权利要求2所述的方法,其特征在于,所述将所述HOA信号中指定通道的信号编入所述码流,包括:
基于所述W信号、所述X信号、所述Y信号和所述Z信号,确定虚拟扬声器信号和残差信号;
将所述虚拟扬声器信号和所述残差信号编入所述码流。
4.如权利要求3所述的方法,其特征在于,所述基于所述W信号、所述X信号、所述Y信号和所述Z信号,确定虚拟扬声器信号和残差信号,包括:
将所述W信号确定为一路所述虚拟扬声器信号;
基于所述W信号、X信号、所述Y信号和所述Z信号确定三路所述残差信号,或者,将所述X信号、所述Y信号和所述Z信号确定为三路所述残差信号。
5.如权利要求4所述的方法,其特征在于,所述将所述虚拟扬声器信号和所述残差信号编入所述码流,包括:
将所述一路虚拟扬声器信号与第一路预设单声道信号组合,以得到一路立体声信号;
将所述三路残差信号与第二路预设单声道信号组合,以得到两路立体声信号;
通过立体声编码器将得到的三路立体声信号分别编入所述码流。
6.如权利要求5所述的方法,其特征在于,所述将所述三路残差信号与第二路预设单声道信号组合,以得到两路立体声信号,包括:
将所述三路残差信号中相关性最高的两路残差信号组合,以得到所述两路立体声信号中的一路立体声信号;
将所述三路残差信号中除所述相关性最高的两路残差信号之外的一路残差信号与所述第二路预设单声道信号组合,以得到所述两路立体声信号中的另一路立体声信号。
7.如权利要求5或6所述的方法,其特征在于,所述第一路预设单声道信号为全零信号或全一信号,所述全零信号包括采样点的值均为零的信号或者频点的值均为零的信号,所述全一信号包括采样点的值均为一的信号或者频点的值均为一的信号;
所述第二路预设单声道信号为全零信号或全一信号;
所述第一路预设单声道信号与所述第二路预设单声道信号相同或不同。
8.如权利要求4所述的方法,其特征在于,所述将所述虚拟扬声器信号和所述残差信号编入所述码流,包括:
通过单声道编码器将所述一路虚拟扬声器信号、以及所述三路残差信号中的各路残差信号分别编入所述码流。
9.如权利要求1-8任一所述的方法,其特征在于,所述根据当前帧的高阶立体混响HOA信号确定所述当前帧的编码方案之后,还包括:
若所述当前帧的编码方案为所述第一编码方案,则按照所述第一编码方案将所述HOA信号编入所述码流;
若所述当前帧的编码方案为所述第二编码方案,则按照所述第二编码方案将所述HOA信号编入所述码流。
10.如权利要求1-9任一所述的方法,其特征在于,所述根据当前帧的高阶立体混响HOA信号确定所述当前帧的编码方案,包括:
根据所述HOA信号确定所述当前帧的初始编码方案,所述初始编码方案为所述第一编码方案或所述第二编码方案;
若所述当前帧的初始编码方案与所述当前帧的前一帧的初始编码方案相同,则确定所述当前帧的编码方案为所述当前帧的初始编码方案;
若所述当前帧的初始编码方案为所述第一编码方案且所述当前帧的前一帧的初始编码方案为所述第二编码方案,或所述当前帧的初始编码方案为所述第二编码方案且所述当前帧的前一帧的初始编码方案为所述第一编码方案,则确定所述当前帧的编码方案为所述第三编码方案。
11.如权利要求10所述的方法,其特征在于,所述根据所述HOA信号确定所述当前帧的初始编码方案之后,还包括:
将所述当前帧的初始编码方案的指示信息编入所述码流。
12.如权利要求1-11任一所述的方法,其特征在于,所述根据当前帧的高阶立体混响HOA信号确定所述当前帧的编码方案之后,还包括:
确定所述当前帧的切换标志的值,当所述当前帧的编码方案为所述第一编码方案或所述第二编码方案时,所述当前帧的切换标志的值为第一值;当所述当前帧的编码方案为所述第三编码方案时,所述当前帧的切换标志的值为第二值;
将所述切换标志的值编入所述码流。
13.如权利要求1-10任一所述的方法,其特征在于,所述根据当前帧的HOA信号确定所述当前帧的编码方案之后,还包括:
将所述当前帧的编码方案的指示信息编入所述码流。
14.如权利要求1-13任一所述的方法,其特征在于,所述指定通道与所述第一编码方案中预设的传输通道一致。
15.一种解码方法,其特征在于,所述方法包括:
基于码流获得当前帧的解码方案,所述当前帧的解码方案为第一解码方案、第二解码方案和第三解码方案中的一种;其中,所述第一解码方案为基于方向音频解码的高阶立体混响HOA解码方案,所述第二解码方案为基于虚拟扬声器选择的HOA解码方案,所述第三解码方案为混合解码方案;
若所述当前帧的解码方案为所述第三解码方案,则基于码流确定所述当前帧的HOA信号中指定通道的信号,所述指定通道为所述HOA信号的所有通道中的部分通道;
基于所述指定通道的信号,确定所述HOA信号中除所述指定通道之外的一个或多个剩余通道的增益;
基于所述指定通道的信号和所述一个或多个剩余通道的增益,确定所述一个或多个剩余通道中各个剩余通道的信号;
基于所述指定通道的信号和所述一个或多个剩余通道的信号,获得所述当前帧的重建HOA信号。
16.如权利要求15所述的方法,其特征在于,所述基于所述码流确定所述当前帧的HOA信号中指定通道的信号,包括:
基于所述码流确定虚拟扬声器信号和残差信号;
基于所述虚拟扬声器信号和所述残差信号,确定所述指定通道的信号。
17.如权利要求16所述的方法,其特征在于,所述基于所述码流确定虚拟扬声器信号和残差信号,包括:
通过立体声解码器对所述码流进行解码,以得到三路立体声信号;
基于所述三路立体声信号,确定一路所述虚拟扬声器信号和三路所述残差信号。
18.如权利要求17所述的方法,其特征在于,所述基于所述三路立体声信号,确定一路所述虚拟扬声器信号和三路所述残差信号,包括:
基于所述三路立体声信号中的一路立体声信号,确定所述一路虚拟扬声器信号;
基于所述三路立体声信号中的另两路立体声信号,确定所述三路残差信号。
19.如权利要求16所述的方法,其特征在于,所述基于所述码流确定虚拟扬声器信号和残差信号,包括:
通过单声道解码器对所述码流进行解码,以得到一路所述虚拟扬声器信号和三路所述残差信号。
20.如权利要求16-19任一所述的方法,其特征在于,所述指定通道的信号包括一阶立体混响FOA信号,所述FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号;
所述基于所述虚拟扬声器信号和所述残差信号,确定所述指定通道的信号,包括:
基于所述虚拟扬声器信号,确定所述W信号;
基于所述残差信号与所述W信号确定所述X信号、所述Y信号和所述Z信号,或者,基于所述残差信号确定所述X信号、所述Y信号和所述Z信号。
21.如权利要求15-20任一所述的方法,其特征在于,所述方法还包括:
若所述当前帧的解码方案为所述第一解码方案,则按照所述第一解码方案,根据所述码流获得所述当前帧的重建HOA信号;
若所述当前帧的解码方案为所述第二解码方案,则按照所述第二解码方案,根据所述码流获得所述当前帧的重建HOA信号。
22.如权利要求21所述的方法,其特征在于,所述按照所述第二解码方案,根据所述码流获得所述当前帧的重建HOA信号,包括:
按照所述第二解码方案,根据所述码流获得初始HOA信号;
若所述当前帧的前一帧的解码方案为所述第三解码方案,则根据所述当前帧的前一帧的高阶增益,对所述初始HOA信号的高阶部分进行增益调整;
基于所述初始HOA信号的低阶部分和经增益调整的高阶部分,获得所述重建HOA信号。
23.如权利要求15-22任一所述的方法,其特征在于,所述基于码流获得当前帧的解码方案,包括:
从所述码流中解析出所述当前帧的切换标志的值;
若所述切换标志的值为第一值,则从所述码流中解析所述当前帧的解码方案的指示信息,所述指示信息用于指示所述当前帧的解码方案为所述第一解码方案或所述第二解码方案;
若所述切换标志的值为第二值,确定所述当前帧的解码方案为所述第三解码方案。
24.如权利要求15-22任一所述的方法,其特征在于,所述基于码流获得当前帧的解码方案,包括:
从所述码流中解析出所述当前帧的解码方案的指示信息,所述指示信息用于指示所述当前帧的解码方案为所述第一解码方案、所述第二解码方案或所述第三解码方案。
25.如权利要求15-22任一所述的方法,其特征在于,所述基于码流获得当前帧的解码方案,包括:
从所述码流中解析出所述当前帧的初始解码方案,所述初始解码方案为所述第一解码方案或所述第二解码方案;
若所述当前帧的初始解码方案与所述当前帧的前一帧的初始解码方案相同,则确定所述当前帧的解码方案为所述当前帧的初始解码方案;
若所述当前帧的初始解码方案为所述第一解码方案且所述当前帧的前一帧的初始解码方案为所述第二解码方案,或所述当前帧的初始解码方案为所述第二解码方案且所述当前帧的前一帧的初始解码方案为所述第一解码方案,则确定所述当前帧的解码方案为所述第三解码方案。
26.一种编码装置,其特征在于,所述装置包括:
第一确定模块,用于根据当前帧的高阶立体混响HOA信号确定所述当前帧的编码方案,所述当前帧的编码方案为第一编码方案、第二编码方案和第三编码方案中的一种;其中,所述第一编码方案为基于方向音频编码的HOA编码方案,所述第二编码方案为基于虚拟扬声器选择的HOA编码方案,所述第三编码方案为混合编码方案;
第一编码模块,用于若所述当前帧的编码方案为所述第三编码方案,则将所述HOA信号中指定通道的信号编入码流,所述指定通道为所述HOA信号的所有通道中的部分通道。
27.如权利要求26所述的装置,其特征在于,所述指定通道的信号包括一阶立体混响FOA信号,所述FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号。
28.如权利要求27所述的装置,其特征在于,所述第一编码模块包括:
第一确定子模块,用于基于所述W信号、所述X信号、所述Y信号和所述Z信号,确定虚拟扬声器信号和残差信号;
编码子模块,用于将所述虚拟扬声器信号和所述残差信号编入所述码流。
29.如权利要求28所述的装置,其特征在于,所述第一确定子模块用于:
将所述W信号确定为一路所述虚拟扬声器信号;
将所述X信号、所述Y信号和所述Z信号分别与所述W信号之间的差信号确定为三路所述残差信号,或者,将所述X信号、所述Y信号和所述Z信号确定为三路所述残差信号。
30.如权利要求29所述的装置,其特征在于,所述编码子模块用于:
将所述一路虚拟扬声器信号与第一路预设单声道信号组合,以得到一路立体声信号;
将所述三路残差信号与第二路预设单声道信号组合,以得到两路立体声信号;
通过立体声编码器将得到的三路立体声信号分别编入所述码流。
31.如权利要求30所述的装置,其特征在于,所述编码子模块用于:
将所述三路残差信号中相关性最高的两路残差信号组合,以得到所述两路立体声信号中的一路立体声信号;
将所述三路残差信号中除所述相关性最高的两路残差信号之外的一路残差信号与所述第二路预设单声道信号组合,以得到所述两路立体声信号中的另一路立体声信号。
32.如权利要求30或31所述的装置,其特征在于,所述第一路预设单声道信号为全零信号或全一信号,所述全零信号包括采样点的值均为零的信号或者频点的值均为零的信号,所述全一信号包括采样点的值均为一的信号或者频点的值均为一的信号;
所述第二路预设单声道信号为全零信号或全一信号;
所述第一路预设单声道信号与所述第二路预设单声道信号相同或不同。
33.如权利要求29所述的装置,其特征在于,所述编码子模块用于:
通过单声道编码器将所述一路虚拟扬声器信号、以及所述三路残差信号中的各路残差信号分别编入所述码流。
34.如权利要求26-33任一所述的装置,其特征在于,所述装置还包括:
第二编码模块,用于若所述当前帧的编码方案为所述第一编码方案,则按照所述第一编码方案将所述HOA信号编入所述码流;
第三编码模块,用于若所述当前帧的编码方案为所述第二编码方案,则按照所述第二编码方案将所述HOA信号编入所述码流。
35.如权利要求26-34任一所述的装置,其特征在于,所述第一确定模块包括:
第二确定子模块,用于根据所述HOA信号确定所述当前帧的初始编码方案,所述初始编码方案为所述第一编码方案或所述第二编码方案;
第三确定子模块,用于若所述当前帧的初始编码方案与所述当前帧的前一帧的初始编码方案相同,则确定所述当前帧的编码方案为所述当前帧的初始编码方案;
第四确定子模块,用于若所述当前帧的初始编码方案为所述第一编码方案且所述当前帧的前一帧的初始编码方案为所述第二编码方案,或所述当前帧的初始编码方案为所述第二编码方案且所述当前帧的前一帧的初始编码方案为所述第一编码方案,则确定所述当前帧的编码方案为所述第三编码方案。
36.如权利要求35所述的装置,其特征在于,所述装置还包括:
第四编码模块,用于将所述当前帧的初始编码方案的指示信息编入所述码流。
37.如权利要求26-36任一所述的装置,其特征在于,所述装置还包括:
第二确定模块,用于确定所述当前帧的切换标志的值,当所述当前帧的编码方案为所述第一编码方案或所述第二编码方案时,所述当前帧的切换标志的值为第一值;当所述当前帧的编码方案为所述第三编码方案时,所述当前帧的切换标志的值为第二值;
第五编码模块,用于将所述切换标志的值编入所述码流。
38.如权利要求26-35任一所述的装置,其特征在于,所述装置还包括:
第六编码模块,用于将所述当前帧的编码方案的指示信息编入所述码流。
39.如权利要求26-38任一所述的装置,其特征在于,所述指定通道与所述第一编码方案中预设的传输通道一致。
40.一种解码装置,其特征在于,所述装置包括:
第一获得模块,用于基于码流获得当前帧的解码方案,所述当前帧的解码方案为第一解码方案、第二解码方案和第三解码方案中的一种;其中,所述第一解码方案为基于方向音频解码的高阶立体混响HOA解码方案,所述第二解码方案为基于虚拟扬声器选择的HOA解码方案,所述第三解码方案为混合解码方案;
第一确定模块,用于若所述当前帧的解码方案为所述第三解码方案,则基于码流确定所述当前帧的HOA信号中指定通道的信号,所述指定通道为所述HOA信号的所有通道中的部分通道;
第二确定模块,用于基于所述指定通道的信号,确定所述HOA信号中除所述指定通道之外的一个或多个剩余通道的增益;
第三确定模块,用于基于所述指定通道的信号和所述一个或多个剩余通道的增益,确定所述一个或多个剩余通道中各个剩余通道的信号;
第二获得模块,用于基于所述指定通道的信号和所述一个或多个剩余通道的信号,获得所述当前帧的重建HOA信号。
41.如权利要求40所述的装置,其特征在于,所述第一确定模块包括:
第一确定子模块,用于基于所述码流确定虚拟扬声器信号和残差信号;
第二确定子模块,用于基于所述虚拟扬声器信号和所述残差信号,确定所述指定通道的信号。
42.如权利要求41所述的装置,其特征在于,所述第一确定子模块用于:
通过立体声解码器对所述码流进行解码,以得到三路立体声信号;
基于所述三路立体声信号,确定一路所述虚拟扬声器信号和三路所述残差信号。
43.如权利要求42所述的装置,其特征在于,所述第一确定子模块用于:
基于所述三路立体声信号中的一路立体声信号,确定所述一路虚拟扬声器信号;
基于所述三路立体声信号中的另两路立体声信号,确定所述三路残差信号。
44.如权利要求41所述的装置,其特征在于,所述第一确定子模块用于:
通过单声道解码器对所述码流进行解码,以得到一路所述虚拟扬声器信号和三路所述残差信号。
45.如权利要求41-44任一所述的装置,其特征在于,所述指定通道的信号包括一阶立体混响FOA信号,所述FOA信号包括全向的W信号,以及定向的X信号、Y信号和Z信号;
所述第一确定子模块用于:
基于所述虚拟扬声器信号,确定所述W信号;
基于所述残差信号与所述W信号确定所述X信号、所述Y信号和所述Z信号,或者,基于所述残差信号确定所述X信号、所述Y信号和所述Z信号。
46.如权利要求40-45任一所述的装置,其特征在于,所述装置还包括:
第一解码模块,用于若所述当前帧的解码方案为所述第一解码方案,则按照所述第一解码方案,根据所述码流获得所述当前帧的重建HOA信号;
第二解码模块,用于若所述当前帧的解码方案为所述第二解码方案,则按照所述第二解码方案,根据所述码流获得所述当前帧的重建HOA信号。
47.如权利要求46所述的装置,其特征在于,所述第二解码模块包括:
第一获得子模块,用于按照所述第二解码方案,根据所述码流获得初始HOA信号;
增益调整子模块,用于若所述当前帧的前一帧的解码方案为所述第三解码方案,则根据所述当前帧的前一帧的高阶增益,对所述初始HOA信号的高阶部分进行增益调整;
第二获得子模块,用于基于所述初始HOA信号的低阶部分和经增益调整的高阶部分,获得所述重建HOA信号。
48.如权利要求40-47任一所述的装置,其特征在于,所述第一获得模块包括:
第一解析子模块,用于从所述码流中解析出所述当前帧的切换标志的值;
第二解析子模块,用于若所述切换标志的值为第一值,则从所述码流中解析所述当前帧的解码方案的指示信息,所述指示信息用于指示所述当前帧的解码方案为所述第一解码方案或所述第二解码方案;
第三确定子模块,用于若所述切换标志的值为第二值,确定所述当前帧的解码方案为所述第三解码方案。
49.如权利要求40-47任一所述的装置,其特征在于,所述第一获得模块包括:
第三解析子模块,用于从所述码流中解析出所述当前帧的解码方案的指示信息,所述指示信息用于指示所述当前帧的解码方案为所述第一解码方案、所述第二解码方案或所述第三解码方案。
50.如权利要求40-47任一所述的装置,其特征在于,所述第一获得模块包括:
第四解析子模块,用于从所述码流中解析出所述当前帧的初始解码方案,所述初始解码方案为所述第一解码方案或所述第二解码方案;
第四确定子模块,用于若所述当前帧的初始解码方案与所述当前帧的前一帧的初始解码方案相同,则确定所述当前帧的解码方案为所述当前帧的初始解码方案;
第五确定子模块,用于若所述当前帧的初始解码方案为所述第一解码方案且所述当前帧的前一帧的初始解码方案为所述第二解码方案,或所述当前帧的初始解码方案为所述第二解码方案且所述当前帧的前一帧的初始解码方案为所述第一解码方案,则确定所述当前帧的解码方案为所述第三解码方案。
51.一种编码端设备,其特征在于,所述编码端设备包括存储器和处理器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的所述计算机程序,以实现权利要求1-14任一项所述的编码方法。
52.一种解码端设备,其特征在于,所述解码端设备包括存储器和处理器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的所述计算机程序,以实现权利要求15-25任一项所述的解码方法。
53.一种计算机可读存储介质,其特征在于,所述存储介质内存储有指令,当所述指令在所述计算机上运行时,使得所述计算机执行权利要求1-25任一项所述的方法的步骤。
54.一种计算机程序产品,其特征在于,所述计算机程序产品包含指令,所述指令被处理器执行时实现如权利要求1-25中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111155384.0A CN115881140A (zh) | 2021-09-29 | 2021-09-29 | 编解码方法、装置、设备、存储介质及计算机程序产品 |
TW111135552A TWI847276B (zh) | 2021-09-29 | 2022-09-20 | 編解碼方法、裝置、設備、儲存媒體及電腦程式產品 |
PCT/CN2022/120495 WO2023051368A1 (zh) | 2021-09-29 | 2022-09-22 | 编解码方法、装置、设备、存储介质及计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111155384.0A CN115881140A (zh) | 2021-09-29 | 2021-09-29 | 编解码方法、装置、设备、存储介质及计算机程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115881140A true CN115881140A (zh) | 2023-03-31 |
Family
ID=85756476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111155384.0A Pending CN115881140A (zh) | 2021-09-29 | 2021-09-29 | 编解码方法、装置、设备、存储介质及计算机程序产品 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115881140A (zh) |
WO (1) | WO2023051368A1 (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003208517A1 (en) * | 2003-03-11 | 2004-09-30 | Nokia Corporation | Switching between coding schemes |
US8824553B2 (en) * | 2003-05-12 | 2014-09-02 | Google Inc. | Video compression method |
JP4977157B2 (ja) * | 2009-03-06 | 2012-07-18 | 株式会社エヌ・ティ・ティ・ドコモ | 音信号符号化方法、音信号復号方法、符号化装置、復号装置、音信号処理システム、音信号符号化プログラム、及び、音信号復号プログラム |
WO2011034374A2 (en) * | 2009-09-17 | 2011-03-24 | Lg Electronics Inc. | A method and an apparatus for processing an audio signal |
EP2665208A1 (en) * | 2012-05-14 | 2013-11-20 | Thomson Licensing | Method and apparatus for compressing and decompressing a Higher Order Ambisonics signal representation |
EP2963949A1 (en) * | 2014-07-02 | 2016-01-06 | Thomson Licensing | Method and apparatus for decoding a compressed HOA representation, and method and apparatus for encoding a compressed HOA representation |
EP3067886A1 (en) * | 2015-03-09 | 2016-09-14 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal |
CN109215668B (zh) * | 2017-06-30 | 2021-01-05 | 华为技术有限公司 | 一种声道间相位差参数的编码方法及装置 |
KR20200116968A (ko) * | 2018-02-01 | 2020-10-13 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 하이브리드 인코더/디코더 공간 분석을 사용한 오디오 장면 인코더, 오디오 장면 디코더 및 관련 방법들 |
-
2021
- 2021-09-29 CN CN202111155384.0A patent/CN115881140A/zh active Pending
-
2022
- 2022-09-22 WO PCT/CN2022/120495 patent/WO2023051368A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
TW202333139A (zh) | 2023-08-16 |
WO2023051368A1 (zh) | 2023-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230298600A1 (en) | Audio encoding and decoding method and apparatus | |
US20230137053A1 (en) | Audio Coding Method and Apparatus | |
CN110603585A (zh) | 用于高阶立体环绕声的音频数据的分层中间压缩 | |
CN114067810A (zh) | 音频信号渲染方法和装置 | |
US20200020342A1 (en) | Error concealment for audio data using reference pools | |
CN111149157A (zh) | 使用经扩展参数对高阶立体混响系数的空间关系译码 | |
WO2021213128A1 (zh) | 音频信号编码方法和装置 | |
WO2020008112A1 (en) | Energy-ratio signalling and synthesis | |
US20230105508A1 (en) | Audio Coding Method and Apparatus | |
KR20220062621A (ko) | 공간적 오디오 파라미터 인코딩 및 관련 디코딩 | |
US20230145725A1 (en) | Multi-channel audio signal encoding and decoding method and apparatus | |
CN114008705A (zh) | 基于操作条件执行心理声学音频编解码 | |
WO2023051368A1 (zh) | 编解码方法、装置、设备、存储介质及计算机程序产品 | |
WO2023051367A1 (zh) | 解码方法、装置、设备、存储介质及计算机程序产品 | |
AU2021388397A1 (en) | Audio encoding/decoding method and device | |
CN115497485A (zh) | 三维音频信号编码方法、装置、编码器和*** | |
WO2023051370A1 (zh) | 编解码方法、装置、设备、存储介质及计算机程序 | |
WO2024139865A1 (zh) | 虚拟扬声器的确定方法及相关装置 | |
EP4398242A1 (en) | Encoding and decoding methods and apparatus, device, storage medium, and computer program | |
WO2022242534A1 (zh) | 编解码方法、装置、设备、存储介质及计算机程序 | |
WO2022012554A1 (zh) | 多声道音频信号编码方法和装置 | |
WO2022258036A1 (zh) | 编解码方法、装置、设备、存储介质及计算机程序 | |
CN118283485A (zh) | 虚拟扬声器的确定方法及相关装置 | |
JP2024518846A (ja) | 3次元オーディオ信号符号化方法および装置、ならびにエンコーダ | |
CA3221992A1 (en) | Three-dimensional audio signal processing method and apparatus |
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 |