CN115881139A - 编解码方法、装置、设备、存储介质及计算机程序 - Google Patents
编解码方法、装置、设备、存储介质及计算机程序 Download PDFInfo
- Publication number
- CN115881139A CN115881139A CN202111155355.4A CN202111155355A CN115881139A CN 115881139 A CN115881139 A CN 115881139A CN 202111155355 A CN202111155355 A CN 202111155355A CN 115881139 A CN115881139 A CN 115881139A
- Authority
- CN
- China
- Prior art keywords
- transient
- global
- detection result
- current frame
- coding
- 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 204
- 238000003860 storage Methods 0.000 title claims abstract description 42
- 238000004590 computer program Methods 0.000 title claims abstract description 17
- 230000001052 transient effect Effects 0.000 claims abstract description 712
- 230000005236 sound signal Effects 0.000 claims abstract description 331
- 238000001514 detection method Methods 0.000 claims abstract description 317
- 230000005540 biological transmission Effects 0.000 claims abstract description 153
- 230000006870 function Effects 0.000 claims description 181
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 description 72
- 230000008569 process Effects 0.000 description 54
- 238000010586 diagram Methods 0.000 description 24
- 238000004891 communication Methods 0.000 description 21
- 238000007493 shaping process Methods 0.000 description 17
- 238000005516 engineering process Methods 0.000 description 14
- 230000009466 transformation Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 4
- 238000009877 rendering Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012432 intermediate storage Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000001914 filtration 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
- 239000003550 marker Substances 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
- 238000009527 percussion Methods 0.000 description 1
- 238000003672 processing method 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
- 230000002123 temporal effect Effects 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (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)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申请实施例公开了一种编解码方法、装置、设备、存储介质及计算机程序,属于三维音频编解码技术领域。在该方法中,对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到M个暂态检测结果,基于M个暂态检测结果确定全局暂态检测结果,基于全局暂态检测结果,将时域三维音频信号转换为频域三维音频信号,以及对频域三维音频信号进行空间编码以得到空间编码参数和N个传输通道的频域信号,基于全局暂态检测结果对N个传输通道的频域信号进行编码以得到频域信号编码结果,将空间编码参数进行编码以得到空间编码参数编码结果,将空间编码参数编码结果和频域信号编码结果写入码流。这样,能够降低编码复杂度,提高编码效率。
Description
技术领域
本申请实施例涉及三维音频编解码技术领域,特别涉及一种编解码方法、装置、设备、存储介质及计算机程序。
背景技术
三维音频技术是通过计算机、信号处理等方式对真实世界中声音事件和三维声场信息进行获取、处理、传输和渲染回放的音频技术。为了实现更好的音频听觉效果,三维音频信号通常需要包括大量的数据量,以此来更详细地记录声音场景的空间信息。然而,大量的数据量在传输和存储的过程中存在困难,因此需要对三维音频信号进行编解码。
高阶立体混响(higher order ambisonics,HOA)音频技术作为一种三维音频技术,因其在录制、编码与回放阶段具有与扬声器布局无关的性质,以及HOA格式数据具有可旋转回放的特性,所以HOA信号在进行回放时具有更高的灵活性,因而得到了更为广泛的关注。
相关技术提出了一种对HOA信号进行编码的方法,在该方法中,先对时域HOA信号进行时频变换,以得到频域HOA信号,对频域HOA信号进行空间编码,以得到多个通道的频域信号。之后,对各通道的频域信号进行时频逆变换,以得到各通道的时域信号,对各通道的时域信号进行暂态检测,以得到各通道的暂态检测结果。然后,对各通道的时域信号再次进行时频变换,以得到各通道的频域信号,利用各通道的暂态检测结果,对各通道的频域信号进行编码。
然而,在上述方法中,需要对音频信号在时域与频域之间进行多次变换,从而增加了编码复杂度,进而降低了编码效率。
发明内容
本申请实施例提供了一种编解码方法、装置、设备、存储介质及计算机程序,可以降低编码复杂度,提高编码效率。所述技术方案如下:
第一方面,提供了一种编码方法,对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到M个通道对应的M个暂态检测结果,M为大于1的整数;基于M个暂态检测结果,确定全局暂态检测结果;基于全局暂态检测结果,将时域三维音频信号转换为频域三维音频信号;基于全局暂态检测结果,对频域三维音频信号进行空间编码,以得到空间编码参数和N个传输通道的频域信号,N为大于或等于1且小于或等于M的整数;基于全局暂态检测结果,对N个传输通道的频域信号进行编码,以得到频域信号编码结果;将空间编码参数进行编码,以得到空间编码参数编码结果;将空间编码参数编码结果和频域信号编码结果写入码流。
暂态检测结果包括暂态标志,或者,暂态检测结果包括暂态标志和暂态位置信息。暂态标志用于指示对应通道的信号是否为暂态信号,暂态位置信息用于指示对应通道的信号中暂态发生的位置。该M个通道对应的M个暂态检测结果的确定方式包括多种,接下来对其中一种方式进行介绍。由于该M个通道中每个通道对应的暂态检测结果的确定方式相同,因此,接下来以其中一个通道为例,对该通道对应的暂态检测结果的确定方式进行介绍。为了便于描述,将该通道称为目标通道,而且接下来将分别介绍目标通道的暂态标志和暂态位置信息。
目标通道的暂态标志的确定方式包括:基于目标通道的信号,确定目标通道对应的暂态检测参数。基于目标通道对应的暂态检测参数,确定目标通道对应的暂态标志。
作为一种示例,目标通道对应的暂态检测参数为帧间能量差的绝对值。也即是,确定当前帧中目标通道的信号的能量,以及当前帧的上一帧中目标通道的信号的能量。确定当前帧中目标通道的信号的能量与上一帧中目标通道的信号的能量之间的差值的绝对值,以得到帧间能量差的绝对值。如果该帧间能量差的绝对值超过第一能量差阈值,则确定当前帧中目标通道对应的暂态标志为第一值,否则,确定当前帧中目标通道对应的暂态标志为第二值。
作为另一种示例,目标通道对应的暂态检测参数为子帧能量差的绝对值。也即是,当前帧中目标通道的信号包括多个子帧的信号,确定该多个子帧中每个子帧对应的子帧能量差的绝对值,进而确定每个子帧对应的暂态标志。如果该多个子帧中存在暂态标志为第一值的子帧,则确定当前帧中目标通道对应的暂态标志为第一值。如果该多个子帧中不存在暂态标志为第一值的子帧,则确定当前帧中目标通道对应的暂态标志为第二值。
目标通道的暂态位置信息的确定方式包括:基于目标通道对应的暂态标志,确定目标通道对应的暂态位置信息。
作为一种示例,如果目标通道对应的暂态标志为第一值,则确定目标通道对应的暂态位置信息。如果目标通道对应的暂态标志为第二值,则确定目标通道不具有对应的暂态位置信息,或者,将目标通道对应的暂态位置信息设置为预设数值,比如设置为-1。
在一些实施例中,暂态检测结果包括暂态标志,全局暂态检测结果包括全局暂态标志,暂态标志用于指示对应通道的信号是否为暂态信号。基于M个暂态检测结果,确定全局暂态检测结果,包括:若该M个暂态标志中为第一值的暂态标志的数量大于或等于m,则确定全局暂态标志为第一值,m为大于0且小于M的正整数。或者,若M个通道中满足第一预设条件且对应的暂态标志为第一值的通道数量大于或等于n,则确定全局暂态标志为第一值,n为大于0且小于M的正整数。
其中,m和n为事先设置的数值,且m和n还能够按照不同的需求来调整。在该三维音频信号为HOA信号的情况下,第一预设条件包括属于一阶立体混响(first-orderambisonics,FOA)信号的通道,例如FOA信号的通道可以包括该HOA信号中的前4个通道。换句话说,在该三维音频信号为HOA信号的情况下,若当前帧的三维音频信号中的FOA信号的通道中对应的暂态标志为第一值的通道数量大于或等于n,则确定全局暂态标志为第一值。当然,第一预设条件还可以为其他的条件。
在另一些实施例中,暂态检测结果还包括暂态位置信息,全局暂态检测结果还包括全局暂态位置信息,暂态位置信息用于指示对应通道的信号中暂态发生的位置。基于M个暂态检测结果,确定全局暂态检测结果,包括:若M个暂态标志中仅有一个暂态标志为第一值,则将暂态标志为第一值的通道对应的暂态位置信息确定为全局暂态位置信息。若M个暂态标志中存在至少两个暂态标志为第一值,则将至少两个暂态标志对应的至少两个通道中暂态检测参数最大的通道对应的暂态位置信息确定为全局暂态位置信息。
或者若该M个暂态标志中存在至少两个暂态标志为第一值,且两个通道对应的暂态位置信息之间的差距小于位置差阈值,则将该两个通道对应的暂态位置信息的平均值确定为全局暂态位置信息。位置差阈值为事先设置的,而且位置差阈值能够按照不同的需求来调整。
基于上文描述,通道对应的暂态检测参数为帧间能量差的绝对值或者子帧能量差的绝对值。在通道对应的暂态检测参数为帧间能量差的绝对值的情况下,一个通道对应一个帧间能量差的绝对值,此时,可以从该至少两个通道中选择对应的帧间能量差的绝对值最大的通道,进而将选择的通道对应的暂态位置信息确定为全局暂态位置信息。在通道对应的暂态检测参数为子帧能量差的绝对值的情况下,一个通道对应有多个子帧能量差的绝对值,此时,可以从该至少两个通道中选择对应的子帧能量差的绝对值最大的通道,进而将选择的通道对应的暂态位置信息确定为全局暂态位置信息。
可选地,基于全局暂态检测结果,将时域三维音频信号转换为频域三维音频信号,包括:基于全局暂态检测结果确定目标编码参数,目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型。基于目标编码参数将时域三维音频信号转换为频域三维音频信号。
作为一种示例,全局暂态检测结果包括全局暂态标志。基于全局暂态检测结果确定当前帧的窗函数类型的实现过程包括:若全局暂态标志为第一值,则将第一预设窗函数的类型确定为当前帧的窗函数类型。若全局暂态标志为第二值,则将第二预设窗函数的类型确定为当前帧的窗函数类型。其中,第一预设窗函数的窗长小于第二预设窗函数的窗长。
作为另一种示例,全局暂态检测结果包括全局暂态标志和全局暂态位置信息。基于全局暂态检测结果确定当前帧的窗函数类型的实现过程包括:若全局暂态标志为第一值,则基于全局暂态位置信息确定当前帧的窗函数类型。若全局暂态标志为第二值,则将第三预设窗函数的类型确定为当前帧的窗函数类型,或者,基于当前帧的上一帧的窗函数类型确定当前帧的窗函数类型。
由于全局暂态检测结果可以仅包括全局暂态标志,也可以包括全局暂态标志和全局暂态位置信息,而且全局暂态位置信息可能是暂态标志为第一值的通道对应的暂态位置信息,也可能是预设数值。在全局暂态检测结果不同的情况下,确定当前帧的帧类型的方式不同,因此,接下来将分为以下三种情况分别进行说明:
第一种情况、全局暂态检测结果包括全局暂态标志。基于全局暂态检测结果确定当前帧的帧类型的实现过程包括:若全局暂态标志为第一值,则确定当前帧的帧类型为第一类型,第一类型用于指示当前帧包括多个短帧。若全局暂态标志为第二值,则确定当前帧的帧类型为第二类型,第二类型用于指示当前帧包括一个长帧。
第二种情况、全局暂态检测结果包括全局暂态标志和全局暂态位置信息。基于全局暂态检测结果确定当前帧的帧类型的实现过程包括:若全局暂态标志为第一值且全局暂态位置信息满足第二预设条件,则确定当前帧的帧类型为第三类型,第三类型用于指示当前帧包括多个超短帧。若全局暂态标志为第一值且全局暂态位置信息不满足第二预设条件,则确定当前帧的帧类型为第一类型,第一类型用于指示当前帧包括多个短帧。若全局暂态标志为第二值,则确定当前帧的帧类型为第二类型,第二类型用于指示当前帧包括一个长帧。超短帧的帧长小于短帧的帧长,短帧的帧长小于长帧的帧长。第二预设条件可以是全局暂态位置信息指示的暂态发生位置距离当前帧的起始位置小于超短帧的帧长或者全局暂态位置信息指示的暂态发生位置距离当前帧的结束位置小于超短帧的帧长。
第三种情况、全局暂态检测结果包括全局暂态位置信息。基于全局暂态检测结果确定当前帧的帧类型的实现过程包括:若全局暂态位置信息为预设数值,比如为-1,则确定当前帧的帧类型为第二类型,第二类型用于指示当前帧包括一个长帧。若全局暂态位置信息不为预设数值且满足第二预设条件,则确定当前帧的帧类型为第三类型,第三类型用于指示当前帧包括多个超短帧。若全局暂态位置信息不为预设数值且不满足第二预设条件,则确定当前帧的帧类型为第一类型,第一类型用于指示当前帧包括多个短帧。超短帧的帧长小于短帧的帧长,短帧的帧长小于长帧的帧长。第二预设条件可以是全局暂态位置信息指示的暂态发生位置距离当前帧的起始位置小于超短帧的帧长或者全局暂态位置信息指示的暂态发生位置距离当前帧的结束位置小于超短帧的帧长。
需要说明的是,当前帧的窗函数类型用于指示当前帧对应的窗函数的形状和长度,当前帧的窗函数用于对当前帧的时域三维音频信号进行加窗处理。当前帧的帧类型用于指示当前帧为超短帧、短帧还是长帧。其中,超短帧、短帧和长帧可以基于帧的时长来区分,具体的时长可以按照不同的需求来设置,本申请实施例对此不做限定
基于上文描述,目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型。也即是,目标编码参数包括当前帧的窗函数类型,或者,目标编码参数包括当前帧的帧类型,又或者,目标编码参数包括当前帧的窗函数类型和帧类型。在目标编码参数包括的参数不同时,基于该目标编码参数将当前帧的时域三维音频信号转换为频域三维音频信号的过程有所不同,因此接下来将分别进行说明。
第一种情况,目标编码参数包括当前帧的窗函数类型。这种情况下,基于当前帧的窗函数类型所指示的窗函数,对当前帧的时域三维音频信号进行加窗处理。之后,将加窗处理后的三维音频信号转换为频域三维音频信号。
第二种情况,目标编码参数包括当前帧的帧类型。这种情况下,如果当前帧的帧类型为第一类型,表明当前帧包括多个短帧,此时,将当前帧包括的各个短帧的时域三维音频信号转换为频域三维音频信号。如果当前帧的帧类型为第二类型,表明当前帧包括一个长帧,此时,直接将当前帧包括的长帧的时域三维音频信号转换为频域三维音频信号。如果当前帧的帧类型为第三类型,表明当前帧包括多个超短帧,此时,将当前帧包括的各个超短帧的时域三维音频信号转换为频域三维音频信号。
第三种情况,目标编码参数包括当前帧的窗函数类型和帧类型。这种情况下,如果当前帧的帧类型为第一类型,表明当前帧包括多个短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的各个短帧的时域三维音频信号分别进行加窗处理,并将加窗处理后的各个短帧的时域三维音频信号转换为频域三维音频信号。如果当前帧的帧类型为第二类型,表明当前帧包括一个长短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的长帧的时域三维音频信号进行加窗处理,并将加窗处理后的长帧的时域三维音频信号转换为频域三维音频信号。如果当前帧的帧类型为第三类型,表明当前帧包括多个超短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的各个超短帧的时域三维音频信号分别进行加窗处理,并将加窗处理后的各个超短帧的时域三维音频信号转换为频域三维音频信号。
在一些实施例中,还能够将目标编码参数进行编码,以得到目标编码参数编码结果。将目标编码参数编码结果写入码流。
在一些实施例中,基于全局暂态检测结果,对频域三维音频信号进行空间编码,包括:基于帧类型,对频域三维音频信号进行空间编码。
在基于当前帧的帧类型,对当前帧的频域三维音频信号进行空间编码时,如果当前帧的帧类型为第一类型,也即是,当前帧包括多个短帧,此时,将当前帧包括的多个短帧的频域三维音频信号进行交织,以得到一个长帧的频域三维音频信号,对交织后得到的长帧的频域三维音频信号进行空间编码。如果当前帧的帧类型为第二类型,也即是,当前帧包括一个长帧,此时,对这个长帧的频域三维音频信号进行空间编码。如果当前帧的帧类型为第三类型,也即是,当前帧包括多个超短帧,此时,将当前帧包括的多个超短帧的频域三维音频信号进行交织,以得到一个长帧的频域三维音频信号,对交织后得到的长帧的频域三维音频信号进行空间编码。
在一些实施例中,基于全局暂态检测结果,对N个传输通道的频域信号进行编码,包括:基于当前帧的帧类型,对N个传输通道的频域信号进行编码。
作为一种示例,对该N个传输通道的频域信号进行编码的实现过程包括:基于当前帧的帧类型,对该N个传输通道的频域信号进行噪声整形处理。对噪声整形处理后的N个传输通道的频域信号进行传输通道下混处理,得到下混处理后的信号。对下混处理后的信号的低频部分进行量化与编码处理,将编码结果写入码流。对下混处理后的信号的高频部分进行带宽扩展与编码处理,将编码结果写入码流。
可选地,该方法还包括:将全局暂态检测结果进行编码,以得到全局暂态检测结果编码结果。将全局暂态检测结果编码结果写入码流。
第二方面,提供了一种解码方法,从码流中解析出全局暂态检测结果和空间编码参数;基于全局暂态检测结果和码流进行解码,以得到N个传输通道的频域信号;基于全局暂态检测结果和空间编码参数,对N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号;基于全局暂态检测结果和重建的频域三维音频信号,确定重建的时域三维音频信号。
可选地,基于全局暂态检测结果和重建的频域三维音频信号,确定重建的时域三维音频信号,包括:基于全局暂态检测结果确定目标编码参数,目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型;基于目标编码参数,将重建的频域三维音频信号转换为重建的时域三维音频信号。
基于上文描述,目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型。也即是,目标编码参数包括当前帧的窗函数类型,或者,目标编码参数包括当前帧的帧类型,又或者,目标编码参数包括当前帧的窗函数类型和帧类型。在目标编码参数包括的参数不同时,基于该目标编码参数将重建的频域三维音频信号转换为重建的时域三维音频信号的过程有所不同,因此接下来将分别进行说明。
第一种情况,目标编码参数包括当前帧的窗函数类型。这种情况下,基于当前帧的窗函数类型所指示的窗函数,对重建的频域三维音频信号进行去加窗处理。之后,将去加窗处理后的频域三维音频信号转换为重建的时域三维音频信号。
其中,去加窗处理也称为加窗及叠接相加处理。
第二种情况,目标编码参数包括当前帧的帧类型。这种情况下,如果当前帧的帧类型为第一类型,表明当前帧包括多个短帧,此时,将各个短帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。如果当前帧的帧类型为第二类型,表明当前帧包括一个长帧,此时,直接将当前帧包括的长帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。如果当前帧的帧类型为第三类型,表明当前帧包括多个超短帧,此时,将各个超短帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。
第三种情况,目标编码参数包括当前帧的窗函数类型和帧类型。这种情况下,如果当前帧的帧类型为第一类型,表明当前帧包括多个短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的各个短帧的频域三维音频信号分别进行去加窗处理,并将去加窗处理后的各个短帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。如果当前帧的帧类型为第二类型,表明当前帧包括一个长短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的长帧的重建频域三维音频信号进行去加窗处理,并将去加窗处理后的长帧的频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。如果当前帧的帧类型为第三类型,表明当前帧包括多个超短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的各个超短帧的频域三维音频信号分别进行去加窗处理,并将去加窗处理后的各个超短帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。
可选地,全局暂态检测结果包括全局暂态标志,目标编码参数包括当前帧的窗函数类型。基于全局暂态检测结果确定目标编码参数,包括:若全局暂态标志为第一值,则将第一预设窗函数的类型确定为当前帧的窗函数类型;若全局暂态标志为第二值,则将第二预设窗函数的类型确定为当前帧的窗函数类型;其中,第一预设窗函数的窗长小于第二预设窗函数的窗长。
可选地,全局暂态检测结果包括全局暂态标志和全局暂态位置信息,目标编码参数包括当前帧的窗函数类型;基于全局暂态检测结果确定目标编码参数,包括:若全局暂态标志为第一值,则基于全局暂态位置信息确定当前帧的窗函数类型。
第三方面,提供了一种编码装置,所述编码装置具有实现上述第一方面中编码方法行为的功能。所述编码装置包括至少一个模块,该至少一个模块用于实现上述第一方面所提供的编码方法。
第四方面,提供了一种解码装置,所述解码装置具有实现上述第二方面中解码方法行为的功能。所述解码装置包括至少一个模块,该至少一个模块用于实现上述第二方面所提供的解码方法。
第五方面,提供了一种编码端设备,所述编码端设备包括处理器和存储器,所述存储器用于存储执行上述第一方面所提供的编码方法的程序。所述处理器被配置为用于执行所述存储器中存储的程序,以实现上述第一方面提供的编码方法。
可选地,所述编码端设备还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第六方面,提供了一种解码端设备,所述解码端设备包括处理器和存储器,所述存储器用于存储执行上述第二方面所提供的解码方法的程序。所述处理器被配置为用于执行所述存储器中存储的程序,以实现上述第二方面提供的解码方法。
可选地,所述解码端设备还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
第七方面,提供了一种计算机可读存储介质,所述存储介质内存储有指令,当所述指令在计算机上运行时,使得计算机执行上述第一方面所述的编码方法的步骤,或者执行上述第二方面所述的解码方法的步骤。
第八方面,提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使得计算机执行上述第一方面所述的编码方法的步骤,或者执行上述第二方面所述的解码方法的步骤。或者说,提供了一种计算机程序,所述计算机程序被执行时实现上述第一方面所述的编码方法的步骤,或者实现上述第二方面所述的解码方法的步骤。
第九方面,提供了一种计算机可读存储介质,所述计算机可读存储介质包括上述第一方面所述的编码方法所获得的码流。
上述第三方面、第四方面、第五方面、第六方面、第七方面、第八方面和第九方面所得到的技术效果与第一方面或第二方面中对应的技术手段得到的技术效果近似,在这里不再赘述。
本申请实施例提供的技术方案至少可以带来以下有益效果:
通过对当前帧的时域三维音频信号包括的M个通道的信号进行暂态检测,从而确定全局暂态检测结果。之后,基于全局暂态检测结果,依次进行音频信号的时频变换、空间编码以及对各个传输通道的频域信号进行编码,尤其对空间编码后得到的各个传输通道的频域信号进行编码时,通过全局暂态检测结果指导各个传输通道的频域信号的编码,不需要将各个传输通道的频域信号转换至时域来确定各个传输通道对应的暂态检测结果,进而就不需要将三维音频信号在时域与频域之间进行多次变换,从而能够降低编码复杂度,提高编码效率。
附图说明
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的一种终端场景的实施环境的示意图;
图3是本申请实施例提供的一种无线或核心网设备的转码场景的实施环境的示意图;
图4是本申请实施例提供的一种广播电视场景的实施环境的示意图;
图5是本申请实施例提供的一种虚拟现实流场景的实施环境的示意图;
图6是本申请实施例提供的第一种编码方法的流程图;
图7是本申请实施例提供的第一种关于图6所示的编码方法的示例性框图;
图8是本申请实施例提供的第二种关于图6所示的编码方法的示例性框图;
图9是本申请实施例提供的第一种解码方法的流程图;
图10是本申请实施例提供的一种关于图9所示的解码方法的示例性框图;
图11是本申请实施例提供的第二种编码方法的流程图;
图12是本申请实施例提供的第一种关于图11所示的编码方法的示例性框图;
图13是本申请实施例提供的第二种关于图11所示的编码方法的示例性框图;
图14是本申请实施例提供的第二种解码方法的流程图;
图15是本申请实施例提供的一种关于图14所示的解码方法的示例性框图;
图16是本申请实施例提供的一种编码装置的结构示意图;
图17是本申请实施例提供的一种解码装置的结构示意图;
图18是本申请实施例提供的一种编解码装置的示意性框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例提供的编解码方法进行详细地解释说明之前,先对本申请实施例涉及的术语和实施环境进行介绍。
为了便于理解,首先对本申请实施例涉及的术语进行解释。
编码:是指将待编码的音频信号压缩成码流的处理过程。需要说明的是,音频信号被压缩成码流之后可以称为经编码的音频信号或者经压缩的音频信号。
解码:是指将编码码流按照特定的语法规则和处理方法恢复成重建音频信号的处理过程。
三维音频信号:包括多个通道的信号,用于表征三维空间的声场,可以是HOA信号、多声道信号、对象音频信号中的一种或多种的组合。对于HOA信号来说,该三维音频信号的通道数与三维音频信号的阶数相关。比如,如果三维音频信号为A阶信号,则三维音频信号的通道数为(A+1)2。
下述提及的三维音频信号可以是任意的三维音频信号,比如可以是HOA信号、多声道信号、对象音频信号中的一种或多种的组合。
暂态信号:用于表征三维音频信号对应通道的信号的暂态现象。如果某个通道的信号为暂态信号,表明这个通道的信号为非平稳信号。例如,在短时间内能量变化大的信号,如鼓声、打击乐器的声音等。
接下来对本申请实施例涉及的实施环境进行介绍。
请参考图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-only memory,CD-ROM)、快闪存储器、易失性或非易失性存储器,或用于存储经编码三维音频信号的任何其它合适的数字存储媒体等。
在一种可能的实现方式中,存储装置40可以对应于文件服务器或可以保存由源装置10产生的经编码三维音频信号的另一中间存储装置,目的地装置20可经由流式传输或下载存储装置40存储的三维音频信号。文件服务器可以为能够存储经编码的三维音频信号并且将经编码的三维音频信号发送给目的地装置20的任意类型的服务器。在一种可能的实现方式中,文件服务器可以包括网络服务器、文件传输协议(file transfer protocol,FTP)服务器、网络附属存储(network attached storage,NAS)装置或本地磁盘驱动器等。目的地装置20可以通过任意标准数据连接(包括因特网连接)来获取经编码三维音频信号。任意标准数据连接可以包括无线信道(例如,Wi-Fi连接)、有线连接(例如,数字用户线路(digital subscriber line,DSL)、电缆调制解调器等),或适合于获取存储在文件服务器上的经编码的三维音频数据的两者的组合。经编码的三维音频信号从存储装置40的传输可为流式传输、下载传输或两者的组合。
本申请实施例的技术可以适用于图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可以为液晶显示器(liquidcrystal display,LCD)、等离子显示器、有机发光二极管(organic light-emittingdiode,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的另一装置。术语“发信号通知”或“发送”可大体上指代用于对经压缩的三维音频信号进行解码的语法元素和/或其它数据的传送。此传送可实时或几乎实时地发生。替代地,此通信可经过一段时间后发生,例如可在编码时在经编码位流中将语法元素存储到计算机可读存储媒体时发生,解码装置接着可在所述语法元素存储到此媒体之后的任何时间检索所述语法元素。
本申请实施例提供的编解码方法可以应用于多种场景,接下来对其中的几种场景分别进行介绍。
请参考图2,图2是本申请实施例提供的一种编解码方法应用于终端场景的实施环境的示意图。该实施环境包括第一终端101和第二终端201,第一终端101与第二终端201进行通信连接。该通信连接可以为无线连接,也可以为有线连接,本申请实施例对此不做限定。
其中,第一终端101可以为发送端设备,也可以为接收端设备,同理,第二终端201可以为接收端设备,也可以为发送端设备。在第一终端101为发送端设备的情况下,第二终端201为接收端设备,在第一终端101为接收端设备的情况下,第二终端201为发送端设备。
接下来以第一终端101为发送端设备,第二终端201为接收端设备为例进行介绍。
第一终端101可以为上述图1所示的实施环境中的源装置10。第二终端201可以为上述图1所示的实施环境中的目的地装置20。其中,第一终端101和第二终端201均包括音频采集模块、音频回放模块、编码器、解码器、信道编码模块和信道解码模块。
第一终端101中的音频采集模块采集三维音频信号并传输给编码器,编码器利用本申请实施例提供的编码方法对三维音频信号进行编码,该编码可以称为信源编码。之后,为了实现三维音频信号在信道中的传输,信道编码模块还需要再进行信道编码,然后将编码得到的码流通过无线或者有线网络通信设备在数字信道中传输。
第二终端201通过无线或者有线网络通信设备接收数字信道中传输的码流,信道解码模块对码流进行信道解码,然后解码器利用本申请实施例提供的解码方法解码得到三维音频信号,再通过音频回放模块进行播放。
其中,第一终端101和第二终端201可以是任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如个人计算机(personal computer,PC)、手机、智能手机、个人数字助手(Personal DigitalAssistant,PDA)、可穿戴设备、掌上电脑PPC(pocket PC)、平板电脑、智能车机、智能电视、智能音箱等。
本领域技术人员应能理解上述终端仅为举例,其他现有的或今后可能出现的终端如可适用于本申请实施例,也应包含在本申请实施例保护范围以内,并在此以引用方式包含于此。
请参考图3,图3是本申请实施例提供的一种编解码方法应用于无线或核心网设备的转码场景的实施环境的示意图。该实施环境包括信道解码模块、音频解码器、音频编码器和信道编码模块。
其中,音频解码器可以为利用本申请实施例提供的解码方法的解码器,也可以为利用其他解码方法的解码器。音频编码器可以为利用本申请实施例提供的编码方法的编码器,也可以为利用其他编码方法的编码器。在音频解码器为利用本申请实施例提供的解码方法的解码器的情况下,音频编码器为利用其他编码方法的编码器,在音频解码器为利用其他解码方法的解码器的情况下,音频编码器为利用本申请实施例提供的编码方法的编码器。
第一种情况,音频解码器为利用本申请实施例提供的解码方法的解码器,音频编码器为利用其他编码方法的编码器。
此时,信道解码模块用于对接收的码流进行信道解码,然后音频解码器用于利用本申请实施例提供的解码方法进行信源解码,再通过音频编码器按照其他编码方法进行编码,实现一种格式到另一种格式的转换,即转码。之后,再通过信道编码后发送。
第二种情况,音频解码器为利用其他解码方法的解码器,音频编码器为利用本申请实施例提供的编码方法的编码器。
此时,信道解码模块用于对接收的码流进行信道解码,然后音频解码器用于利用其他解码方法进行信源解码,再通过音频编码器利用本申请实施例提供的编码方法进行编码,实现一种格式到另一种格式的转换,即转码。之后,再通过信道编码后发送。
其中,无线设备可以为无线接入点、无线路由器、无线连接器等等。核心网设备可以为移动性管理实体、网关等等。
本领域技术人员应能理解上述无线设备或者核心网设备仅为举例,其他现有的或今后可能出现的无线或核心网设备如可适用于本申请实施例,也应包含在本申请实施例保护范围以内,并在此以引用方式包含于此。
请参考图4,图4是本申请实施例提供的一种编解码方法应用于广播电视场景的实施环境的示意图。广播电视场景分为直播场景和后期制作场景。对于直播场景来说,该实施环境包括直播节目三维声制作模块、三维声编码模块、机顶盒和扬声器组,机顶盒包括三维声解码模块。对于后期制作场景来说,该实施环境包括后期节目三维声制作模块、三维声编码模块、网络接收器、移动终端、耳机等。
直播场景下,直播节目三维声制作模块制作出三维声信号,该三维声信号包括三维音频信号。该三维声信号经过应用本申请实施例的编码方法的编码得到码流,该码流经广电网络传输到用户侧,由机顶盒中的三维声解码器利用本申请实施例提供的解码方法进行解码,从而重建三维声信号,由扬声器组进行回放。或者,该码流经互联网传输到用户侧,由网络接收器中的三维声解码器利用本申请实施例提供的解码方法进行解码,从而重建三维声信号,由扬声器组进行回放。又或者,该码流经互联网传输到用户侧,由移动终端中的三维声解码器利用本申请实施例提供的解码方法进行解码,从而重建三维声信号,由耳机进行回放。
后期制作场景下,后期节目三维声制作模块制作出三维声信号,该三维声信号经过应用本申请实施例的编码方法的编码得到码流,该码流经广电网络传输到用户侧,由机顶盒中的三维声解码器利用本申请实施例提供的解码方法进行解码,从而重建三维声信号,由扬声器组进行回放。或者,该码流经互联网传输到用户侧,由网络接收器中的三维声解码器利用本申请实施例提供的解码方法进行解码,从而重建三维声信号,由扬声器组进行回放。又或者,该码流经互联网传输到用户侧,由移动终端中的三维声解码器利用本申请实施例提供的解码方法进行解码,从而重建三维声信号,由耳机进行回放。
请参考图5,图5是本申请实施例提供的一种编解码方法应用于虚拟现实流场景的实施环境的示意图。该实施环境包括编码端和解码端,编码端包括采集模块、预处理模块、编码模块、打包模块和发送模块,解码端包括解包模块、解码模块、渲染模块和耳机。
采集模块采集三维音频信号,然后通过预处理模块进行预处理操作,预处理操作包括滤除掉信号中的低频部分,通常是以20Hz或者50Hz为分界点,提取信号中的方位信息等。之后通过编码模块,利用本申请实施例提供的编码方法进行编码处理,编码之后通过打包模块进行打包,进而通过发送模块发送给解码端。
解码端的解包模块首先进行解包,之后通过解码模块,利用本申请实施例提供的解码方法进行解码,然后通过渲染模块对解码信号进行双耳渲染处理,渲染处理后的信号映射到收听者耳机上。该耳机可以为独立的耳机,也可以是基于虚拟现实的眼镜设备上的耳机。
需要说明的是,本申请实施例描述的系统架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
接下来对本申请实施例提供的编解码方法进行详细地解释说明。需要说明的是,结合图1所示的实施环境,下文中的任一种编码方法可以是源装置10中的编码器100执行的。下文中的任一种解码方法可以是目的地装置20中的解码器200执行的。
请参考图6,图6是本申请实施例提供的第一种编码方法的流程图。该编码方法应用于编码端设备,包括如下步骤。
步骤601:对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到该M个通道对应的M个暂态检测结果,M为大于1的整数。
M个暂态检测结果与当前帧的时域三维音频信号包括的M个通道一一对应。暂态检测结果包括暂态标志,或者,暂态检测结果包括暂态标志和暂态位置信息。暂态标志用于指示对应通道的信号是否为暂态信号,暂态位置信息用于指示对应通道的信号中暂态发生的位置。
该M个通道对应的M个暂态检测结果的确定方式包括多种,接下来对其中一种方式进行介绍。由于该M个通道中每个通道对应的暂态检测结果的确定方式相同,因此,接下来以其中一个通道为例,对该通道对应的暂态检测结果的确定方式进行介绍。为了便于描述,将该通道称为目标通道,而且接下来将分别介绍目标通道的暂态标志和暂态位置信息。
目标通道的暂态标志
基于目标通道的信号,确定目标通道对应的暂态检测参数。基于目标通道对应的暂态检测参数,确定目标通道对应的暂态标志。
作为一种示例,目标通道对应的暂态检测参数为帧间能量差的绝对值。也即是,确定当前帧中目标通道的信号的能量,以及当前帧的上一帧中目标通道的信号的能量。确定当前帧中目标通道的信号的能量与上一帧中目标通道的信号的能量之间的差值的绝对值,以得到帧间能量差的绝对值。如果该帧间能量差的绝对值超过第一能量差阈值,则确定当前帧中目标通道对应的暂态标志为第一值,否则,确定当前帧中目标通道对应的暂态标志为第二值。
基于上文描述,暂态标志用于指示对应通道的信号是否为暂态信号,所以,在该帧间能量差的绝对值超过第一能量差阈值的情况下,表明当前帧中目标通道的信号为暂态信号,此时,确定当前帧中目标通道对应的暂态标志为第一值。在该帧间能量差的绝对值不超过第一能量差阈值的情况下,表明当前帧中目标通道的信号不为暂态信号,此时,确定当前帧中目标通道对应的暂态标志为第二值。
需要说明的是,第一值和第二值能够通过多种方式来表示。比如,第一值为true,第二值为flase。或者,第一值为1,第二值为0。当然,还能够通过其他方式来表示。第一能量差阈值为事先设置的,而且第一能量差阈值能够按照不同的需求来调整。
作为另一种示例,目标通道对应的暂态检测参数为子帧能量差的绝对值。也即是,当前帧中目标通道的信号包括多个子帧的信号,确定该多个子帧中每个子帧对应的子帧能量差的绝对值,进而确定每个子帧对应的暂态标志。如果该多个子帧中存在暂态标志为第一值的子帧,则确定当前帧中目标通道对应的暂态标志为第一值。如果该多个子帧中不存在暂态标志为第一值的子帧,则确定当前帧中目标通道对应的暂态标志为第二值。
其中,确定该多个子帧中每个子帧的暂态标志的实现方式相同,因此接下来以该多个子帧中的第i个子帧为例进行说明,i为正整数。也即是,确定该多个子帧中第i个子帧的信号的能量以及第i-1个子帧的信号的能量。确定第i个子帧的信号的能量与第i-1个子帧的信号的能量之间的差值的绝对值,以得到第i个子帧对应的子帧能量差的绝对值。如果第i个子帧对应的子帧能量差的绝对值超过第二能量差阈值,则确定第i个子帧的暂态标志为第一值,否则,确定第i个子帧的暂态标志为第二值。
基于上文描述,暂态标志用于指示对应通道的信号是否为暂态信号,所以,在第i个子帧对应的子帧能量差的绝对值超过第二能量差阈值的情况下,表明第i个子帧的信号为暂态信号,此时,确定第i个子帧的暂态标志为第一值。在第i个子帧对应的子帧能量差的绝对值不超过第二能量差阈值的情况下,表明第i个子帧的信号不为暂态信号,此时,确定第i个子帧的暂态标志为第二值。
需要说明的是,当i=0时,第i-1个子帧的信号的能量为当前帧的前一帧中目标通道的最后一个子帧的信号的能量。第二能量差阈值为事先设置的,而且第二能量差阈值能够按照不同的需求来调整。另外,第二能量差阈值与第一能量差阈值可以相同,也可以不同。
目标通道的暂态位置信息
基于目标通道对应的暂态标志,确定目标通道对应的暂态位置信息。
作为一种示例,如果目标通道对应的暂态标志为第一值,则确定目标通道对应的暂态位置信息。如果目标通道对应的暂态标志为第二值,则确定目标通道不具有对应的暂态位置信息,或者,将目标通道对应的暂态位置信息设置为预设数值,比如设置为-1。
即,在目标通道对应的暂态标志为第二值的情况下,表明目标通道的信号不为暂态信号,此时,目标通道的暂态检测结果不包括暂态位置信息,或者直接将目标通道对应的暂态位置信息设置为预设数值,该预设数值用于指示该目标通道的信号不为暂态信号。也即是,暂态信号的暂态检测结果包括暂态标志和暂态位置信息,非暂态信号的暂态检测结果可以包括暂态标志,也可以包括暂态标志和暂态位置信息。
需要说明的是,在目标通道对应的暂态标志为第一值的情况下,确定目标通道对应的暂态位置信息的方式包括多种。作为一种示例,当前帧中目标通道的信号包括多个子帧的信号,从该多个子帧中选择暂态标志为第一值且子帧能量差的绝对值最高的子帧,将选择的子帧的序号确定为当前帧中目标通道对应的暂态位置信息。
例如,当前帧中目标通道对应的暂态标志为第一值,当前帧中目标通道的信号包括4个子帧的信号,i=0、1、2、3。第0个子帧的子帧能量差的绝对值为18,第1个子帧的子帧能量差的绝对值为21,第2个子帧的子帧能量差的绝对值为24,第3个子帧的子帧能量差的绝对值为35。假设,事先设置的第二能量差阈值为20,则第1个子帧的信号为暂态信号,第2个子帧的信号为暂态信号,以及第3个子帧的的信号为暂态信号。此时,确定第1个子帧、第2个子帧以及第3个子帧的暂态标志都为第一值,且这3个子帧中子帧能量差的绝对值最高的子帧为第3个子帧,则将第3个子帧的序号3确定为当前帧中目标通道对应的的暂态位置信息。
步骤602:基于该M个暂态检测结果,确定全局暂态检测结果。
在一些实施例中,全局暂态检测结果包括全局暂态标志。若该M个暂态标志中为第一值的暂态标志的数量大于或等于m,则确定全局暂态标志为第一值,m为大于0且小于M的正整数。或者,若该M个通道中满足第一预设条件且对应的暂态标志为第一值的通道数量大于或等于n,则确定全局暂态标志为第一值,n为大于0且小于M的正整数。
例如,当前帧的三维音频信号为3阶的HOA信号,该HOA信号的通道数为(3+1)2,即16。假设m为1,如果该16个暂态标志中为第一值的暂态标志的数量大于或等于1,则确定全局暂态标志为第一值。或者,第一预设条件包括属于FOA信号的通道,例如FOA信号的通道可以包括该HOA信号中的前4个通道,假设该M个通道中满足第一预设条件的通道为当前帧中的FOA信号所在的通道,n为1。如果该16个通道中属于FOA的通道中对应的暂态标志为第一值的通道数量大于或等于1,则确定全局暂态标志为第一值。
其中,m和n为事先设置的数值,且m和n还能够按照不同的需求来调整。在该三维音频信号为HOA信号的情况下,第一预设条件包括属于FOA信号的通道,该M个通道中满足第一预设条件的通道为当前帧的三维音频信号中的FOA信号所在的通道,该FOA信号为该HOA信号中的前4个通道的信号,当然,第一预设条件还可以为其他的条件。
在另一些实施例中,全局暂态检测结果还包括全局暂态位置信息。若该M个暂态标志中仅有一个暂态标志为第一值,则将该暂态标志为第一值的通道对应的暂态位置信息确定为全局暂态位置信息。若该M个暂态标志中存在至少两个暂态标志为第一值,则将该至少两个暂态标志对应的至少两个通道中暂态检测参数最大的通道对应的暂态位置信息确定为全局暂态位置信息,或者若该M个暂态标志中存在至少两个暂态标志为第一值,且两个通道对应的暂态位置信息之间的差距小于位置差阈值,则将该两个通道对应的暂态位置信息的平均值确定为全局暂态位置信息。位置差阈值为事先设置的,而且位置差阈值能够按照不同的需求来调整。
基于上文描述,通道对应的暂态检测参数为帧间能量差的绝对值或者子帧能量差的绝对值。在通道对应的暂态检测参数为帧间能量差的绝对值的情况下,一个通道对应一个帧间能量差的绝对值,此时,可以从该至少两个通道中选择对应的帧间能量差的绝对值最大的通道,进而将选择的通道对应的暂态位置信息确定为全局暂态位置信息。在通道对应的暂态检测参数为子帧能量差的绝对值的情况下,一个通道对应有多个子帧能量差的绝对值,此时,可以从该至少两个通道中选择对应的子帧能量差的绝对值最大的通道,进而将选择的通道对应的暂态位置信息确定为全局暂态位置信息。
例如,对于3阶的HOA信号来说,若该HOA信号的16个暂态标志中只有第3个通道对应的暂态标志为第一值,那么可以直接将第3个通道对应的暂态位置信息确定为全局暂态位置信息。
若该HOA信号的16个暂态标志中存在3个暂态标志为第一值,分别为通道1、通道2和通道3。通道1对应的暂态位置信息为1,通道1对应的帧间能量差的绝对值为22,通道2对应的暂态位置信息为2,通道2对应的帧间能量差的绝对值为23,通道3对应的暂态位置信息为3,通道3对应的帧间能量差的绝对值为28。该3个通道中帧间能量差的绝对值最大的通道为通道3,则将通道3对应的暂态位置信息3确定为全局暂态位置信息。
又例如,若该HOA信号的16个暂态标志中存在3个暂态标志为第一值,分别为通道1、通道2和通道3。通道1对应的暂态位置信息为1,通道1的信号包括三个子帧,这三个子帧对应的子帧能量差的绝对值分别为20、18、22,通道2对应的暂态位置信息为2,通道2的信号包括三个子帧,这三个子帧对应的子帧能量差的绝对值分别为20、23、25,通道3对应的暂态位置信息为3,通道3的信号包括三个子帧,这三个子帧对应的子帧能量差的绝对值为25、28、30。该3个通道中子帧能量差的绝对值最大的通道为通道3,则将通道3对应的暂态位置信息3确定为全局暂态位置信息。
若该HOA信号的16个暂态标志中存在3个暂态标志为第一值,分别为通道1、通道2和通道3。通道1对应的暂态位置信息为1,通道2对应的暂态位置信息为3,通道3对应的暂态位置信息为6。该3个通道中通道1和通道2对应的暂态位置信息之间的差距2小于事先设置的位置差阈值3,则将通道1和通道2对应的暂态位置信息的平均值2确定为全局暂态位置信息。
步骤603:基于全局暂态检测结果,将当前帧的时域三维音频信号转换为频域三维音频信号。
在一些实施例中,基于全局暂态检测结果确定目标编码参数,该目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型。基于该目标编码参数将当前帧的时域三维音频信号转换为频域三维音频信号。
作为一种示例,全局暂态检测结果包括全局暂态标志。基于全局暂态检测结果确定当前帧的窗函数类型的实现过程包括:若全局暂态标志为第一值,则将第一预设窗函数的类型确定为当前帧的窗函数类型。若全局暂态标志为第二值,则将第二预设窗函数的类型确定为当前帧的窗函数类型。其中,第一预设窗函数的窗长小于第二预设窗函数的窗长。
作为另一种示例,全局暂态检测结果包括全局暂态标志和全局暂态位置信息。基于全局暂态检测结果确定当前帧的窗函数类型的实现过程包括:若全局暂态标志为第一值,则基于全局暂态位置信息确定当前帧的窗函数类型。若全局暂态标志为第二值,则将第三预设窗函数的类型确定为当前帧的窗函数类型,或者,基于当前帧的上一帧的窗函数类型确定当前帧的窗函数类型。
其中,在全局暂态标志为第一值的情况下,基于全局暂态位置信息确定当前帧的窗函数类型的方式有多种。例如,基于全局暂态位置信息调整第四预设窗函数的类型,以使第四预设窗函数的中心位置对应于全局暂态发生位置,进而使全局暂态发生位置对应的窗函数的值最大。或者,从窗函数集合中选择与全局暂态发生位置对应的窗函数,进而将选择的窗函数的类型,确定为当前帧的窗函数类型。也即是,窗函数集合中存储有各个暂态发生位置对应的窗函数,这样,可以选择与全局暂态发生位置对应的窗函数。
此外,基于当前帧的上一帧的窗函数类型确定当前帧的窗函数类型的方法也包括多种,具体可以参考相关技术,本申请实施例对此不做详细阐述。
由于全局暂态检测结果可以仅包括全局暂态标志,也可以包括全局暂态标志和全局暂态位置信息,而且全局暂态位置信息可能是暂态标志为第一值的通道对应的暂态位置信息,也可能是预设数值。在全局暂态检测结果不同的情况下,确定当前帧的帧类型的方式不同,因此,接下来将分为以下三种情况分别进行说明:
第一种情况、全局暂态检测结果包括全局暂态标志。基于全局暂态检测结果确定当前帧的帧类型的实现过程包括:若全局暂态标志为第一值,则确定当前帧的帧类型为第一类型,第一类型用于指示当前帧包括多个短帧。若全局暂态标志为第二值,则确定当前帧的帧类型为第二类型,第二类型用于指示当前帧包括一个长帧。
第二种情况、全局暂态检测结果包括全局暂态标志和全局暂态位置信息。基于全局暂态检测结果确定当前帧的帧类型的实现过程包括:若全局暂态标志为第一值且全局暂态位置信息满足第二预设条件,则确定当前帧的帧类型为第三类型,第三类型用于指示当前帧包括多个超短帧。若全局暂态标志为第一值且全局暂态位置信息不满足第二预设条件,则确定当前帧的帧类型为第一类型,第一类型用于指示当前帧包括多个短帧。若全局暂态标志为第二值,则确定当前帧的帧类型为第二类型,第二类型用于指示当前帧包括一个长帧。超短帧的帧长小于短帧的帧长,短帧的帧长小于长帧的帧长。第二预设条件可以是全局暂态位置信息指示的暂态发生位置距离当前帧的起始位置小于超短帧的帧长或者全局暂态位置信息指示的暂态发生位置距离当前帧的结束位置小于超短帧的帧长。
第三种情况、全局暂态检测结果包括全局暂态位置信息。基于全局暂态检测结果确定当前帧的帧类型的实现过程包括:若全局暂态位置信息为预设数值,比如为-1,则确定当前帧的帧类型为第二类型,第二类型用于指示当前帧包括一个长帧。若全局暂态位置信息不为预设数值且满足第二预设条件,则确定当前帧的帧类型为第三类型,第三类型用于指示当前帧包括多个超短帧。若全局暂态位置信息不为预设数值且不满足第二预设条件,则确定当前帧的帧类型为第一类型,第一类型用于指示当前帧包括多个短帧。超短帧的帧长小于短帧的帧长,短帧的帧长小于长帧的帧长。第二预设条件可以是全局暂态位置信息指示的暂态发生位置距离当前帧的起始位置小于超短帧的帧长或者全局暂态位置信息指示的暂态发生位置距离当前帧的结束位置小于超短帧的帧长。
需要说明的是,当前帧的窗函数类型用于指示当前帧对应的窗函数的形状和长度,当前帧的窗函数用于对当前帧的时域三维音频信号进行加窗处理。当前帧的帧类型用于指示当前帧为超短帧、短帧还是长帧。其中,超短帧、短帧和长帧可以基于帧的时长来区分,具体的时长可以按照不同的需求来设置,本申请实施例对此不做限定。
将当前帧的时域三维音频信号转换为频域三维音频信号的方式可以是改进型离散余弦转换(modified discrete cosine transform,MDCT),也可以是改进型离散正弦转换(modified discrete sine transform,MDST),还可以是快速傅立叶转换(fast fouriertransform,FFT)。
基于上文描述,目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型。也即是,目标编码参数包括当前帧的窗函数类型,或者,目标编码参数包括当前帧的帧类型,又或者,目标编码参数包括当前帧的窗函数类型和帧类型。在目标编码参数包括的参数不同时,基于该目标编码参数将当前帧的时域三维音频信号转换为频域三维音频信号的过程有所不同,因此接下来将分别进行说明。
第一种情况,目标编码参数包括当前帧的窗函数类型。这种情况下,基于当前帧的窗函数类型所指示的窗函数,对当前帧的时域三维音频信号进行加窗处理。之后,将加窗处理后的三维音频信号转换为频域三维音频信号。
第二种情况,目标编码参数包括当前帧的帧类型。这种情况下,如果当前帧的帧类型为第一类型,表明当前帧包括多个短帧,此时,将当前帧包括的各个短帧的时域三维音频信号转换为频域三维音频信号。如果当前帧的帧类型为第二类型,表明当前帧包括一个长帧,此时,直接将当前帧包括的长帧的时域三维音频信号转换为频域三维音频信号。如果当前帧的帧类型为第三类型,表明当前帧包括多个超短帧,此时,将当前帧包括的各个超短帧的时域三维音频信号转换为频域三维音频信号。
第三种情况,目标编码参数包括当前帧的窗函数类型和帧类型。这种情况下,如果当前帧的帧类型为第一类型,表明当前帧包括多个短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的各个短帧的时域三维音频信号分别进行加窗处理,并将加窗处理后的各个短帧的时域三维音频信号转换为频域三维音频信号。如果当前帧的帧类型为第二类型,表明当前帧包括一个长短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的长帧的时域三维音频信号进行加窗处理,并将加窗处理后的长帧的时域三维音频信号转换为频域三维音频信号。如果当前帧的帧类型为第三类型,表明当前帧包括多个超短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的各个超短帧的时域三维音频信号分别进行加窗处理,并将加窗处理后的各个超短帧的时域三维音频信号转换为频域三维音频信号。
也就是说,在当前帧包括多个超短帧、短帧的情况下,将当前帧的时域三维音频信号转换为频域三维音频信号后,得到当前帧包括的各个超短帧、短帧的频域三维音频信号。在当前帧包括一个长帧的情况下,将当前帧的时域三维音频信号转换为频域三维音频信号后,得到当前帧包括的一个长帧的频域三维音频信号。
步骤604:基于全局暂态检测结果,对当前帧的频域三维音频信号进行空间编码,以得到空间编码参数和N个传输通道的频域信号,N为大于或等于1且小于或等于M的整数。
在一些实施例中,基于当前帧的帧类型,对当前帧的频域三维音频信号进行空间编码,以得到空间编码参数和N个传输通道的频域信号。
在基于当前帧的帧类型,对当前帧的频域三维音频信号进行空间编码时,如果当前帧的帧类型为第一类型,也即是,当前帧包括多个短帧,此时,将当前帧包括的多个短帧的频域三维音频信号进行交织,以得到一个长帧的频域三维音频信号,对交织后得到的长帧的频域三维音频信号进行空间编码。如果当前帧的帧类型为第二类型,也即是,当前帧包括一个长帧,此时,对这个长帧的频域三维音频信号进行空间编码。如果当前帧的帧类型为第三类型,也即是,当前帧包括多个超短帧,此时,将当前帧包括的多个超短帧的频域三维音频信号进行交织,以得到一个长帧的频域三维音频信号,对交织后得到的长帧的频域三维音频信号进行空间编码。
空间编码的方法可以是任何一种能够基于当前帧的频域三维音频信号,得到空间编码参数和N个传输通道的频域信号的方法,比如,可以采取匹配投影的空间编码方法,本申请实施例对空间编码方法不作限定。
空间编码参数是指对当前帧的频域三维音频信号进行空间编码的过程中所确定的参数,包括边信息、比特预分配边信息等等。N个传输通道的频域信号可以包括一个或多个通道的虚拟扬声器信号,以及一个或多个通道的残差信号。此外,当编码比特数不足时,N个传输通道的频域信号还可以仅包括一个或多个通道的虚拟扬声器信号。
步骤605:基于全局暂态检测结果,对该N个传输通道的频域信号进行编码,以得到频域信号编码结果。
在一些实施例中,基于当前帧的帧类型,对该N个传输通道的频域信号进行编码。
作为一种示例,对该N个传输通道的频域信号进行编码的实现过程包括:基于当前帧的帧类型,对该N个传输通道的频域信号进行噪声整形处理。对噪声整形处理后的N个传输通道的频域信号进行传输通道下混处理,得到下混处理后的信号。对下混处理后的信号的低频部分进行量化与编码处理,将编码结果写入码流。对下混处理后的信号的高频部分进行带宽扩展与编码处理,将编码结果写入码流。
需要说明的是,基于当前帧的帧类型进行噪声整形处理的方式可以参考相关技术,本申请实施例对此不做详细阐述。其中,噪声整形处理包括时域噪声整形(temporalnoise shaping,TNS)处理以及频域噪声整形(frequency domain noise shaping,FDNS)处理。
其中,对噪声整形处理后的N个传输通道的频域信号进行传输通道下混处理时,可以按照预先设定的准则对噪声整形处理后的N个传输通道进行配对,也可以根据信号相关度对噪声整形处理后的N个传输通道的频域信号进行配对。然后,基于配对后的两路频域信号进行中间边(mid side,MS)下混处理。
例如,如果该N个传输通道中包括2路虚拟扬声器信号以及4路残差信号,可以按照预先设定的准则将2路虚拟扬声器信号组成一对,进行下混处理。还可以确定4路残差信号中每2路残差信号间的相关度,选择相关度高的2路残差信号组成一对,其余2路残差信号组成一对,分别进行下混处理。
需要说明的是,对配对后的两路频域信号进行下混处理,其下混处理后的结果可能是一路频域信号,也可能是两路频域信号,具体取决于编码的处理过程。
其中,信号的低频部分和高频部分可以按照多种方式来划分。比如,以2000Hz作为分界点,将下混处理后信号频率小于2000Hz的部分作为信号的低频部分,将下混处理后信号频率大于2000Hz的部分作为信号的高频部分。又比如,以5000Hz作为分界点,将下混处理后信号频率小于5000Hz的部分作为信号的低频部分,将下混处理后信号频率大于5000Hz的部分作为信号的高频部分。
步骤606:将空间编码参数进行编码,以得到空间编码参数编码结果,将空间编码参数编码结果和频域信号编码结果写入码流。
可选地,还可以将全局暂态检测结果进行编码,以得到全局暂态检测结果编码结果,将全局暂态检测结果编码结果写入码流。或者,将目标编码参数进行编码,以得到目标编码参数编码结果,将目标编码参数编码结果写入码流。
在本申请实施例中,可以先对当前帧的时域三维音频信号包括的M个通道的信号进行暂态检测,从而确定全局暂态检测结果。之后,基于全局暂态检测结果,依次进行音频信号的时频变换、空间编码以及对各个传输通道的频域信号进行编码,尤其对空间编码后得到的各个传输通道的频域信号进行编码时,各个传输通道的暂态检测结果复用全局暂态检测结果,不需要将各个传输通道的频域信号转换至时域来确定各个传输通道对应的暂态检测结果,进而就不需要将三维音频信号在时域与频域之间进行多次变换,从而能够降低编码复杂度,提高编码效率。而且,本申请实施例不用将各个传输通道的暂态检测结果进行编码,只需将全局暂态检测结果编入码流,这样,能够降低编码比特数。
请参考图7和图8,图7和图8均是本申请实施例提供的一种示例性编码方法的框图。图7和图8主要是对图6所示的编码方法进行示例性解释。在图7中,对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到该M个通道对应的M个暂态检测结果。基于该M个暂态检测结果,确定全局暂态检测结果,并将全局暂态检测结果进行编码,以得到全局暂态检测结果编码结果,将全局暂态检测结果编码结果写入码流。基于全局暂态检测结果,将当前帧的时域三维音频信号转换为频域三维音频信号。基于全局暂态检测结果,对当前帧的频域三维音频信号进行空间编码,得到空间编码参数和N个传输通道的频域信号,并将空间编码参数进行编码,以得到空间编码参数编码结果,将空间编码参数编码结果和频域信号编码结果写入码流。基于全局暂态检测结果,对该N个传输通道的频域信号进行编码。进一步地,在图8中,对当前帧的频域三维音频信号进行空间编码,得到空间编码参数和N个传输通道的频域信号之后,将空间编码参数进行编码,以得到空间编码参数编码结果,将空间编码参数编码结果和频域信号编码结果写入码流。然后,基于全局暂态检测结果,对该N个传输通道的频域信号进行噪声整形处理、传输通道下混处理、量化与编码处理、带宽扩展处理,并将带宽扩展处理后的信号的编码结果写入码流。
基于上述步骤606中的描述,编码端设备可能会将全局暂态检测结果编入码流,也可能不将全局暂态检测结果编入码流。而且,编码端设备也可能将目标编码参数编入码流,也可能不将目标编码参数编入码流。在编码端设备将全局暂态检测结果编入码流的情况下,解码端设备可以按照下述图9所示的方法进行解码。在编码端设备将目标编码参数编入码流的情况下,解码端设备可以从码流中解析出目标编码参数,进而基于目标编码参数包括的当前帧的帧类型进行解码,具体实现过程与图9中的过程类似。当然,编码端设备可能不将全局暂态检测结果编入码流,也不将目标编码参数编入码流,这种情况下,对三维音频信号的解码过程可以参考相关技术,本申请实施例对此不做阐述。
请参考图9,图9是本申请实施例提供的第一种解码方法的流程图,该方法应用于解码端,包括如下步骤。
步骤901:从码流中解析出全局暂态检测结果和空间编码参数。
步骤902:基于全局暂态检测结果和该码流进行解码,以得到N个传输通道的频域信号。
在一些实施例中,基于全局暂态检测结果确定当前帧的帧类型。基于当前帧的帧类型和该码流进行解码,以得到该N个传输通道的频域信号。
其中,基于全局暂态检测结果确定当前帧的帧类型的实现方式可以参考上述步骤603中的相关描述,此处不再赘述。基于当前帧的帧类型和该码流进行解码的实现方式可以参考相关技术,本申请实施例不进行详细阐述。
步骤903:基于全局暂态检测结果和空间编码参数,对该N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号。
在一些实施例中,基于当前帧的帧类型和空间编码参数,对该N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号,当前帧的帧类型基于全局暂态检测结果确定得到。也即是,基于全局暂态检测结果确定当前帧的帧类型,然后,基于当前帧的帧类型和空间编码参数,对该N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号。
其中,基于当前帧的帧类型和空间编码参数,对该N个传输通道的频域信号进行空间解码的实现过程可以参考相关技术,本申请实施例对此不进行详细阐述。
步骤904:基于全局暂态检测结果和重建的频域三维音频信号,确定重建的时域三维音频信号。
在一些实施例中,基于全局暂态检测结果确定目标编码参数,该目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型。基于该目标编码参数,将重建的频域三维音频信号转换为重建的时域三维音频信号。
其中,基于全局暂态检测结果确定目标编码参数的实现方式可以参考上述步骤603中的相关描述,此处不再赘述。
基于上文描述,目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型。也即是,目标编码参数包括当前帧的窗函数类型,或者,目标编码参数包括当前帧的帧类型,又或者,目标编码参数包括当前帧的窗函数类型和帧类型。在目标编码参数包括的参数不同时,基于该目标编码参数将重建的频域三维音频信号转换为重建的时域三维音频信号的过程有所不同,因此接下来将分别进行说明。
第一种情况,目标编码参数包括当前帧的窗函数类型。这种情况下,基于当前帧的窗函数类型所指示的窗函数,对重建的频域三维音频信号进行去加窗处理。之后,将去加窗处理后的频域三维音频信号转换为重建的时域三维音频信号。
其中,去加窗处理也称为加窗及叠接相加处理。
第二种情况,目标编码参数包括当前帧的帧类型。这种情况下,如果当前帧的帧类型为第一类型,表明当前帧包括多个短帧,此时,将各个短帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。如果当前帧的帧类型为第二类型,表明当前帧包括一个长帧,此时,直接将当前帧包括的长帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。如果当前帧的帧类型为第三类型,表明当前帧包括多个超短帧,此时,将各个超短帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。
第三种情况,目标编码参数包括当前帧的窗函数类型和帧类型。这种情况下,如果当前帧的帧类型为第一类型,表明当前帧包括多个短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的各个短帧的频域三维音频信号分别进行去加窗处理,并将去加窗处理后的各个短帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。如果当前帧的帧类型为第二类型,表明当前帧包括一个长短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的长帧的重建频域三维音频信号进行去加窗处理,并将去加窗处理后的长帧的频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。如果当前帧的帧类型为第三类型,表明当前帧包括多个超短帧,此时,基于当前帧的窗函数类型所指示的窗函数,对当前帧包括的各个超短帧的频域三维音频信号分别进行去加窗处理,并将去加窗处理后的各个超短帧的重建频域三维音频信号转换为时域三维音频信号,以得到重建的时域三维音频信号。
在本申请实施例中,解码端从码流中解析出全局暂态检测结果和空间编码参数,这样可以基于全局暂态检测结果和空间编码参数,重建时域三维音频信号,而无需从码流中解析出各个传输通道的暂态检测结果,从而能够降低解码复杂度,提高解码效率。而且,在不将目标编码参数编入码流的情况下,可以直接基于全局暂态检测结果确定目标编码参数,从而实现时域三维音频信号的重建。
请参考图10,图10是本申请实施例提供的一种示例性解码方法的框图。图10主要是对图9所示的解码方法进行示例性解释。在图10中,从码流中解析出全局暂态检测结果和空间编码参数。基于全局暂态检测结果和该码流进行解码,以得到N个传输通道的频域信号。基于全局暂态检测结果和空间编码参数,对该N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号。基于全局暂态检测结果和该重建的频域三维音频信号,通过去加窗处理和时频逆变换,确定重建的时域三维音频信号。
请参考图11,图11是本申请实施例提供的第二种编码方法的流程图。该编码方法应用于编码端设备,包括如下步骤。
步骤1101:对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到该M个通道对应的M个暂态检测结果,M为大于1的整数。
其中,确定该M个通道对应的M个暂态检测结果的实现方式可以参考步骤601中的相关描述,此处不再赘述。
步骤1102:基于该M个暂态检测结果,确定全局暂态检测结果。
其中,基于该M个暂态检测结果,确定全局暂态位置信息的实现方式可以参考步骤602中的相关描述,此处不再赘述。
步骤1103:基于全局暂态检测结果,将当前帧的时域三维音频信号转换为频域三维音频信号。
其中,基于全局暂态检测结果,将当前帧的时域三维音频信号转换为频域三维音频信号的方式可以参考步骤603中的相关描述,此处不再赘述。
步骤1104:基于全局暂态检测结果,对当前帧的频域三维音频信号进行空间编码,以得到空间编码参数和N个传输通道的频域信号,N为大于或等于1且小于或等于M的整数。
其中,基于全局暂态检测结果对当前帧的频域三维音频信号进行空间编码的实现方式可以参考步骤604中的相关描述,此处不再赘述。
步骤1105:基于M个暂态检测结果,确定该N个传输通道对应的N个暂态检测结果。
在一些实施例中,基于该M个暂态标志,按照第一预设规则确定该N个传输通道包括一个或多个通道的虚拟扬声器信号的暂态标志。基于该M个暂态标志,按照第二预设规则确定该N个传输通道包括一个或多个通道的残差信号的暂态标志。
作为一种示例,第一预设规则包括:若该M个暂态标志中为第一值的数量大于或等于P,则该N个传输通道包括一个或多个通道的虚拟扬声器信号暂态标志均为第一值。第二预设规则包括:若该M个暂态标志中为第一值的数量大于或等于Q,则该N个传输通道包括一个或多个通道的残差信号暂态标志均为第一值。
其中,P和Q均为小于M的正整数。P和Q为事先设置的数值,且P和Q还能够按照不同的需求来调整。可选地,由于虚拟扬声器信号用于记录真实三维音频信号,相对于残差信号比较重要,所以P小于Q。
作为另一种示例,第一预设规则包括:若该M个暂态标志中为第一值的数量大于或等于P,则该N个传输通道包括一个或多个通道的虚拟扬声器信号对应的暂态标志均为第一值。第二预设规则包括:若该M个通道中满足第一预设条件且对应的暂态标志为第一值的通道数量大于或等于R,则该N个传输通道包括一个或多个通道的残差信号对应的暂态标志均为第一值。
其中,P和R均为小于M的正整数。P和R为事先设置的数值,且P和R还能够按照不同的需求来调整。在该三维音频信号为HOA信号的情况下,第一预设条件包括属于FOA信号的通道,该M个通道中满足第一预设条件的通道为当前帧的三维音频信号中的FOA信号所在的通道,该FOA信号为该HOA信号中的前4个通道的信号,当然,第一预设条件还可以为其他的条件。
在另一些实施例中,还可以基于该M个暂态标志,按照该M个暂态标志与该N个传输通道之间的映射关系,确定该N个暂态标志。其中,映射关系是事先确定得到的。
比如,该N个传输通道包括的某个传输通道映射到该M个通道中的某多个通道,如果该M个暂态标志中存在至少一个暂态标志为第一值,那么该N个传输通道中的这个传输通道的暂态标志为第一值。
需要说明的是,步骤1105可以在步骤1101之后,步骤1106之前的任何时机执行,本申请实施例对步骤1105的执行时机不作限定。
步骤1106:基于该N个暂态检测结果,对该N个传输通道的频域信号进行编码,以得到频域信号编码结果。
在一些实施例中,基于该N个暂态检测结果,确定该N个传输通道中每个传输通道对应的帧类型。基于该N个传输通道中每个传输通道对应的帧类型,对该N个传输通道中对应传输通道的频域信号进行编码。
由于确定该N个传输通道中每个传输通道对应的帧类型的实现方式相同,因此,接下来以其中一个传输通道为例进行说明。为了便于描述,将该传输通道称为目标传输通道。
基于目标传输通道对应的暂态检测结果确定目标传输通道对应的帧类型的实现过程包括:若目标传输通道对应的暂态标志为第一值,则确定目标传输通道对应的帧类型为第一类型,第一类型用于指示目标传输通道的信号包括多个短帧。若目标传输通道对应的暂态标志为第二值,则确定目标传输通道对应的帧类型为第二类型,第二类型用于指示目标传输通道的信号包括一个长帧。
需要说明的是,当前帧的帧类型用于指示当前帧为短帧还是长帧。其中,短帧和长帧可以基于帧的时长来区分,具体的时长可以按照不同的需求来设置,本申请实施例对此不做限定。
当确定出各个传输通道对应的帧类型之后,即可基于各个传输通道对应的帧类型,对各个传输通道的频域信号进行噪声整形处理。之后,对噪声整形处理后的N个传输通道的频域信号进行传输通道下混处理,得到下混处理后的信号。对下混处理后的信号的低频部分进行量化与编码处理,将编码结果写入码流。对下混处理后的信号的高频部分进行带宽扩展与编码处理,将编码结果写入码流。
其中,关于噪声整形处理、传输通道下混处理、低频部分的量化与编码处理、以及带宽扩展与编码处理的相关内容可以参考步骤605中的相关描述,此处不再赘述。
步骤1107:将空间编码参数和该N个暂态检测结果进行编码,以得到空间编码参数编码结果和N个暂态检测结果编码结果,将空间编码参数编码结果和N个暂态检测结果编码结果写入码流。
可选地,还可以将全局暂态检测结果进行编码,以得到全局暂态检测结果编码结果,将全局暂态检测结果编码结果写入码流。或者,将目标编码参数进行编码,以得到目标编码参数编码结果,将目标编码参数编码结果写入码流。
在本申请实施例中,基于三维音频信号包括的M个通道对应的M个暂态检测结果,确定各个传输通道包括的虚拟扬声器信号以及残差信号对应的暂态检测结果。这样可以保证对各个传输通道的频域信号进行编码时,提高编码精确度。而且,各个传输通道对应的暂态检测结果是基于M个暂态检测结果确定的,不需要将各个传输通道的频域信号转换至时域来确定各个传输通道对应的暂态检测结果,进而就不需要将三维音频信号在时域与频域之间进行多次变换,从而能够降低编码复杂度,提高编码效率。
请参考图12和图13,图12和图13是本申请实施例提供的另一种示例性编码方法的框图。图12和图13主要是对图11所示的编码方法进行示例性解释。在图12中,对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到该M个通道对应的M个暂态检测结果。基于该M个暂态检测结果,确定全局暂态检测结果,并将全局暂态检测结果进行编码,以得到全局暂态检测结果编码结果,将全局暂态检测结果编码结果写入码流。基于全局暂态检测结果将当前帧的时域三维音频信号转换为频域三维音频信号。基于全局暂态检测结果,对当前帧的频域三维音频信号进行空间编码,得到空间编码参数和该N个传输通道的频域信号,并将空间编码参数进行编码,以得到空间编码参数编码结果,将空间编码参数编码结果写入码流。基于该M个暂态检测结果,确定该N个传输通道对应的N个暂态检测结果,并将该N个暂态检测结果进行编码,以得到N个暂态检测结果编码结果,将N个暂态检测结果编码结果写入码流。基于该N个暂态检测结果,对该N个传输通道的频域信号进行编码。进一步地,在图13中,确定出该N个暂态检测结果之后,基于该N个暂态检测结果,对该N个传输通道的频域信号进行噪声整形处理。然后对噪声整形处理的各个传输通道的频域信号进行传输通道下混处理、量化与编码处理、带宽扩展处理,并将带宽扩展处理后的信号的编码结果写入码流。
基于上述步骤1107中的描述,编码端设备可能会将全局暂态检测结果编入码流,也可能不将全局暂态检测结果编入码流。而且,编码端设备也可能将目标编码参数编入码流,也可能不将目标编码参数编入码流。在编码端设备将全局暂态检测结果编入码流的情况下,解码端设备可以按照下述图14所示的方法进行解码。在编码端设备将目标编码参数编入码流的情况下,解码端设备可以从码流中解析出目标编码参数,进而基于目标编码参数包括的当前帧的帧类型进行解码,具体实现过程与图14中的过程类似。当然,编码端设备可能不将全局暂态检测结果编入码流,也不将目标编码参数编入码流,这种情况下,对三维音频信号的解码过程可以参考相关技术,本申请实施例对此不做阐述。
请参考图14,图14是本申请实施例提供的第二种解码方法的流程图,该方法应用于解码端,包括如下步骤。
步骤1401:从码流中解析出全局暂态检测结果、N个传输通道对应的N个暂态检测结果以及空间编码参数。
步骤1402:基于该N个暂态检测结果和该码流进行解码,以得到该N个传输通道的频域信号。
在一些实施例中,基于N个暂态检测结果确定各个传输通道对应的帧类型。基于各个传输通道对应的帧类型和该码流进行解码,以得到该N个传输通道的频域信号。
其中,基于N个暂态检测结果确定各个传输通道对应的帧类型的实现方式可以参考上述步骤1106中的相关描述,此处不再赘述。基于各个传输通道对应的帧类型和该码流进行解码的实现方式可以参考相关技术,本申请实施例不进行详细阐述。
步骤1403:基于该N个传输通道的频域信号和空间编码参数,对该N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号。
在一些实施例中,基于N个暂态检测结果确定各个传输通道对应的帧类型。基于各个传输通道对应的帧类型和空间编码参数,对该N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号。
其中,基于各个传输通道对应的帧类型和空间编码参数,对该N个传输通道的频域信号进行空间解码的实现过程可以参考相关技术,本申请实施例对此不进行详细阐述。
步骤1404:基于全局暂态检测结果和重建的频域三维音频信号,确定重建的时域三维音频信号。
其中,基于全局暂态检测结果和重建的频域三维音频信号,确定重建的时域三维音频信号的实现方式可以参考步骤904中的相关描述,此处不再赘述。
在本申请实施例中,解码端从码流中解析出全局暂态检测结果、各个传输通道对应的暂态检测结果以及空间编码参数。这样,基于各个传输通道对应的暂态检测结果进行解码时,可以精确得到各个传输通道的频域信号。而且,在不将目标编码参数编入码流的情况下,可以直接基于全局暂态检测结果确定目标编码参数,从而实现时域三维音频信号的重建。
请参考图15,图15是本申请实施例提供的另一种示例性解码方法的框图。图15主要是对图14所示的解码方法进行示例性解释。在图15中,从码流中解析出全局暂态检测结果、N个传输通道对应的N个暂态检测结果以及空间编码参数。基于该N个暂态检测结果和该码流进行解码,以得到该N个传输通道的频域信号。基于该N个传输通道的频域信号和该空间编码参数,对该N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号。基于该全局暂态检测结果和该重建的频域三维音频信号,确定重建的时域三维音频信号。
图16是本申请实施例提供的一种编码装置的结构示意图,该编码装置可以由软件、硬件或者两者的结合实现成为编码端设备的部分或者全部,该编码端设备可以为图1所示的源装置。参见图16,该装置包括:暂态检测模块1601、确定模块1602、转换模块1603和空间编码模块1604、第一编码模块1605、第二编码模块1606、第一写入模块1607。
暂态检测模块1601,用于对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到M个通道对应的M个暂态检测结果,M为大于1的整数。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
确定模块1602,用于基于M个暂态检测结果,确定全局暂态检测结果。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
转换模块1603,用于基于全局暂态检测结果,将时域三维音频信号转换为频域三维音频信号。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
空间编码模块1604,用于基于全局暂态检测结果,对频域三维音频信号进行空间编码,以得到空间编码参数和N个传输通道的频域信号,N为大于或等于1且小于或等于M的整数。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
第一编码模块1605,用于基于全局暂态检测结果,对N个传输通道的频域信号进行编码,以得到频域信号编码结果。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
第二编码模块1606,用于将空间编码参数进行编码,以得到空间编码参数编码结果。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
第一写入模块1607,用于将空间编码参数编码结果和频域信号编码结果写入码流。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
可选地,转换模块1603包括:
确定单元,用于基于全局暂态检测结果确定目标编码参数,目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型;
转换单元,用于基于目标编码参数将时域三维音频信号转换为频域三维音频信号。
可选地,全局暂态检测结果包括全局暂态标志,目标编码参数包括当前帧的窗函数类型;
确定单元具体用于:
若全局暂态标志为第一值,则将第一预设窗函数的类型确定为当前帧的窗函数类型;
若全局暂态标志为第二值,则将第二预设窗函数的类型确定为当前帧的窗函数类型;
其中,第一预设窗函数的窗长小于第二预设窗函数的窗长。
可选地,全局暂态检测结果包括全局暂态标志和全局暂态位置信息,目标编码参数包括当前帧的窗函数类型;
确定单元具体用于:
若全局暂态标志为第一值,则基于全局暂态位置信息确定当前帧的窗函数类型。
可选地,该装置还包括:
第三编码模块,用于将目标编码参数进行编码,以得到目标编码参数编码结果;
第二写入模块,用于将目标编码参数编码结果写入码流。
可选地,空间编码模块1604具体用于:
基于帧类型,对频域三维音频信号进行空间编码。
可选地,第一编码模块1605具体用于:
基于当前帧的帧类型,对N个传输通道的频域信号进行编码。
可选地,暂态检测结果包括暂态标志,全局暂态检测结果包括全局暂态标志,暂态标志用于指示对应通道的信号是否为暂态信号;
确定模块1602具体用于:
若M个暂态标志中为第一值的暂态标志的数量大于或等于m,则确定全局暂态标志为第一值,m为大于0且小于M的正整数;或者
若M个通道中满足第一预设条件且对应的暂态标志为第一值的通道数量大于或等于n,则确定全局暂态标志为第一值,n为大于0且小于M的正整数。
可选地,暂态检测结果还包括暂态位置信息,全局暂态检测结果还包括全局暂态位置信息,暂态位置信息用于指示对应通道的信号中暂态发生的位置;
确定模块1602具体用于:
若M个暂态标志中仅有一个暂态标志为第一值,则将暂态标志为第一值的通道对应的暂态位置信息确定为全局暂态位置信息;
若M个暂态标志中存在至少两个暂态标志为第一值,则将至少两个暂态标志对应的至少两个通道中暂态检测参数最大的通道对应的暂态位置信息确定为全局暂态位置信息。
可选地,该装置还包括:
第四编码模块,用于将全局暂态检测结果进行编码,以得到全局暂态检测结果编码结果;
第三写入模块,用于将全局暂态检测结果编码结果写入码流。
在本申请实施例中,可以先对当前帧的时域三维音频信号包括的M个通道的信号进行暂态检测,从而确定全局暂态检测结果。之后,基于全局暂态检测结果,依次进行音频信号的时频变换、空间编码以及对各个传输通道的频域信号进行编码,尤其对空间编码后得到的各个传输通道的频域信号进行编码时,各个传输通道的暂态检测结果复用全局暂态检测结果,不需要将各个传输通道的频域信号转换至时域来确定各个传输通道对应的暂态检测结果,进而就不需要将三维音频信号在时域与频域之间进行多次变换,从而能够降低编码复杂度,提高编码效率。而且,本申请实施例不用将各个传输通道的暂态检测结果进行编码,只需将全局暂态检测结果编入码流,这样,能够降低编码比特数。
需要说明的是:上述实施例提供的编码装置在进行编码时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以基于需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的编码装置与编码方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图17是本申请实施例提供的一种解码装置的结构示意图,该解码装置可以由软件、硬件或者两者的结合实现成为解码端设备的部分或者全部,该解码端设备可以为图1所示的目的地装置。参见图17,该装置包括:解析模块1701、解码模块1702、空间解码模块1703和确定模块1704。
解析模块1701,用于从码流中解析出全局暂态检测结果和空间编码参数。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
解码模块1702,用于基于全局暂态检测结果和码流进行解码,以得到N个传输通道的频域信号。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
空间解码模块1703,用于基于全局暂态检测结果和空间编码参数,对N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
确定模块1704,用于基于全局暂态检测结果和重建的频域三维音频信号,确定重建的时域三维音频信号。详细实现过程参考上述各个实施例中对应的内容,此处不再赘述。
可选地,确定模块1704包括:
确定单元,用于基于全局暂态检测结果确定目标编码参数,目标编码参数包括当前帧的窗函数类型和/或当前帧的帧类型;
转换单元,用于基于目标编码参数,将重建的频域三维音频信号转换为重建的时域三维音频信号。
可选地,全局暂态检测结果包括全局暂态标志,目标编码参数包括当前帧的窗函数类型;
确定单元具体用于:
若全局暂态标志为第一值,则将第一预设窗函数的类型确定为当前帧的窗函数类型;
若全局暂态标志为第二值,则将第二预设窗函数的类型确定为当前帧的窗函数类型;
其中,第一预设窗函数的窗长小于第二预设窗函数的窗长。
可选地,全局暂态检测结果包括全局暂态标志和全局暂态位置信息,目标编码参数包括当前帧的窗函数类型;
确定单元具体用于:
若全局暂态标志为第一值,则基于全局暂态位置信息确定当前帧的窗函数类型。
在本申请实施例中,解码端从码流中解析出全局暂态检测结果和空间编码参数,这样可以基于全局暂态检测结果和空间编码参数,重建时域三维音频信号,而无需从码流中解析出各个传输通道的暂态检测结果,从而能够降低解码复杂度,提高解码效率。而且,在不将目标编码参数编入码流的情况下,可以直接基于全局暂态检测结果确定目标编码参数,从而实现时域三维音频信号的重建。
需要说明的是:上述实施例提供的解码装置在进行解码时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以基于需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的解码装置与解码方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图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 (33)
1.一种编码方法,其特征在于,所述方法包括:
对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到所述M个通道对应的M个暂态检测结果,所述M为大于1的整数;
基于所述M个暂态检测结果,确定全局暂态检测结果;
基于所述全局暂态检测结果,将所述时域三维音频信号转换为频域三维音频信号;
基于所述全局暂态检测结果,对所述频域三维音频信号进行空间编码,以得到空间编码参数和N个传输通道的频域信号,所述N为大于或等于1且小于或等于所述M的整数;
基于所述全局暂态检测结果,对所述N个传输通道的频域信号进行编码,以得到频域信号编码结果;
将所述空间编码参数进行编码,以得到空间编码参数编码结果;
将所述空间编码参数编码结果和所述频域信号编码结果写入码流。
2.如权利要求1所述的方法,其特征在于,所述基于所述全局暂态检测结果,将所述时域三维音频信号转换为频域三维音频信号,包括:
基于所述全局暂态检测结果确定目标编码参数,所述目标编码参数包括所述当前帧的窗函数类型和/或所述当前帧的帧类型;
基于所述目标编码参数将所述时域三维音频信号转换为所述频域三维音频信号。
3.如权利要求2所述的方法,其特征在于,所述全局暂态检测结果包括全局暂态标志,所述目标编码参数包括所述当前帧的窗函数类型;
所述基于所述全局暂态检测结果确定目标编码参数,包括:
若所述全局暂态标志为第一值,则将第一预设窗函数的类型确定为所述当前帧的窗函数类型;
若所述全局暂态标志为第二值,则将第二预设窗函数的类型确定为所述当前帧的窗函数类型;
其中,所述第一预设窗函数的窗长小于所述第二预设窗函数的窗长。
4.如权利要求2所述的方法,其特征在于,所述全局暂态检测结果包括全局暂态标志和全局暂态位置信息,所述目标编码参数包括所述当前帧的窗函数类型;
所述基于所述全局暂态检测结果确定目标编码参数,包括:
若所述全局暂态标志为第一值,则基于所述全局暂态位置信息确定所述当前帧的窗函数类型。
5.如权利要求2-4任一所述的方法,其特征在于,所述方法还包括:
将所述目标编码参数进行编码,以得到目标编码参数编码结果;
将所述目标编码参数编码结果写入所述码流。
6.如权利要求2-5任一所述的方法,其特征在于,所述基于所述全局暂态检测结果,对所述频域三维音频信号进行空间编码,包括:
基于所述帧类型,对所述频域三维音频信号进行空间编码。
7.如权利要求2-6任一所述的方法,其特征在于,所述基于所述全局暂态检测结果,对所述N个传输通道的频域信号进行编码,包括:
基于所述当前帧的帧类型,对所述N个传输通道的频域信号进行编码。
8.如权利要求1-7任一所述的方法,其特征在于,所述暂态检测结果包括暂态标志,所述全局暂态检测结果包括全局暂态标志,所述暂态标志用于指示对应通道的信号是否为暂态信号;
所述基于所述M个暂态检测结果,确定全局暂态检测结果,包括:
若所述M个暂态标志中为第一值的暂态标志的数量大于或等于m,则确定所述全局暂态标志为第一值,所述m为大于0且小于所述M的正整数;或者
若所述M个通道中满足第一预设条件且对应的暂态标志为第一值的通道数量大于或等于n,则确定所述全局暂态标志为第一值,所述n为大于0且小于所述M的正整数。
9.如权利要求8所述的方法,其特征在于,所述暂态检测结果还包括暂态位置信息,所述全局暂态检测结果还包括全局暂态位置信息,所述暂态位置信息用于指示对应通道的信号中暂态发生的位置;
所述基于所述M个暂态检测结果,确定全局暂态检测结果,包括:
若所述M个暂态标志中仅有一个暂态标志为第一值,则将所述暂态标志为第一值的通道对应的暂态位置信息确定为所述全局暂态位置信息;
若所述M个暂态标志中存在至少两个暂态标志为第一值,则将所述至少两个暂态标志对应的至少两个通道中暂态检测参数最大的通道对应的暂态位置信息确定为所述全局暂态位置信息。
10.如权利要求1-9任一所述的方法,其特征在于,所述方法还包括:
将所述全局暂态检测结果进行编码,以得到全局暂态检测结果编码结果;
将所述全局暂态检测结果编码结果写入所述码流。
11.一种解码方法,其特征在于,所述方法包括:
从码流中解析出全局暂态检测结果和空间编码参数;
基于所述全局暂态检测结果和所述码流进行解码,以得到N个传输通道的频域信号;
基于所述全局暂态检测结果和所述空间编码参数,对所述N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号;
基于所述全局暂态检测结果和所述重建的频域三维音频信号,确定重建的时域三维音频信号。
12.如权利要求11所述的方法,其特征在于,所述基于所述全局暂态检测结果和所述重建的频域三维音频信号,确定重建的时域三维音频信号,包括:
基于所述全局暂态检测结果确定目标编码参数,所述目标编码参数包括当前帧的窗函数类型和/或所述当前帧的帧类型;
基于所述目标编码参数,将所述重建的频域三维音频信号转换为所述重建的时域三维音频信号。
13.如权利要求12所述的方法,其特征在于,所述全局暂态检测结果包括全局暂态标志,所述目标编码参数包括所述当前帧的窗函数类型;
所述基于所述全局暂态检测结果确定目标编码参数,包括:
若所述全局暂态标志为第一值,则将第一预设窗函数的类型确定为所述当前帧的窗函数类型;
若所述全局暂态标志为第二值,则将第二预设窗函数的类型确定为所述当前帧的窗函数类型;
其中,所述第一预设窗函数的窗长小于所述第二预设窗函数的窗长。
14.如权利要求12所述的方法,其特征在于,所述全局暂态检测结果包括全局暂态标志和全局暂态位置信息,所述目标编码参数包括所述当前帧的窗函数类型;
所述基于所述全局暂态检测结果确定目标编码参数,包括:
若所述全局暂态标志为第一值,则基于所述全局暂态位置信息确定所述当前帧的窗函数类型。
15.一种编码装置,其特征在于,所述装置包括:
暂态检测模块,用于对当前帧的时域三维音频信号包括的M个通道的信号分别进行暂态检测,以得到所述M个通道对应的M个暂态检测结果,所述M为大于1的整数;
确定模块,用于基于所述M个暂态检测结果,确定全局暂态检测结果;
转换模块,用于基于所述全局暂态检测结果,将所述时域三维音频信号转换为频域三维音频信号;
空间编码模块,用于基于所述全局暂态检测结果,对所述频域三维音频信号进行空间编码,以得到空间编码参数和N个传输通道的频域信号,所述N为大于或等于1且小于或等于所述M的整数;
第一编码模块,用于基于所述全局暂态检测结果,对所述N个传输通道的频域信号进行编码,以得到频域信号编码结果;
第二编码模块,用于将所述空间编码参数进行编码,以得到空间编码参数编码结果;
第一写入模块,用于将所述空间编码参数编码结果和所述频域信号编码结果写入码流。
16.如权利要求15所述的装置,其特征在于,所述转换模块包括:
确定单元,用于基于所述全局暂态检测结果确定目标编码参数,所述目标编码参数包括所述当前帧的窗函数类型和/或所述当前帧的帧类型;
转换单元,用于基于所述目标编码参数将所述时域三维音频信号转换为所述频域三维音频信号。
17.如权利要求16所述的装置,其特征在于,所述全局暂态检测结果包括全局暂态标志,所述目标编码参数包括所述当前帧的窗函数类型;
所述确定单元具体用于:
若所述全局暂态标志为第一值,则将第一预设窗函数的类型确定为所述当前帧的窗函数类型;
若所述全局暂态标志为第二值,则将第二预设窗函数的类型确定为所述当前帧的窗函数类型;
其中,所述第一预设窗函数的窗长小于所述第二预设窗函数的窗长。
18.如权利要求16所述的装置,其特征在于,所述全局暂态检测结果包括全局暂态标志和全局暂态位置信息,所述目标编码参数包括所述当前帧的窗函数类型;
所述确定单元具体用于:
若所述全局暂态标志为第一值,则基于所述全局暂态位置信息确定所述当前帧的窗函数类型。
19.如权利要求16-18任一所述的装置,其特征在于,所述装置还包括:
第三编码模块,用于将所述目标编码参数进行编码,以得到目标编码参数编码结果;
第二写入模块,用于将所述目标编码参数编码结果写入所述码流。
20.如权利要求16-19任一所述的装置,其特征在于,所述空间编码模块具体用于:
基于所述帧类型,对所述频域三维音频信号进行空间编码。
21.如权利要求16-20任一所述的装置,其特征在于,所述第一编码模块具体用于:
基于所述当前帧的帧类型,对所述N个传输通道的频域信号进行编码。
22.如权利要求15-21任一所述的装置,其特征在于,所述暂态检测结果包括暂态标志,所述全局暂态检测结果包括全局暂态标志,所述暂态标志用于指示对应通道的信号是否为暂态信号;
所述确定模块具体用于:
若所述M个暂态标志中为第一值的暂态标志的数量大于或等于m,则确定所述全局暂态标志为第一值,所述m为大于0且小于所述M的正整数;或者
若所述M个通道中满足第一预设条件且对应的暂态标志为第一值的通道数量大于或等于n,则确定所述全局暂态标志为第一值,所述n为大于0且小于所述M的正整数。
23.如权利要求22所述的装置,其特征在于,所述暂态检测结果还包括暂态位置信息,所述全局暂态检测结果还包括全局暂态位置信息,所述暂态位置信息用于指示对应通道的信号中暂态发生的位置;
所述确定模块具体用于:
若所述M个暂态标志中仅有一个暂态标志为第一值,则将所述暂态标志为第一值的通道对应的暂态位置信息确定为所述全局暂态位置信息;
若所述M个暂态标志中存在至少两个暂态标志为第一值,则将所述至少两个暂态标志对应的至少两个通道中暂态检测参数最大的通道对应的暂态位置信息确定为所述全局暂态位置信息。
24.如权利要求15-23任一所述的装置,其特征在于,所述装置还包括:
第四编码模块,用于将所述全局暂态检测结果进行编码,以得到全局暂态检测结果编码结果;
第三写入模块,用于将所述全局暂态检测结果编码结果写入所述码流。
25.一种解码装置,其特征在于,所述装置包括:
解析模块,用于从码流中解析出全局暂态检测结果和空间编码参数;
解码模块,用于基于所述全局暂态检测结果和所述码流进行解码,以得到N个传输通道的频域信号;
空间解码模块,用于基于所述全局暂态检测结果和所述空间编码参数,对所述N个传输通道的频域信号进行空间解码,以得到重建的频域三维音频信号;
确定模块,用于基于所述全局暂态检测结果和所述重建的频域三维音频信号,确定重建的时域三维音频信号。
26.如权利要求25所述的装置,其特征在于,所述确定模块包括:
确定单元,用于基于所述全局暂态检测结果确定目标编码参数,所述目标编码参数包括当前帧的窗函数类型和/或所述当前帧的帧类型;
转换单元,用于基于所述目标编码参数,将所述重建的频域三维音频信号转换为所述重建的时域三维音频信号。
27.如权利要求26所述的装置,其特征在于,所述全局暂态检测结果包括全局暂态标志,所述目标编码参数包括所述当前帧的窗函数类型;
所述确定单元具体用于:
若所述全局暂态标志为第一值,则将第一预设窗函数的类型确定为所述当前帧的窗函数类型;
若所述全局暂态标志为第二值,则将第二预设窗函数的类型确定为所述当前帧的窗函数类型;
其中,所述第一预设窗函数的窗长小于所述第二预设窗函数的窗长。
28.如权利要求26所述的装置,其特征在于,所述全局暂态检测结果包括全局暂态标志和全局暂态位置信息,所述目标编码参数包括所述当前帧的窗函数类型;
所述确定单元具体用于:
若所述全局暂态标志为第一值,则基于所述全局暂态位置信息确定所述当前帧的窗函数类型。
29.一种编码端设备,其特征在于,所述编码端设备包括存储器和处理器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的计算机程序,以实现权利要求1-10任一所述的编码方法。
30.一种解码端设备,其特征在于,所述解码端设备包括存储器和处理器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的计算机程序,以实现权利要求11-14任一所述的解码方法。
31.一种计算机可读存储介质,其特征在于,所述存储介质内存储有指令,当所述指令在所述计算机上运行时,使得所述计算机执行权利要求1-14任一所述的方法的步骤。
32.一种计算机可读存储介质,其特征在于,包括如权利要求1-10中任一项所述的编码方法所获得的码流。
33.一种计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求1-14中任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111155355.4A CN115881139A (zh) | 2021-09-29 | 2021-09-29 | 编解码方法、装置、设备、存储介质及计算机程序 |
PCT/CN2022/120507 WO2023051370A1 (zh) | 2021-09-29 | 2022-09-22 | 编解码方法、装置、设备、存储介质及计算机程序 |
EP22874757.2A EP4398242A1 (en) | 2021-09-29 | 2022-09-22 | Encoding and decoding methods and apparatus, device, storage medium, and computer program |
ARP220102607A AR127171A1 (es) | 2021-09-29 | 2022-09-28 | Métodos y aparatos, dispositivos, medio de almacenamiento y programa informático de codificación y decodificación |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111155355.4A CN115881139A (zh) | 2021-09-29 | 2021-09-29 | 编解码方法、装置、设备、存储介质及计算机程序 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115881139A true CN115881139A (zh) | 2023-03-31 |
Family
ID=85756468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111155355.4A Pending CN115881139A (zh) | 2021-09-29 | 2021-09-29 | 编解码方法、装置、设备、存储介质及计算机程序 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4398242A1 (zh) |
CN (1) | CN115881139A (zh) |
AR (1) | AR127171A1 (zh) |
WO (1) | WO2023051370A1 (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2728122B2 (ja) * | 1995-05-23 | 1998-03-18 | 日本電気株式会社 | 無音圧縮音声符号化復号化装置 |
CN1233163C (zh) * | 2002-08-21 | 2005-12-21 | 中山正音数字技术有限公司 | 多声道数字音频信号的压缩编码和解码设备及其方法 |
CN1783726B (zh) * | 2002-08-21 | 2010-05-12 | 广州广晟数码技术有限公司 | 用于从音频数据码流中解码重建多声道音频信号的解码器 |
CN101197577A (zh) * | 2006-12-07 | 2008-06-11 | 展讯通信(上海)有限公司 | 一种用于音频处理框架中的编码和解码方法 |
CN103493129B (zh) * | 2011-02-14 | 2016-08-10 | 弗劳恩霍夫应用研究促进协会 | 用于使用瞬态检测及质量结果将音频信号的部分编码的装置与方法 |
CN110544484B (zh) * | 2019-09-23 | 2021-12-21 | 中科超影(北京)传媒科技有限公司 | 高阶Ambisonic音频编解码方法及装置 |
-
2021
- 2021-09-29 CN CN202111155355.4A patent/CN115881139A/zh active Pending
-
2022
- 2022-09-22 EP EP22874757.2A patent/EP4398242A1/en active Pending
- 2022-09-22 WO PCT/CN2022/120507 patent/WO2023051370A1/zh active Application Filing
- 2022-09-28 AR ARP220102607A patent/AR127171A1/es unknown
Also Published As
Publication number | Publication date |
---|---|
AR127171A1 (es) | 2023-12-27 |
EP4398242A1 (en) | 2024-07-10 |
WO2023051370A1 (zh) | 2023-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW201005730A (en) | Method and apparatus for error concealment of encoded audio data | |
US20230298600A1 (en) | Audio encoding and decoding method and apparatus | |
US12062379B2 (en) | Audio coding of tonal components with a spectrum reservation flag | |
US20200020342A1 (en) | Error concealment for audio data using reference pools | |
EP4131263A1 (en) | Audio signal encoding method and apparatus | |
US20200402521A1 (en) | Performing psychoacoustic audio coding based on operating conditions | |
US10727858B2 (en) | Error resiliency for entropy coded audio data | |
WO2023051370A1 (zh) | 编解码方法、装置、设备、存储介质及计算机程序 | |
US20240087585A1 (en) | Encoding method and apparatus, decoding method and apparatus, device, storage medium, and computer program | |
WO2023051367A1 (zh) | 解码方法、装置、设备、存储介质及计算机程序产品 | |
US20240177721A1 (en) | Audio signal encoding and decoding method and apparatus | |
TWI847276B (zh) | 編解碼方法、裝置、設備、儲存媒體及電腦程式產品 | |
WO2023051368A1 (zh) | 编解码方法、装置、设备、存储介质及计算机程序产品 | |
WO2022258036A1 (zh) | 编解码方法、装置、设备、存储介质及计算机程序 | |
WO2024139865A1 (zh) | 虚拟扬声器的确定方法及相关装置 | |
US20240169998A1 (en) | Multi-Channel Signal Encoding and Decoding Method and Apparatus | |
WO2024146408A1 (zh) | 场景音频解码方法及电子设备 | |
WO2022012677A1 (zh) | 音频编解码方法和相关装置及计算机可读存储介质 | |
JP2024518846A (ja) | 3次元オーディオ信号符号化方法および装置、ならびにエンコーダ | |
CN118571235A (zh) | 音频编解码方法及相关装置 | |
CN118571233A (zh) | 音频信号的处理方法及相关装置 | |
CN118138980A (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 |