一种音频信号编码、解码方法及音频信号编码器、解码器
技术领域
本发明涉及数据处理技术领域,尤其涉及一种音频信号编码、解码方法及音频信号编码器、解码器。
背景技术
音频编解码器,是将PCM(Pulse Code Modulation,脉冲编码调制)域的数字音频信号经过编码压缩以后得到码流信号,然后将码流信号按照一定的格式进行封装并传输,解码端根据接收到的码流信号进行解码,从而恢复出PCM域的数字音频信号。
现有的编解码器,常用的编解码模式有单声道编解码模式和立体声编解码模式(立体声编解码模式也可称为两声道编解码模式)。因此,需要标识是单声道编码模式还是立体声编码模式。
另外,现有的立体声编码器,会将立体声信号进行下混后获得单声道信号,然后使用某一编码速率的单声道编码器对下混后获得的单声道信号进行编码,并编码立体声信号的两个声道间的参数信息或残差信号,然后将编码后的单声道信号与编码后的残差信号一起构成整个立体声码流,立体声的编码速率为下混后获得的单声道编码速率与参数信息或残差信号编码速率之和。由于这种立体声编码模式使用了单声道编码方式进行编码的方式,可以称为嵌入式编码方式。
对于立体声编解码模式,具有相同立体声编码速率的N个立体声码流可能是采用N种不同的单声道编码方式编码的,不同的单声道编码方式的编码速率不同。为了标识立体声编解码模式下的单声道编解码方式,需要在码流中使用Log2(N)个方式比特位对单声道编解码方式进行标识,并且每次变换立体声编解码模式下的单声道编解码方式时,就需要修改方式比特位的值,提供的编码方式越多,需要修改的比特位个数也就越多,这将会大大影响编解码速度,并且,当编解码方式的增加或减少导致需要增加或减少方式比特位时,会导致用于标识其它原本的编解码方式对应的方式比特位上的值也需要改变,因此会影响编解码方案的兼容性。
发明内容
本发明实施例提供一种音频信号编码、解码方法及音频信号编码器、解码器,用以解决现有技术中存在的在因编解码方式的增加或减少导致需要增加或减少方式比特位时,会导致用于标识其它原本的编解码方式对应的方式比特位上的值也需要改变,从而影响编解码方案的兼容性的问题,同时提高了编解码速度。
第一方面,提供的一种音频信号编码方法,包括:
确定音频信号的编码模式;
在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,其中,Q为大于1的正整数,N为大于1的正整数;
根据当前编码方式对音频信号进行编码,从而获得音频信号的码流,其中,码流包括方式比特位,码流中的方式比特位用于标识当前编码方式,码流中的方式比特位的长度为i,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位的i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。
其中,方式比特位的长度为i指的是方式比特位的具有i个比特位。
通过码流中的方式比特位上的值标识出所使用的N种编码方式,通过设置码流中的方式比特位上不同比特位上的值可以标识出不同的编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第一方面,在第一方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。该第N个比特位可以位于该N-1个比特位之后,通过码流中的N个比特位上的值标识出所使用的N种编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第一方面或者第一方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第一方面的第四种可能的实现方式中,当前编码方式为嵌入式编码方式,该嵌入式编码方式使用P声道编码方式进行编码,P为小于Q的正整数。
结合第一方面或者第一方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第一方面的第五种可能的实现方式中,N种编码方式包括至少两种嵌入式编码方式,至少两种嵌入式编码方式对应的方式比特位的长度不同,至少两种嵌入式编码方式所使用的P声道编码方式的码率不同。
结合第一方面或者第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,对于至少两种嵌入式编码方式中的两种编码方式,在其中一个编码方式所使用的P声道编码方式的码率越大时,其中一个编码方式对应的方式比特位的长度越长,或者,其中一个编码方式对应的方式比特位的长度越短。
结合第一方面或者第一方面的第一种可能的实现方式至第六种可能的实现方式中任意一种可能的实现方式,在第一方面的第七种可能的实现方式中,N种编码方式包括非嵌入式编码方式。该非嵌入式编码方式为没有使用单声道编码方式进行编码,只使用多声道编码方式进行编码的方式。
结合第一方面或者第一方面的第七种可能的实现方式,在第一方面的第八种可能的实现方式中,非嵌入式编码方式对应的方式比特位的长度为1;或者,
非嵌入式编码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式编码方式对应的方式比特位的长度为N-1,非嵌入式编码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第一方面或者第一方面的第一种可能的实现方式至第八种可能的实现方式中任意一种可能的实现方式,在第一方面的第九种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第二方面,提供了一种音频信号解码方法,包括:
接收音频信号的码流;
在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式,Q声道解码模式包括N种解码方式,当前解码方式是N种解码方式中的一种,码流中的方式比特位的长度为i,Q为大于1的正整数,N为大于1的正整数,其中,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位的i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值;
根据当前解码方式对码流进行解码。
通过码流中方式比特位上的值标识出所使用的N种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第二方面,在第二方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第二方面或者第二方面的第一中可能的实现方式,在第二方面的第二种可能的实现方式中,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。该第N个比特位可以位于该N-1个比特位之后,通过码流中的N个比特位上的值标识出所使用的N种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第二方面或者第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第二方面或者第二方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第二方面的第四种可能的实现方式中,当前解码方式为嵌入式解码方式,该嵌入式解码方式使用P声道解码方式进行解码,P为小于Q的正整数。
结合第二方面或者第二方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第二方面的第五种可能的实现方式中,N种解码方式包括至少两种嵌入式解码方式,至少两种嵌入式解码方式对应的方式比特位的长度不同,至少两种嵌入式解码方式所使用的P声道解码方式的码率不同。
结合第二方面或者第二方面的第五种可能的实现方式,在第二方面的第六种可能的实现方式中,对于至少两种嵌入式解码方式中的两种解码方式,在其中一个解码方式所使用的P声道解码方式的码率越大时,其中一个解码方式对应的方式比特位的长度越长,或者,其中一个解码方式对应的方式比特位的长度越短。
结合第二方面或者第二方面的第一种可能的实现方式至第六种可能的实现方式中任意一种可能的实现方式,在第二方面的第七种可能的实现方式中,N种解码方式包括非嵌入式解码方式。
结合第二方面或者第二方面的第七种可能的实现方式,在第二方面的第八种可能的实现方式中,非嵌入式解码方式对应的方式比特位的长度为1;或者,
非嵌入式解码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式解码方式对应的方式比特位的长度为N-1,非嵌入式解码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第二方面或者第二方面的第一种可能的实现方式至第八种可能的实现方式中任意一种可能的实现方式,在第二方面的第九种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第三方面,提供了一种音频信号编码器,包括:
确定单元,用于确定音频信号的编码模式;在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,其中,Q为大于1的正整数,N为大于1的正整数;
编码单元,用于根据确定单元确定的当前编码方式对音频信号进行编码,从而获得音频信号的码流,其中,码流包括方式比特位,码流中的方式比特位用于标识当前编码方式,码流中的方式比特位的长度为i,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位的i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。
通过码流中的方式比特位上的值标识出所使用的N种编码方式,通过设置码流中的方式比特位上不同比特位上的值可以标识出不同的编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第三方面,在第三方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第三方面或者第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。该第N个比特位可以位于该N-1个比特位之后,通过码流中的N个比特位上的值标识出所使用的N种编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第三方面或者第三方面的第一种可能的实现方式,在第三方面的第三种可能的实现方式中,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第三方面或者第三方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第三方面的第四种可能的实现方式中,当前编码方式为嵌入式编码方式,该嵌入式编码方式使用P声道编码方式进行编码,P为小于Q的正整数。
结合第三方面或者第三方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第三方面的第五种可能的实现方式中,N种编码方式包括至少两种嵌入式编码方式,至少两种嵌入式编码方式对应的方式比特位的长度不同,至少两种嵌入式编码方式所使用的P声道编码方式的码率不同。
结合第三方面或者第三方面的第五种可能的实现方式,在第三方面的第六种可能的实现方式中,对于至少两种嵌入式编码方式中的两种编码方式,在其中一个编码方式所使用的P声道编码方式的码率越大时,其中一个编码方式对应的方式比特位的长度越长,或者,其中一个编码方式对应的方式比特位的长度越短。
结合第三方面或者第三方面的第一种可能的实现方式至第六种可能的实现方式中任意一种可能的实现方式,在第三方面的第七种可能的实现方式中,N种编码方式包括非嵌入式编码方式。
结合第三方面或者第三方面的第七种可能的实现方式,在第三方面的第八种可能的实现方式中,非嵌入式编码方式对应的方式比特位的长度为1;或者,
非嵌入式编码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式编码方式对应的方式比特位的长度为N-1,非嵌入式编码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第三方面或者第三方面的第一种可能的实现方式至第八种可能的实现方式中任意一种可能的实现方式,在第三方面的第九种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第四方面,提供了一种音频信号解码器,包括:
接收单元,用于接收音频信号的码流;
确定单元,用于在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式,Q声道解码模式包括N种解码方式,当前解码方式是N种解码方式中的一种,码流中的方式比特位的长度为i,Q为大于1的正整数,N为大于1的正整数,其中,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位的i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值;
解码单元,用于根据确定单元确定的当前解码方式对码流进行解码。
通过码流中方式比特位上的值标识出所使用的N种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第四方面,在第四方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第四方面或者第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。该第N个比特位可以位于该N-1个比特位之后,通过码流中的N个比特位上的值标识出所使用的N种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第四方面或者第四方面的第一种可能的实现方式,在第四方面的第三种可能的实现方式中,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第四方面或者第四方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第四方面的第四种可能的实现方式中,当前编码方式为嵌入式解码方式,该嵌入式解码方式使用P声道解码方式进行解码,P为小于Q的正整数。
结合第四方面或者第四方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第四方面的第五种可能的实现方式中,N种解码方式包括至少两种嵌入式解码方式,至少两种嵌入式解码方式对应的方式比特位的长度不同,至少两种嵌入式解码方式所使用的P声道解码方式的码率不同。
结合第四方面或者第四方面的第五种可能的实现方式,在第四方面的第六种可能的实现方式中,对于至少两种嵌入式解码方式中的两种解码方式,在其中一个解码方式所使用的P声道解码方式的码率越大时,其中一个解码方式对应的方式比特位的长度越长,或者,其中一个解码方式对应的方式比特位的长度越短。
结合第四方面或者第四方面的第一种可能的实现方式至第六种可能的实现方式中任意一种可能的实现方式,在第四方面的第七种可能的实现方式中,N种解码方式包括非嵌入式解码方式。
结合第四方面或者第四方面的第七种可能的实现方式,在第四方面的第八种可能的实现方式中,非嵌入式解码方式对应的方式比特位的长度为1;或者,
非嵌入式解码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式解码方式对应的方式比特位的长度为N-1,非嵌入式解码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第四方面或者第四方面的第一种可能的实现方式至第八种可能的实现方式中任意一种可能的实现方式,在第四方面的第九种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第五方面,提供的一种音频信号编码方法,包括:
确定音频信号的编码模式;
在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,当前编码方式为N种编码方式中第i种编码方式,其中,Q为大于1的正整数,N为大于1的正整数,i为小于或者等于N的正整数;第i种编码方式的索引可以为i,也可以为i-1,索引值从1开始,从0开始。该索引i可以位于预设的索引表中,该索引表中的索引i与Q声道编码模式所包括的N种编码方式相对应,比如,索引1对应着该N种编码方式中的第1种编码方式,索引2对应着该N种编码方式中的第2种编码方式,依次类推,通过索引查找相对应的编码方式。
根据当前编码方式对音频信号进行编码,从而获得音频信号的码流,其中,码流包括方式比特位,码流中的方式比特位用于标识当前编码方式,其中,在i大于1并且小于N,并且N大于2时,码流中的方式比特位包括i个比特位,i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。
通过码流中的方式比特位上的值标识出所使用的N种编码方式中第i种编码方式,通过设置码流中的方式比特位上不同比特位上的值可以标识出不同的编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第五方面,在第五方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第五方面或者第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,在i等于N,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。该N-1个比特位可以位于该第N个比特位之前,通过码流中的N个比特位上的值标识出所使用的N种编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第五方面或者第五方面的第二种可能的实现方式,在第五方面的第三种可能的实现方式中,在i等于N时,码流中的方式比特位还包括第N个比特位,第N个比特位上的值为预设值。
结合第五方面或者第五方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第五方面的第四种可能的实现方式中,N种编码方式包括嵌入式编码方式,该嵌入式编码方式使用P声道编码方式进行编码,P为小于Q的正整数。
结合第五方面或者第五方面的第四种可能的实现方式,在第五方面的第五种可能的实现方式中,嵌入式编码方式为至少两种,在至少两种嵌入式编码方式中,在其中一个编码方式所使用的P声道编码方式的码率越大时,其中一个编码方式对应的方式比特位的比特位个数越多,或者,其中一个编码方式对应的方式比特位的比特位个数越少。
结合第五方面或者第五方面的第一种可能的实现方式至第五种可能的实现方式中任意一种可能的实现方式,在第五方面的第六种可能的实现方式中,N种编码方式包括非嵌入式编码方式。该非嵌入式编码方式为没有使用单声道编码方式进行编码,只使用多声道编码方式进行编码的方式。
结合第五方面或者第五方面的第六种可能的实现方式,在第五方面的第七种可能的实现方式中,非嵌入式编码方式为N种编码方式中第N种编码方式;或者,
非嵌入式编码方式为N种编码方式中第1种编码方式。
结合第五方面或者第五方面的第一种可能的实现方式至第七种可能的实现方式中任意一种可能的实现方式,在第五方面的第八种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第六方面,提供了一种音频信号解码方法,包括:
接收音频信号的码流;
在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式,Q声道解码模式包括N种解码方式,当前解码方式为N种解码方式中的第i种解码方式,其中,Q为大于1的正整数,N为大于1的正整数,i为小于或者等于N的正整数,其中,在i大于1并且小于N,并且N大于2时,码流中的方式比特位包括i个比特位,i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值;该第i种解码方式的索引可以为i,也可以为i-1.索引值从1开始,或者从0开始。该索引i可以位于预设的索引表中,该索引表中的索引i与Q声道解码模式所包括的N种解码方式相对应,比如,索引1对应着该N种解码方式中的第1种解码方式,索引2对应着该N种解码方式中的第2种解码方式,依次类推,通过索引查找相对应的解码方式。
根据当前解码方式对码流进行解码。
通过码流中的i个方式比特位上的值标识出所使用的N种解码方式中第i种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第六方面,在第六方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第六方面或者第六方面的第一中可能的实现方式,在第六方面的第二种可能的实现方式中,在i等于N,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。该N-1个比特位可以位于该第N个比特位之前,通过码流中的N个比特位上的值标识出所使用的N种编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第六方面或者第六方面的第二种可能的实现方式,在第六方面的第三种可能的实现方式中,在i等于N时,方式比特位还包括第N个比特位,第N个比特位上的值为预设值。
结合第六方面或者第六方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第六方面的第四种可能的实现方式中,N种解码方式包括嵌入式解码方式,该嵌入式解码方式使用P声道解码方式进行解码,P为小于Q的正整数。
结合第六方面或者第六方面的第四种可能的实现方式,在第六方面的第五种可能的实现方式中,嵌入式解码方式为至少两种,在至少两种嵌入式解码方式中,在其中一个解码方式所使用的P声道解码方式的码率越大时,其中一个解码方式对应的方式比特位的比特位个数越多,或者,其中一个解码方式对应的方式比特位的比特位个数越少。
结合第六方面或者第六方面的第一种可能的实现方式至第五种可能的实现方式中任意一种可能的实现方式,在第六方面的第六种可能的实现方式中,N种解码方式包括非嵌入式解码方式。
结合第六方面或者第六方面的第六种可能的实现方式,在第六方面的第七种可能的实现方式中,非嵌入式解码方式为N种解码方式中第N种解码方式;或者,
非嵌入式解码方式为N种解码方式中第1种解码方式。
结合第六方面或者第六方面的第一种可能的实现方式至第七种可能的实现方式中任意一种可能的实现方式,在第六方面的第八种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第七方面,提供了一种音频信号编码器,包括:
确定单元,用于确定音频信号的编码模式;在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,当前编码方式为N种编码方式中第i种编码方式,其中,Q为大于1的正整数,N为大于1的正整数,i为小于或者等于N的正整数;该第i种编码方式的索引可以为i,也可以为i-1.索引值从1开始,或者从0开始,该索引i可以位于预设的索引表中,该索引表中的索引i与Q声道编码模式所包括的N种编码方式相对应,比如,索引1对应着该N种编码方式中的第1种编码方式,索引2对应着该N种编码方式中的第2种编码方式,依次类推,通过索引查找相对应的编码方式。
编码单元,用于根据当前编码方式对音频信号进行编码,从而获得音频信号的码流,其中,码流包括方式比特位,码流中的方式比特位用于标识当前编码方式,其中,在i大于1并且小于N,并且N大于2时,码流中的方式比特位包括i个比特位,i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。
通过码流中的方式比特位上的值标识出所使用的N种编码方式中第i种编码方式,通过设置码流中的方式比特位上不同比特位上的值可以标识出不同的编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第七方面,在第七方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第七方面或者第七方面的第一种可能的实现方式,在第七方面的第二种可能的实现方式中,在i等于N,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。该N-1个比特位可以位于该第N个比特位之前,通过码流中的N个比特位上的值标识出所使用的N种编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第七方面或者第七方面的第二种可能的实现方式,在第七方面的第三种可能的实现方式中,在i等于N时,码流中的方式比特位还包括第N个比特位,第N个比特位上的值为预设值。
结合第七方面或者第七方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第七方面的第四种可能的实现方式中,N种编码方式包括嵌入式编码方式,该嵌入式编码方式使用P声道编码方式进行编码,P为小于Q的正整数。
结合第七方面或者第七方面的第四种可能的实现方式,在第七方面的第五种可能的实现方式中,嵌入式编码方式为至少两种,在至少两种嵌入式编码方式中,在其中一个编码方式所使用的P声道编码方式的码率越大时,其中一个编码方式对应的方式比特位的比特位个数越多,或者,其中一个编码方式对应的方式比特位的比特位个数越少。
结合第七方面或者第七方面的第一种可能的实现方式至第五种可能的实现方式中任意一种可能的实现方式,在第七方面的第六种可能的实现方式中,N种编码方式包括非嵌入式编码方式。
结合第七方面或者第七方面的第六种可能的实现方式,在第七方面的第七种可能的实现方式中,非嵌入式编码方式为N种编码方式中第N种编码方式;或者,
非嵌入式编码方式为N种编码方式中第1种编码方式。
结合第七方面或者第七方面的第一种可能的实现方式至第七种可能的实现方式中任意一种可能的实现方式,在第七方面的第八种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第八方面,提供了一种音频信号解码器,包括:
接收单元,用于接收音频信号的码流;
确定单元,用于在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式,Q声道解码模式包括N种解码方式,当前解码方式为N种解码方式中的第i种解码方式,其中,Q为大于1的正整数,N为大于1的正整数,i为小于或者等于N的正整数,其中,在i大于1并且小于N,并且N大于2时,码流中的方式比特位包括i个比特位,i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值;该索引i可以位于预设的索引表中,该索引表中的索引i与Q声道解码模式所包括的N种解码方式相对应,比如,索引1对应着该N种解码方式中的第1种解码方式,索引2对应着该N种解码方式中的第2种解码方式,依次类推,通过索引查找相对应的解码方式。
解码单元,用于根据确定单元确定的当前解码方式对码流进行解码。
通过码流中的i个方式比特位上的值标识出所使用的N种解码方式中第i种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第八方面,在第八方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第八方面或者第八方面的第一种可能的实现方式,在第八方面的第二种可能的实现方式中,在i等于N,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。该N-1个比特位可以位于该第N个比特位之前,通过码流中的N个比特位上的值标识出所使用的N种编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第八方面或者第八方面的第二种可能的实现方式,在第八方面的第三种可能的实现方式中,在i等于N时,方式比特位还包括第N个比特位,第N个比特位上的值为预设值。
结合第八方面或者第八方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第八方面的第四种可能的实现方式中,N种解码方式包括嵌入式解码方式,该嵌入式解码方式使用P声道解码方式进行解码,P为小于Q的正整数。
结合第八方面或者第八方面的第四种可能的实现方式,在第八方面的第五种可能的实现方式中,嵌入式解码方式为至少两种,在至少两种嵌入式解码方式中,在其中一个解码方式所使用的P声道解码方式的码率越大时,其中一个解码方式对应的方式比特位的比特位个数越多,或者,其中一个解码方式对应的方式比特位的比特位个数越少。
结合第八方面或者第八方面的第一种可能的实现方式至第五种可能的实现方式中任意一种可能的实现方式,在第八方面的第六种可能的实现方式中,N种解码方式包括非嵌入式解码方式。
结合第八方面或者第八方面的第六种可能的实现方式,在第八方面的第七种可能的实现方式中,非嵌入式解码方式为N种解码方式中第N种解码方式;或者,
非嵌入式解码方式为N种解码方式中第1种解码方式。
结合第八方面或者第八方面的第一种可能的实现方式至第七种可能的实现方式中任意一种可能的实现方式,在第八方面的第八种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第九方面,提供一种音频信号编码器,包括:
处理器用于读取存储器中代码,以用于执行:确定音频信号的编码模式;在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,其中,Q为大于1的正整数,N为大于1的正整数;处理器根据当前编码方式对音频信号进行编码,从而获得音频信号的码流,其中,码流包括方式比特位,码流中的方式比特位用于标识当前编码方式,码流中的方式比特位的长度为i,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位的i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。
通过码流中的方式比特位上的值标识出所使用的N种编码方式,通过设置码流中的方式比特位上不同比特位上的值可以标识出不同的编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第九方面,在第九方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第九方面或者第九方面的第一种可能的实现方式,在第九方面的第二种可能的实现方式中,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。该第N个比特位可以位于该N-1个比特位之后,通过码流中的N个比特位上的值标识出所使用的N种编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
结合第九方面或者第九方面的第一种可能的实现方式,在第九方面的第三种可能的实现方式中,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第九方面或者第九方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第九方面的第四种可能的实现方式中,当前编码方式为嵌入式编码方式,该嵌入式编码方式使用P声道编码方式进行编码,P为小于Q的正整数。
结合第九方面或者第九方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第九方面的第五种可能的实现方式中,N种编码方式包括至少两种嵌入式编码方式,至少两种嵌入式编码方式对应的方式比特位的长度不同,至少两种嵌入式编码方式所使用的P声道编码方式的码率不同。
结合第九方面或者第九方面的第五种可能的实现方式,在第九方面的第六种可能的实现方式中,对于至少两种嵌入式编码方式中的两种编码方式,在其中一个编码方式所使用的P声道编码方式的码率越大时,其中一个编码方式对应的方式比特位的长度越长,或者,其中一个编码方式对应的方式比特位的长度越短。
结合第九方面或者第九方面的第一种可能的实现方式至第六种可能的实现方式中任意一种可能的实现方式,在第九方面的第七种可能的实现方式中,N种编码方式包括非嵌入式编码方式。
结合第九方面或者第九方面的第七种可能的实现方式,在第九方面的第八种可能的实现方式中,非嵌入式编码方式对应的方式比特位的长度为1;或者,
非嵌入式编码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式编码方式对应的方式比特位的长度为N-1,非嵌入式编码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第九方面或者第九方面的第一种可能的实现方式至第八种可能的实现方式中任意一种可能的实现方式,在第九方面的第九种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第十方面,提供一种音频信号解码器,包括:
收发器、处理器和存储器。
收发器接收音频信号的码流;处理器用于读取存储器中代码,以用于执行:在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式,Q声道解码模式包括N种解码方式,当前解码方式是N种解码方式中的一种,码流中的方式比特位的长度为i,Q为大于1的正整数,N为大于1的正整数,其中,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位的i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值;处理器根据确定的当前解码方式对码流进行解码。通过码流中方式比特位上的值标识出所使用的N种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第十方面,在第十方面的第一种可能的实现方式中,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
结合第十方面或者第十方面的第一种可能的实现方式,在第十方面的第二种可能的实现方式中,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。该第N个比特位可以位于该N-1个比特位之后,通过码流中的N个比特位上的值标识出所使用的N种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
结合第十方面或者第十方面的第一种可能的实现方式,在第十方面的第三种可能的实现方式中,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第十方面或者第十方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第十方面的第四种可能的实现方式中,当前解码方式为嵌入式解码方式,该嵌入式解码方式使用P声道解码方式进行解码,P为小于Q的正整数。
结合第十方面或者第十方面的第一种可能的实现方式至第三种可能的实现方式中任意一种可能的实现方式,在第十方面的第五种可能的实现方式中,N种解码方式包括至少两种嵌入式解码方式,至少两种嵌入式解码方式对应的方式比特位的长度不同,至少两种嵌入式解码方式所使用的P声道解码方式的码率不同。
结合第十方面或者第十方面的第五种可能的实现方式,在第十方面的第六种可能的实现方式中,对于至少两种嵌入式解码方式中的两种解码方式,在其中一个解码方式所使用的P声道解码方式的码率越大时,其中一个解码方式对应的方式比特位的长度越长,或者,其中一个解码方式对应的方式比特位的长度越短。
结合第十方面或者第十方面的第一种可能的实现方式至第六种可能的实现方式中任意一种可能的实现方式,在第十方面的第七种可能的实现方式中,N种解码方式包括非嵌入式解码方式。
结合第十方面或者第十方面的第七种可能的实现方式,在第十方面的第八种可能的实现方式中,非嵌入式解码方式对应的方式比特位的长度为1;或者,
非嵌入式解码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式解码方式对应的方式比特位的长度为N-1,非嵌入式解码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
结合第十方面或者第十方面的第一种可能的实现方式至第八种可能的实现方式中任意一种可能的实现方式,在第十方面的第九种可能的实现方式中,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
第十一方面,提供一种计算机存储介质,用于储存用于第九方面的处理器执行的计算机软件指令,以用于执行第一方面提供的方法。
第十二方面,提供一种计算机存储介质,用于储存用于第十方面的处理器执行的计算机软件指令,以用于执行第二方面提供的方法。
第十三方面,提供一种音频信号编码器,包括:
处理器用于读取存储器中代码,以用于执行第五方面以及第五方面可能的实现方式提供的方法。
第十四方面,提供一种音频信号解码器,包括:
收发器、处理器和存储器。
收发器接收音频信号的码流;处理器用于读取存储器中代码,以用于执行第六方面以及第六方面可能的实现方式提供的方法。
第十五方面,提供一种计算机存储介质,用于储存用于第十三方面以及第十三方面可能的实现方式提供的处理器执行的计算机软件指令,以用于执行第五方面以及第五方面可能的实现方式提供的方法。
第十六方面,提供一种计算机存储介质,用于储存用于第十四方面以及第十四方面可能的实现方式提供的处理器执行的计算机软件指令,以用于执行第六方面以及第六方面可能的实现方式提供的方法。
本发明实施例表明,通过确定音频信号的编码模式,在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,根据当前编码方式对信号进行编码,从而获得音频信号的码流。通过码流中的方式比特位上的值标识出所使用的N种编码方式,通过设置码流中的方式比特位上不同比特位上的值可以标识出不同的编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。
图1为本发明实施例提供的一种适应于音频信号编解码的系统架构图;
图2为本发明实施例提供的一种音频信号编码方法的流程示意图;
图3为本发明实施例提供的一种码流格式的结构示意图;
图4为本发明实施例提供的一种码流格式的结构示意图;
图5为本发明实施例提供的一种码流格式的结构示意图;
图6为本发明实施例提供的一种码流格式的结构示意图;
图7为本发明实施例提供的一种音频信号解码方法的流程示意图;
图8a至图8f为本发明实施例提供的一种码流扩展的结构示意图;
图9a至图9c为本发明实施例提供的一种码流解码的结构示意图;
图10a至图10d为本发明实施例提供的一种码流扩展的结构示意图;
图11a至图11c为本发明实施例提供的一种码流解码的结构示意图;
图12为本发明实施例提供的一种音频信号编码器的结构示意图;
图13为本发明实施例提供的一种音频信号解码器的结构示意图;
图14为本发明实施例提供的一种音频信号编码器的结构示意图;
图15为本发明实施例提供的一种音频信号解码器的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
本发明实施例适用于音频信号编解码器,如图1所示的系统架构图,该音频信号编解码器包括音频信号编码器101和音频信号解码器102。音频信号编码器101用来将数字音频信息经过编码压缩以后得到码流信号,然后将码流信号按照一定的格式进行封装并传输。而音频信号解码器102是根据接收到的码流信号进行按照一定的顺序规则进行解码,恢复出数字音频信号。
基于上述描述,图2示出了本发明实施例提供的一种音频信号编码方法的流程,该流程可以由音频信号编码器执行。
如图2所示,该流程的具体步骤包括:
步骤201,确定音频信号的编码模式。
步骤202,在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式。
步骤203,根据当前编码方式对信号进行编码,从而获得音频信号的码流。
在本发明实施例中,音频信号的编码模式包括Q声道编码模式,Q为大于1的正整数,该Q声道编码模式包含有N种编码方式,N为正整数。在确定出音频信号的编码模式为Q声道编码模式时,可以从Q声道编码模式所包括的N种编码方式中的确定出当前编码方式,使用该当前编码方式对该音频信号进行编码,可以获得音频信号的码流。
应理解,音频信号的编码模式也可以包括P声道编码模式,P为小于Q的正整数,在具体实现方式中,Q声道编码模式可以是立体声编码模式,P声道编码模式可以是单声道编码模式,单声道编码模式中的编码方式包括单声道编码方式编码,立体声编码模式中的编码方式包括嵌入式编码方式,嵌入式编码方式使用单声道编码方式,立体声编码模式也可以包括非嵌入式编码方式,非嵌入式编码方式中不使用单声道编码方式。
音频信号的编码模式还可以包括L声道编码模式,L为小于Q的正整数,且L不为P。
在上述编码后的码流中包括方式比特位。为了能够区别N种编码方式,通过码流中的方式比特位上的值标识从N种编码方式中确定的当前编码方式,码流中的方式比特位的长度为i。在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位的i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。该预设值为二进制数,可以为1或0。比如:i等于3,该方式比特位有3个比特位,该3个比特位上的值可以是001或110。
为了更好的从N种编码方式中确定出当前编码方式,当前编码方式也可以为N种编码方式中第i种编码方式,第i种编码方式的索引可以为i,也可以为i-1,索引值从1开始,从0开始。该索引i可以位于预设的索引表中,在索引表中索引i与Q声道编码模式所包括的N种编码方式相关联,比如,索引1对应着该N种编码方式中的第1种编码方式,索引2对应着该N种编码方式中的第2种编码方式,依次类推,通过索引查找相对应的编码方式。
优选地,当码流中方式比特位只有1个比特位时,即在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。该1个比特位上的值为二进制数,可以为1或0,通过该预设值可以标识出使用的是那种编码方式。
进一步地,码流中方式比特位上的值有多种组合方式,下面将分为多种方式进行详细描述:
方式一
在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。比如:N等于4,前N-1个比特位上的N-1个值可以都为0或1,第N个比特位上的值为不同于该N-1个值中任一值。可以是0001或1110。该第N个比特位可以位于该N-1个比特位之后,通过码流中的N个比特位上的值标识出所使用的N种编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
方式二
在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值。
方式三
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
在本发明实施例中上述预设值可以为第一预设值,上述方式比特位中不同于该第一预设值的值为第二预设值。
优选地,上述码流中还可以包括模式比特位,该模式比特位上的值用于标识音频信号的编码模式,该模式比特位上的值可以为第三预设值,该第三预设值用于标识Q声道编码模式。该模式比特位上的值是二进制数,该模式比特位的比特数可以是1个,也可以是多个,在此不做限定。如模式比特位上的值为1时表示该音频信号的编码模式为Q声道编码模式,模式比特位上的值为0时,表示该音频信号的编码模式为P声道编码模式,该P为小于Q的正整数。
为了实现通过一种编码器对不同编码码率的信号进行编码,当前编码方式为嵌入式编码方式,该嵌入式编码方式使用P声道编码方式进行编码。也就是说,P声道编码方式的码率有多种,相应地,嵌入式编码方式对应的码率有多种,该嵌入式编码方式为使用不同的码率对应的P声道编码方式进行编码的方式。其中,上述N种编码方式包括至少两种嵌入式编码方式,该至少两种嵌入式编码方式对应的方式比特位的长度不同,该至少两种嵌入式编码方式所使用的P声道编码方式的码率不同。比如,N种编码方式包括两种嵌入式编码方式,第一种编码方式对应的方式比特位的长度为1,第二种编码方式对应的方式比特位的长度可以为2;第一种编码方式所使用的P声道编码方式的码率与第二种编码方式所使用的P声道编码方式不同。
具体的,对于至少两种嵌入式编码方式中的两种编码方式,在其中一个编码方式所使用的P声道编码方式的码率越大时,其中一个编码方式对应的方式比特位的长度越长,或者,其中一个编码方式对应的方式比特位的长度越短。
进一步地,上述N种编码方式可以为非嵌入式编码方式,在使用该非嵌入式编码方式进行编码时,该非嵌入式编码方式对应的方式比特位的长度为1;或者,非嵌入式编码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式编码方式对应的方式比特位的长度为N-1,非嵌入式编码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
举例来说,如图3所示的码流格式,音频信号的编码模式包括P声道编码模式和Q声道编码模式,在P声道编码模式下的P声道编码方式的码率为KMkb/s,在Q声道编码模式所包含的N种编码方式对应的码率也为KMkb/s,不同的嵌入式编码方式中使用的P声道编码方式的码率为KM-ikb/s。模式比特位上的值使用1标识Q声道编码模式,使用0标识P声道编码模式。方式比特位的长度为i,方式比特位上的值前i-1个比特位使用0,第i位比特位使用1。其中,非嵌入式编码方式为N种编码方式中的第N种编码方式,i等于N时,使用方式比特位中的前i-1个比特位上的值都为0标识非嵌入式编码方式。
在如图4所示的码流格式中,方式比特位的长度为i,方式比特位上的值前i-1个比特位使用0,第i个比特位使用1。其中,非嵌入式编码方式为N种编码方式中的第N种编码方式,使用方式比特位中的前i-1个比特位上的值为0,第i个比特位上的值为1标识该非嵌入式编码方式。
在如图5或图6所示的码流格式中,方式比特位的长度为i,方式比特位上值前i-1个比特位使用0,第i个比特位使用1。其中,非嵌入式编码方式为N种编码方式中的第1种编码方式,使用方式比特位中的第1个比特位上的值为1标识该非嵌入式编码方式。
上述实施例中的码流格式仅是示例作用,在实际应用时,可以根据具体的情况使用方式比特位前i-1个比特位上的值和第i个比特位上的值进行组合来标识N种编码方式。上述图3至图6中的多声道码流信息可以是多声道间的参数信息和/或残差信号信息。
在本发明实施例中,上述方式比特位可以为预留的比特位、指定的比特位或拓展后得到的比特位。若码流中还包括模式比特位,则该方式比特位可以位于该模式比特位之后,该模式比特位可以为预留的比特位、指定的比特位或拓展后得到的比特位,也就是说,在后期将码流中的比特位进行拓展后,也是使用作为模式比特位和/或方式比特位。
上述实施例表明,通过确定音频信号的编码模式,在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,根据当前编码方式对信号进行编码,从而获得音频信号的码流。通过码流中的方式比特位上的值标识出所使用的N种编码方式中索引为i的编码方式,通过设置码流中的方式比特位上不同比特位上的值可以标识出不同的编码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种编码方式,解决了编码方案的兼容性问题。
相应地,图7示出了本发明实施例提供的一种音频信号解码方法的流程,该流程可以由音频信号解码器执行。
如图7所示,该流程具体包括:
步骤701,接收音频信号的码流。
步骤702,在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式。
步骤703,根据当前解码方式对码流进行解码。
在本发明实施例中,码流的解码模式可以是Q声道解码模式或P声道解码模式,Q为大于1的正整数,P为小于Q的正整数。比如,P声道可以为单声道,Q声道可以为多声道。其中,Q声道解码模式包括N中解码方式。在读取接收到的音频信号的码流之后确定该码流的解码模式为Q声道解码模式,若码流中存在方式比特位时,可以根据方式比特位上的值确定出当前解码方式,最后根据该确定出的当前解码方式对该码流进行解码。其中,当前解码方式是N种解码方式中的一种,码流中的方式比特位的长度为i,N为大于1的正整数,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位的i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。该预设值为二进制数,可以为1或0。比如:i等于3,该方式比特位有3个比特位,该3个比特位上的值可以是001或110。
应理解,在具体实现方式中,Q声道解码模式可以是立体声解码模式,P声道解码模式可以是单声道解码模式,单声道解码模式中的解码方式包括单声道解码方式解码,立体声解码模式中的解码方式包括嵌入式解码方式,嵌入式解码方式使用单声道解码方式,立体声解码模式也可以包括非嵌入式解码方式,非嵌入式解码方式中不使用单声道解码方式。
音频信号的解码模式还可以包括L声道解码模式,L为小于Q的正整数,且L不为P。
优选地,当码流中方式比特位只有1个比特位时,即在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。该1个比特位上的值为二进制数,可以为1或0,通过该预设值可以标识出需要使用那种解码方式进行解码。
进一步地,码流中方式比特位上的值有多种组合方式,下面将分为多种方式进行详细描述:
方式一
在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。比如:N等于4,前N-1个比特位上的N-1个值可以都为0或1,第N个比特位上的值为不同于该N-1个值中任一值。可以是0001或1110。该第N个比特位可以位于该N-1个比特位之后,通过码流中的N个比特位上的值标识出需要使用的N种解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
方式二
在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值。
方式三
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
在本发明实施例中上述预设值可以为第一预设值,上述方式比特位中不同于该第一预设值的值为第二预设值。
优选地,上述码流中还可以存在模式比特位,该模式比特位上的值用于标识音频信号的解码模式,该模式比特位上的值可以为第三预设值,该第三预设值用于标识Q声道解码模式。该模式比特位上的值是二进制数,该模式比特位的比特数可以是1个,也可以是多个,在此不做限定。如模式比特位上的值为1时表示该音频信号的解码模式为Q声道解码模式,模式比特位上的值为0时,表示该音频信号的解码模式为P声道解码模式,该P为小于Q的正整数。
上述当前解码方式为嵌入式解码方式,该嵌入式解码方式使用P声道解码方式进行解码。也就是说,P声道解码方式的码率有多种,相应地,嵌入式解码方式对应的码率有多种,该P为小于Q的正整数,该嵌入式解码方式为使用不同的码率对应的P声道解码方式进行解码的方式。其中,上述N种解码方式包括至少两种嵌入式解码方式,该至少两种嵌入式解码方式对应的方式比特位的长度不同,该至少两种嵌入式解码方式所使用的P声道解码方式的码率不同。比如,N种解码方式包括两种嵌入式解码方式,第一种解码方式对应的方式比特位的长度为1,第二种解码方式对应的方式比特位的长度可以为2;第一种解码方式所使用的P声道解码方式的码率与第二种解码方式所使用的P声道解码方式不同。
具体的,对于至少两种嵌入式解码方式中的两种解码方式,在其中一个解码方式所使用的P声道解码方式的码率越大时,其中一个解码方式对应的方式比特位的长度越长,或者,其中一个解码方式对应的方式比特位的长度越短。
进一步地,上述N种解码方式可以为非嵌入式解码方式,在使用该非嵌入式解码方式进行解码时,该非嵌入式解码方式对应的方式比特位的长度为1;或者,非嵌入式解码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式解码方式对应的方式比特位的长度为N-1,非嵌入式解码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
举例来说,当接收到的码流的码流格式为如图3所示时,读取码率为KMkb/s的码流中的模式比特位,如果模式比特位的值为0,则在KMkb/s码率下使用P声道解码模式的P声道解码方式对该码流进行解码。
如果模式比特位的值为1,则读取方式比特位上的值:
若方式比特位中的第i个方式比特位上的值为1,则使用码率为KM-ikb/s的P声道解码方式并结合码流中的多声道信息进行嵌入式解码处理。
若方式比特位中的前i-1个比特位上的值为0且i小于N,则继续读取下一位比特位。
若方式比特位中的第i个标志比特位的值为0且i等于N,则进行非嵌入式解码处理。
当接收到的码流的码流格式如图4所示时,读取码率为KMkb/s的码流中的模式比特位,如果模式比特位的值为0,则在KMkb/s码率下使用P声道解码模式的P声道解码方式对该码流进行解码。
如果模式比特位的值为1,则读取方式比特位上的值:
若方式比特位中的第i个标志比特位的值为1且i小于等于N,则使用码率为KM-ikb/s的P声道解码方式并结合码流中的多声道信息进行嵌入式解码处理。
若方式比特位中的第i个标志比特位的值为1且i等于N,则进行非嵌入式多声道解码处理。
当接收到的码流的码流格式如图5所示时,读取码率为KMkb/s的码流中的模式比特位,如果模式比特位的值为0,则在KMkb/s码率下使用P声道解码模式的P声道解码方式对该码流进行解码。
如果模式比特位的值为1,则读取方式比特位上的值:
若方式比特位中的第i个标志比特位的值为1且i等于1,则进行非嵌入式多声道解码处理。
若方式比特位中的第i个标志比特位的值为1且i大于等于2且小于等于N,则使用码率为KM-i-1kb/s的P声道解码方式并结合码流中的多声道信息进行嵌入式解码处理。
当接收到的码流的码流格式如图6所示时,读取码率为KMkb/s的码流中的模式比特位,如果模式比特位的值为0,则在KMkb/s码率下使用P声道解码模式的P声道解码方式对该码流进行解码。
如果模式比特位的值为1,则读取方式比特位上的值:
若方式比特位中的第i个标志比特位的值为1且i等于1,则进行非嵌入式多声道解码处理。
若方式比特位中的第i个标志比特位的值为1且i大于等于2且小于等于N,则使用码率为KM-i-1kb/s的P声道解码方式并结合码流中的多声道信息进行嵌入式解码处理。
上述实施例表明,通过接收音频信号的码流,在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式,根据当前解码方式对码流进行解码。通过码流中的方式比特位上的值标识出所使用的N种解码方式,通过码流中的方式比特位上不同比特位上的值可以标识出不同的解码方式,可以实现在增加或减少方式比特位时,不需要改变用于标识其它原本的方式比特位上的值,自由的标识多种解码方式,解决了解码方案的兼容性问题。
为了更好的解释本发明实施例,下面将在具体的实施场景下描述音频信号编解码器进行音频信号编码和音频信号解码的流程。
在本发明实施例中,音频信号的码流中包括模式比特位和方式比特位。模式比特位上的值为第三预设值,方式比特位上前i-1个比特位上的值为第一预设值,第i个比特位上的值为第二预设值,第三预设值为1时表示音频信号的编解码模式为Q声道编解码模式,第三预设值为0时表示音频信号的编解码模式为P声道编解码模式。第一预设值为0,第二预设值为1。通过本发明实施例获取的码流是通过现有的P声道的码流进行扩展的码流。
场景一
在使用Q声道编码模式时:若Q声道编码模式下包含N种编码方式,N为大于或者等于零的整数,则:
如图8a所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,i等于1且模式比特位之前的码流格式相同时,模式比特位上的值为1,方式比特位中的第1个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图8b所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,i等于1且模式比特位之前的码流格式不同时,模式比特位上的值为1,方式比特位中的第1个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图8c所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,若i为大于等于2且小于等于N的整数且模式比特位之前的码流格式相同时,模式比特位上的值为1,方式比特位中的前i-1个比特位为0,第i个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图8d所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,若i为大于等于2且小于等于N的整数且模式比特位之前的码流格式不同时,模式比特位上的值为1,方式比特位中的前i-1个比特位为0,第i个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图8e所示,若Q声道编码模式下使用非嵌入式编码方式,则模式比特位上的值为1,方式比特位上的值全部为0,该码流还包括非嵌入式码流信息。
例如,一种音频编解码器,未扩展前16.4kb/s的编码码率只有单声道编码模式,码流扩展后,新的码流结构可以支持包括单声道编码模式以及立体声编码模式,且立体声编码模式中可以包含一种嵌入式编码方式和一种非嵌入式编码方式。编码码率16.4kb/s的单声道码流扩展的方法,具体地可以是:
在使用单声道编码模式时,由2bits带宽标志位信息、模式比特位和码率为16.4kb/s的单声道码流信息构成扩展后码率为16.4kb/s的码流,其中,模式比特位上的值为0。
在使用立体声编码模式时,若采用嵌入式编码方式编码,则由2bits带宽标志位信息、模式比特位、方式比特位、码率为13.2kb/s的单声道码流信息和码率为3kb/s的立体声扩展信息构成扩展后码率为16.4kb/s的码流,其中,模式比特位上的值为1、方式比特位上的值为1。
若采用非嵌入式编码方式,则由2bits带宽标志位信息、模式比特位方式比特位和码率为16.2kb/s的除带宽信息之外的非嵌入式码流信息构成扩展后码率为16.4kb/s的码流,其中模式比特位上的值为1,方式比特位上的值为01。
例如,一种音频编解码器,未扩展前24.4kb/s的编码码率只有单声道编码模式,码流扩展后,新的码流结构可以支持包括单声道编码模式以及立体声编码模式,且立体声编码模式中可以包含两种嵌入式编码方式和一种非嵌入式编码方式。编码码率24.4kb/s的单声道码流扩展的方法,具体地可以是:
在使用单声道编码模式时,由2bits带宽标志位信息模式比特位和码率为24.4kb/s的单声道码流信息构成扩展后码率为24.4kb/s的码流,其中,模式比特位上的值为0。
在使用立体声编码模式时,若采用嵌入式立体声编码,采用编码速率为16.4kbps的单声道编码方式时,则由2bits带宽标志位信息、模式比特位、方式比特位、码率为16.4kb/s的单声道码流信息和码率为7.95kb/s的立体声扩展信息构成扩展后码率为24.4kb/s的码流,其中,模式比特位上的值为1、方式比特位上的值为1。
采用编码速率为13.2kbps的单声道编码方式时,则由2bits带宽标志位信息、模式比特位、方式比特位、码率为13.2kb/s的单声道码流信息和码率为10.95kb/s的立体声扩展信息构成扩展后码率为24.4kb/s的码流,其中,模式比特位上的值为1、方式比特位上的值为01。
若采用非嵌入式编码方式,则由2bits带宽标志位信息、模式比特位方式比特位和码率为24.15kb/s的除带宽信息之外的非嵌入式码流信息构成扩展后码率为24.4kb/s的码流,其中模式比特位上的值为1,方式比特位上的值为001。
相应地,解码端的处理过程为:
如图9a所示,读取到模式比特位的值为1,确定该码流的解码模式为Q声道解码模式,若码流中的方式比特位中的第i个比特位为1,则将模式比特位的值重置为0,以及然后使用索引为i的嵌入式解码方式对该码流进行解码得到Q声道解码信号。
如图9b所示,读取到模式比特位的值为1,确定该码流的解码模式为Q声道解码模式,若方式比特位上的值全部为0,则使用非嵌入式解码方式对该码流进行解码得到Q声道解码信号。
例如,一种音频编解码器,解码端接收到码率为16.4kb/s的码流,码流读取具体地可以是:
读取模式比特位。若模式比特位的值为0,则接收到的码流为16.4kbps的单声道码流。可使用单声道解码模式下的单声道解码方式对该码流解码。
若模式比特位的值为1,则需要读取方式比特位上的值,若方式比特位中的只有1个比特位,且值为0,则使用码率为13.2kbps的单声道解码方式结合码率为3kbps的立体声扩展码流进行嵌入式解码。
若方式比特位中的只有1个比特位,且值为1,则进行码率为16.4kb/s的非嵌入式解码。
场景二
在使用Q声道编码模式时:若Q声道编码模式下包含N种编码方式,N为大于或者等于零的整数,则:
如图8a所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,i等于1且模式比特位之前的码流格式相同时,模式比特位上的值为1,方式比特位中的第1个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图8b所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,i等于1且模式比特位之前的码流格式不同时,模式比特位上的值为1,方式比特位中的第1个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图8c所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,若i为大于等于2且小于等于N的整数且模式比特位之前的码流格式相同时,模式比特位上的值为1,方式比特位中的前i-1个比特位为0,第i个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图8d所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,若i为大于等于2且小于N的整数且模式比特位之前的码流格式不同时,模式比特位上的值为1,方式比特位中的前i-1个比特位为0,第i个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图8f所示,若Q声道编码模式下使用非嵌入式编码方式,则模式比特位上的值为1,i等于N时,方式比特位中前i-1个值全部为0,第i个比特位的值为1,该码流还包括非嵌入式码流信息。
例如,一种音频编解码器,未扩展前16.4kb/s的编码码率只有单声道编码模式,码流扩展后,新的码流结构可以支持包括单声道编码模式以及立体声编码模式,且立体声编码模式中可以包含一种嵌入式编码方式和一种非嵌入式编码方式。编码码率16.4kb/s的单声道码流扩展的方法,具体地可以是:
在使用单声道编码模式时,由2bits带宽标志位信息、模式比特位和码率为16.4kb/s的单声道码流信息构成扩展后码率为16.4kb/s的码流,其中,模式比特位上的值为0。
在使用立体声编码模式时,若采用嵌入式编码方式编码,则由2bits带宽标志位信息、模式比特位、方式比特位、码率为13.2kb/s的单声道码流信息和码率为3kb/s的立体声扩展信息构成扩展后码率为16.4kb/s的码流,其中,模式比特位上的值为1、方式比特位上的值为1。
若采用非嵌入式编码方式,则由2bits带宽标志位信息、模式比特位方式比特位和码率为16.2kb/s的除带宽信息之外的非嵌入式码流信息构成扩展后码率为16.4kb/s的码流,其中模式比特位上的值为1,方式比特位上的值为01。
例如,一种音频编解码器,未扩展前24.4kb/s的编码码率只有单声道编码模式,码流扩展后,新的码流结构可以支持包括单声道编码模式以及立体声编码模式,且立体声编码模式中可以包含两种嵌入式编码方式和一种非嵌入式编码方式。编码码率24.4kb/s的单声道码流扩展的方法,具体地可以是:
在使用单声道编码模式时,由2bits带宽标志位信息模式比特位和码率为24.4kb/s的单声道码流信息构成扩展后码率为24.4kb/s的码流,其中,模式比特位上的值为0。
在使用立体声编码模式时,若采用嵌入式立体声编码,采用编码速率为16.4kbps的单声道编码方式时,则由2bits带宽标志位信息、模式比特位、方式比特位、码率为16.4kb/s的单声道码流信息和码率为7.95kb/s的立体声扩展信息构成扩展后码率为24.4kb/s的码流,其中,模式比特位上的值为1、方式比特位上的值为1。
采用编码速率为13.2kbps的单声道编码方式时,则由2bits带宽标志位信息、模式比特位、方式比特位、码率为13.2kb/s的单声道码流信息和码率为10.95kb/s的立体声扩展信息构成扩展后码率为24.4kb/s的码流,其中,模式比特位上的值为1、方式比特位上的值为10。
若采用非嵌入式编码方式,则由2bits带宽标志位信息、模式比特位方式比特位和码率为24.15kb/s的除带宽信息之外的非嵌入式码流信息构成扩展后码率为24.4kb/s的码流,其中模式比特位上的值为1,方式比特位上的值为110。
相应地,解码端的处理过程为:
如图9a所示,读取到模式比特位的值为1,确定该码流的解码模式为Q声道解码模式,若码流中的方式比特位中的第i个比特位为1,则将模式比特位的值重置为0,以及然后使用索引为i的嵌入式解码方式对该码流进行解码得到Q声道解码信号。
如图9c所示,读取到模式比特位的值为1,确定该码流的解码模式为Q声道解码模式,若方式比特位上的值为01,则使用非嵌入式解码方式对该码流进行解码得到Q声道解码信号。
例如,一种音频编解码器,解码端接收到码率为16.4kb/s的码流,码流读取具体地可以是:
读取模式比特位。若模式比特位的值为0,则接收到的码流为16.4kbps的单声道码流。可使用单声道解码模式下的单声道解码方式对该码流解码。
若模式比特位的值为1,则需要读取方式比特位上的值,若方式比特位中的只有1个比特位,且值为1,则使用码率为13.2kbps的单声道解码方式结合码率为3kbps的立体声扩展码流进行嵌入式解码。
若方式比特位中的只有1个比特位,且值为0,则进行码率为16.4kb/s的非嵌入式解码。
场景三
下面以预留比特位在码流中位于首位为例,描述编码后将单声道码流扩展为立体声码流的码流格式,具体为:
在使用Q声道编码模式时:若Q声道编码模式下包含N种编码方式,N为大于或者等于零的整数,则:
如图10a所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,若i等于1时,模式比特位上的值为1,方式比特位中的第1个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图10b所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,若i为大于等于2且小于等于N的整数且模式比特位之前的码流格式相同时,模式比特位上的值为1,方式比特位中的前i-1个比特位为0,第i个比特位为1,码流中还包括码率为KM- ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图10c所示,若Q声道编码模式下使用非嵌入式编码方式,则模式比特位上的值为1,方式比特位上的值全部为0,该码流还包括非嵌入式码流信息。
相应地,解码端的处理过程为:
如图11a所示,读取到模式比特位的值为1,确定该码流的解码模式为Q声道解码模式,若码流中的方式比特位中的第i个比特位为1,则将模式比特位的值重置为0,以及然后使用索引为i的嵌入式解码方式对该码流进行解码得到Q声道解码信号。
如图11b所示,读取到模式比特位的值为1,确定该码流的解码模式为Q声道解码模式,若方式比特位上的值全部为0,则使用非嵌入式解码方式对该码流进行解码得到Q声道解码信号。
场景四
下面以预留比特位在码流中位于首位为例,描述编码后将单声道码流扩展为立体声码流的码流格式,具体为:
在使用Q声道编码模式时:若Q声道编码模式下包含N种编码方式,N为大于或者等于零的整数,则:
如图10a所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,若i等于1且时,模式比特位上的值为1,方式比特位中的第1个比特位为1,码流中还包括码率为KM-ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图10b所示,当Q声道编码模式下所使用的P声道编码方式的码率为KM-ikb/s时,若i为大于等于2且小于等于N的整数且模式比特位之前的码流格式相同时,模式比特位上的值为1,方式比特位中的前i-1个比特位为0,第i个比特位为1,码流中还包括码率为KM- ikb/s的P声道编码方式编码的部分码流信息和多声道码流信息。
如图10d所示,若Q声道编码模式下使用非嵌入式编码方式,则模式比特位上的值为1,方式比特位中的前i-1个比特位为0,第i个比特位为1,该码流还包括非嵌入式码流信息。
相应地,解码端的处理过程为:
如图11a所示,读取到模式比特位的值为1,确定该码流的解码模式为Q声道解码模式,若码流中的方式比特位中的第i个比特位为1,则将模式比特位的值重置为0,以及然后使用索引为i的嵌入式解码方式对该码流进行解码得到Q声道解码信号。
如图11c所示,读取到模式比特位的值为1,确定该码流的解码模式为Q声道解码模式,若方式比特位中的前i-1个比特位为0,第i个比特位为1,则使用非嵌入式解码方式对该码流进行解码得到Q声道解码信号。
基于相同的技术构思,图12示出了本发明实施例提供的一种音频信号编码器,该音频信号编码器可以用于执行音频信号编码的流程。
如图12所示,该音频信号编码器具体包括:
确定单元1201,用于确定音频信号的编码模式;在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,其中,Q为大于1的正整数,N为大于1的正整数;
编码单元1202,用于根据确定单元1201确定的当前编码方式对音频信号进行编码,从而获得音频信号的码流,其中,码流包括方式比特位,码流中的方式比特位用于标识当前编码方式,码流中的方式比特位的长度为i,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位包括i个比特位,i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。
优选地,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
优选地,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。
优选地,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
优选地,N种编码方式包括嵌入式编码方式,当前编码方式为嵌入式编码方式,该嵌入式编码方式使用P声道编码方式进行编码,P为小于Q的正整数。
优选地,N种编码方式包括至少两种嵌入式编码方式,至少两种嵌入式编码方式对应的方式比特位的长度不同,至少两种嵌入式编码方式所使用的P声道编码方式的码率不同。
优选地,对于至少两种嵌入式编码方式中的两种编码方式,在其中一个编码方式所使用的P声道编码方式的码率越大时,其中一个编码方式对应的方式比特位的长度越长,或者,其中一个编码方式对应的方式比特位的长度越短。
优选地,N种编码方式包括非嵌入式编码方式。
优选地,非嵌入式编码方式对应的方式比特位的长度为1;或者,
非嵌入式编码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式编码方式对应的方式比特位的长度为N-1,非嵌入式编码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
优选地,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
基于相同的技术构思,图13示出了本发明实施例提供的一种音频信号解码器,该音频信号解码器可以用于执行音频信号解码的流程。
如图13所示,该音频信号解码器具体包括:
接收单元1301,用于接收音频信号的码流;
确定单元1302,用于在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式,Q声道解码模式包括N种解码方式,当前解码方式是N种解码方式中的一种,码流中的方式比特位的长度为i,Q为大于1的正整数,N为大于1的正整数,其中,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位包括i个比特位,i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值;
解码单元1303,用于根据确定单元1302确定的当前解码方式对码流进行解码。
优选地,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
优选地,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。
优选地,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
优选地,当前编码方式为嵌入式解码方式,该嵌入式解码方式使用P声道解码方式进行解码,P为小于Q的正整数。
优选地,N种解码方式包括至少两种嵌入式解码方式,至少两种嵌入式解码方式对应的方式比特位的长度不同,至少两种嵌入式解码方式所使用的P声道解码方式的码率不同。
优选地,对于至少两种嵌入式解码方式中的两种解码方式,在其中一个解码方式所使用的P声道解码方式的码率越大时,其中一个解码方式对应的方式比特位的长度越长,或者,其中一个解码方式对应的方式比特位的长度越短。
优选地,N种解码方式包括非嵌入式解码方式。
优选地,非嵌入式解码方式对应的方式比特位的长度为1;或者,
非嵌入式解码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式解码方式对应的方式比特位的长度为N-1,非嵌入式解码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
优选地,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
基于相同构思,参见图14,为本发明实施例提供的一种音频信号编码器1400。该音频信号编码器1400可包括:处理器1402和存储器1403。处理器1402用于控制音频信号编码器1400的操作;存储器1403可以包括只读存储器和随机存取存储器,存储有处理器1402可以执行的指令和数据。存储器1403的一部分还可以包括非易失行随机存取存储器(NVRAM)。处理器1402和存储器1403等各组件通过总线1409连接,其中总线1409除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图中将各种总线都标为总线1409。该音频信号编码器1400还可包括:接收器和发送器,接收器可用于接收音频信号,发送器用于发送音频信号的码流。
本发明实施例揭示的一种音频信号编码方法可以应用于处理器1402中,或者由处理器1402实现。在实现过程中,处理流程的各步骤可以通过处理器1402中的硬件的集成逻辑电路或者软件形式的指令完成。处理器1402可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1403,处理器1402读取存储器1403中存储的信息,结合其硬件完成一种音频信号编码方法的步骤。
所述处理器1402确定音频信号的编码模式;在音频信号的编码模式为Q声道编码模式时,在Q声道编码模式所包括的N种编码方式中确定当前编码方式,其中,Q为大于1的正整数,N为大于1的正整数;所述处理器1402根据确定的当前编码方式对音频信号进行编码,从而获得音频信号的码流,其中,码流包括方式比特位,码流中的方式比特位用于标识当前编码方式,码流中的方式比特位的长度为i,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位包括i个比特位,i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值。
优选地,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
优选地,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。
优选地,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
优选地,当前编码方式为嵌入式编码方式,该嵌入式编码方式使用P声道编码方式进行编码,P为小于Q的正整数。
优选地,N种编码方式包括至少两种嵌入式编码方式,至少两种嵌入式编码方式对应的方式比特位的长度不同,至少两种嵌入式编码方式所使用的P声道编码方式的码率不同。
优选地,对于至少两种嵌入式编码方式中的两种编码方式,在其中一个编码方式所使用的P声道编码方式的码率越大时,其中一个编码方式对应的方式比特位的长度越长,或者,其中一个编码方式对应的方式比特位的长度越短。
优选地,N种编码方式包括非嵌入式编码方式。
优选地,非嵌入式编码方式对应的方式比特位的长度为1;或者,
非嵌入式编码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式编码方式对应的方式比特位的长度为N-1,非嵌入式编码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
优选地,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
基于相同构思,参见图15,为本发明实施例提供的一种音频信号解码器1500。该音频信号解码器1500可包括:收发器1501、处理器1502和存储器1503。处理器1502用于控制音频信号解码器1500的操作;存储器1503可以包括只读存储器和随机存取存储器,存储有处理器1502可以执行的指令和数据。存储器1503的一部分还可以包括非易失行随机存取存储器(NVRAM)。收发器1501、处理器1502和存储器1503等各组件通过总线1509连接,其中总线1509除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图中将各种总线都标为总线1509。
本发明实施例揭示的一种音频信号解码方法可以应用于处理器1502中,或者由处理器1502实现。在实现过程中,处理流程的各步骤可以通过处理器1502中的硬件的集成逻辑电路或者软件形式的指令完成。处理器1502可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1503,处理器1502读取存储器1503中存储的信息,结合其硬件完成一种音频信号解码方法的步骤。
所述收发器1501接收音频信号的码流;所述处理器1502在确定码流的解码模式为Q声道解码模式时,根据码流中的方式比特位上的值确定当前解码方式,Q声道解码模式包括N种解码方式,当前解码方式是N种解码方式中的一种,码流中的方式比特位的长度为i,Q为大于1的正整数,N为大于1的正整数,其中,在i大于1并且小于N-1,并且N大于3时,码流中的方式比特位包括i个比特位,i个比特位的前i-1个比特位上的i-1个值相同,i个比特位的第i个比特位上的值不同于i-1个比特位中任一比特位上的值,第i个比特位上的值为预设值;所述处理器1502根据确定的当前解码方式对码流进行解码。
优选地,在i等于1时,码流中的方式比特位包括1个比特位,1个比特位上的值为预设值。
优选地,在i等于N时,码流中的方式比特位包括N个比特位,N个比特位的前N-1个比特位上的N-1个值相同,N个比特位的第N个比特位上的值不同于N-1个比特位中任一比特位上的值,第N个比特位上的值为预设值。
优选地,在i等于N-1,并且N大于2时,码流中的方式比特位包括N-1个比特位,N-1个比特位的前N-2个比特位上的N-2个值相同,N-1个比特位的第N-1个比特位上的值不同于N-2个比特位中任一比特位上的值,第N-1个比特位上的值为预设值;或者,
在i等于N-1,并且N大于2时,码流中的方式比特位仅包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
优选地,当前编码方式为嵌入式解码方式,该嵌入式解码方式使用P声道解码方式进行解码,P为小于Q的正整数。
优选地,N种解码方式包括至少两种嵌入式解码方式,至少两种嵌入式解码方式对应的方式比特位的长度不同,至少两种嵌入式解码方式所使用的P声道解码方式的码率不同。
优选地,对于至少两种嵌入式解码方式中的两种解码方式,在其中一个解码方式所使用的P声道解码方式的码率越大时,其中一个解码方式对应的方式比特位的长度越长,或者,其中一个解码方式对应的方式比特位的长度越短。
优选地,N种解码方式包括非嵌入式解码方式。
优选地,非嵌入式解码方式对应的方式比特位的长度为1;或者,
非嵌入式解码方式对应的方式比特位的长度为N;或者,在N大于2时,非嵌入式解码方式对应的方式比特位的长度为N-1,非嵌入式解码方式对应的方式比特位包括N-1个比特位,N-1个比特位上的N-1个值相同,N-1个比特位中每一比特位上的值均不同于预设值。
优选地,方式比特位为预留的比特位、指定的比特位或拓展后得到的比特位。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。