时域立体声编解码方法和相关产品与流程

文档序号:16979838发布日期:2019-02-26 19:24阅读:178来源:国知局
时域立体声编解码方法和相关产品与流程

本申请涉及音频编解码技术领域,尤其涉及一种时域立体声编解码方法和相关产品。



背景技术:

随着生活质量的提高,人们对高质量音频的需求不断增大。相对于单声道音频,立体声音频具有各声源的方位感和分布感,能够提高信息的清晰度、可懂度和临场感,因而备受人们青睐。

参数立体声编解码技术通过将立体声信号转换为单声道信号和空间感知参数,对多声道信号进行压缩处理,是一种常见的立体声编解码技术。但是由于参数立体声编解码技术通常需要在频域提取空间感知参数,需进行时频变换,使得整个编解码器的时延相对较大。因此在时延要求较严格的情况下,时域立体声编码技术,是一种更好的选择。

传统时域立体声编码技术是在时域将信号下混为两路单声道信号,例如ms编码技术先将左右声道信号下混为中央通道(midchannel)信号和边通道(sidechannel)信号。例如l表示左声道信号,r表示右声道信号,则midchannel信号为0.5*(l+r),midchannel信号表征了左右两个声道之间的相关信息;sidechannel信号为0.5*(l-r),sidechannel信号表征了左右两个声道之间的差异信息。然后,分别对midchannel信号和sidechannel信号采用单声道编码方法编码,对于midchannel信号,通常用相对较多比特数进行编码;对于sidechannel信号,通常用相对较少比特数进行编码。

本申请发明人研究和实践发现,采用传统时域立体声编码技术有时候出现主要信号能量特别小甚至能量缺失的现象,进而导致最终编码质量下降。



技术实现要素:

本申请实施例提供时域立体声编码方法和相关产品。

第一方面,本申请实施例提供了一种时域立体声编码方法,可以包括:确定当前帧的编码模式。在确定所述当前帧的编码模式为非相关性信号编码模式的情况下,采用所述非相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号(即主要声道信号和次要声道信号)。其中,所述非相关性信号编码模式对应的时域下混处理方式为非相关性信号声道组合方案对应的时域下混处理方式,所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。对得到的所述当前帧的主次声道信号进行编码。

其中,当前帧的立体声信号例如由当前帧的左右声道信号组成。

其中,当前帧的编码模式可为多种编码模式中的其中一种。例如当前帧的编码模式可能是如下编码模式中的其中一种:相关性信号编码模式、非相关性信号编码模式、相关性到非相关性信号编码模式、非相关性到相关性信号编码模式。

可以理解,上述方案中需确定当前帧的编码模式,这就表示当前帧的编码模式存在多种可能,这相对于只有唯一一种编码模式的传统方案而言,多种可能的编码模式和多种可能场景之间有利于获得更好的兼容匹配效果。并且,由于引入了针对类反相信号对应的声道组合方案,这使得对于当前帧的立体声信号为类反相信号的情况,有了针对性相对更强的声道组合方案和编码模式,进而有利于提高编码质量。

在一些可能实施方式中,所述方法还可包括:在确定所述当前帧的编码模式为相关性信号编码模式的情况下,采用所述相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,所述相关性信号编码模式对应的时域下混处理方式为相关性信号声道组合方案对应的时域下混处理方式,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。

在一些可能实施方式中,所述方法还可以包括:在确定所述当前帧的编码模式为相关性到非相关性信号编码模式的情况下,采用所述相关性到非相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,所述相关性到非相关性信号编码模式对应的时域下混处理方式为从相关性信号声道组合方案过度到非相关性信号声道组合方案对应的时域下混处理方式。

在一些可能实施方式中,所述方法还可以包括:在确定所述当前帧的编码模式为非相关性到相关性信号编码模式的情况下,采用所述非相关性到相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,所述非相关性到相关性信号编码模式对应的时域下混处理方式为从非相关性信号声道组合方案过度到相关性信号声道组合方案对应的时域下混处理方式。

可以理解,不同的编码模式所对应的时域下混处理方式通常不同。并且每种编码模式也可能对应一种或多种时域下混处理方式。

举例来说,在一些可能的实施方式之中,采用所述非相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,可包括:根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号;或者根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号。

可以理解,音频帧(例如当前帧或前一帧)的声道组合方案(例如非相关性信号声道组合方案或非相关性信号声道组合方案)的声道组合比例因子可以是预设的固定值。当然也可根据音频帧的声道组合方案来确定这个音频帧的声道组合比例因子。

在一些可能实施方式中,可基于音频帧的声道组合比例因子构建相应的下混矩阵,利用声道组合方案对应的下混矩阵来对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号。

举例来说,在根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号的情况下,

又举例来说,在根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号的情况下,

if0≤n<n-delay_com:

ifn-delay_com≤n<n:

其中,所述delay_com表示编码时延补偿。

又举例来说,在根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号的情况下,

if0≤n<n-delay_com:

ifn-delay_com≤n<n-delay_com+nova_1:

ifn-delay_com+nova_1≤n<n:

其中,fade_in(n)表示淡入因子。例如当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。

fade_out(n)表示淡出因子。例如当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。

其中,nova_1表示过渡处理长度。nova_1取值可根据具体场景需要设定。nova_1例如可等于3/n或者nova_1可为小于n的其它值。

又举例来说,在采用所述相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号的情况下,

在上述举例中,所述xl(n)表示所述当前帧的左声道信号。所述xr(n)表示所述当前帧的右声道信号。所述y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号;所述x(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。

其中,在上述举例中,所述n表示样点序号。例如n=0,1,…,n-1。

其中,在上述举例中,delay_com表示编码时延补偿。

m11表示所述前一帧的相关性信号声道组合方案对应的下混矩阵,m11基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。

所述m12表示所述前一帧的非相关性信号声道组合方案对应的下混矩阵,所述m12基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述m22表示所述当前帧的非相关性信号声道组合方案对应的下混矩阵,所述m22基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述m21表示所述当前帧的相关性信号声道组合方案对应的下混矩阵,所述m21基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。

其中,所述m21可能存在多种形式,例如:

其中,所述ratio表示当前帧的相关性信号声道组合方案对应的声道组合比例因子。

其中,所述m22可能存在多种形式,例如:

其中,α1=ratio_sm;α2=1-ratio_sm。所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,所述m12可能存在多种形式,例如:

其中,α1_pre=tdm_last_ratio_sm;α2_pre=1-tdm_last_ratio_sm。tdm_last_ratio_sm表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,当前帧的左右声道信号具体可以是所述当前帧的原始左右声道信号(原始左右声道信号是未经时域预处理的左右声道信号,例如可以是采样得到左右声道信号),或者可是所述当前帧的经时域预处理的左右声道信号;或者可以是当前帧的经时延对齐处理的左右声道信号。

具体例如,

其中,所述xl(n)表示所述当前帧的原始左声道信号,所述xr(n)表示所述当前帧的原始右声道信号;所述xl_hp(n)表示所述当前帧的经时域预处理的左声道信号,所述xr_hp(n)表示所述当前帧的经时域预处理的右声道信号;所述x′l(n)表示所述当前帧的经时延对齐处理的左声道信号,所述x′r(n)表示所述当前帧的经时延对齐处理的右声道信号。

第二方面,本申请实施例还提供一种时域立体声解码方法,可以包括:

解码码流以得到当前帧的主次声道解码信号。确定所述当前帧的解码模式。在确定所述当前帧的解码模式为非相关性信号解码模式的情况,采用所述非相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述非相关性信号解码模式对应的时域上混处理方式为非相关性信号声道组合方案对应的时域上混处理方式,所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。

其中,当前帧的解码模式可为多种解码模式中的其中一种。例如当前帧的解码模式可能是如下解码模式中的其中一种:相关性信号解码模式、非相关性信号解码模式、相关性到非相关性信号解码模式、非相关性到相关性信号解码模式。

可以理解,上述方案中需确定当前帧的解码模式,这就表示当前帧的解码模式存在多种可能,这相对于只有唯一一种解码模式的传统方案而言,多种可能的解码模式和多种可能场景之间有利于获得更好的兼容匹配效果。并且,由于引入了针对类反相信号对应的声道组合方案,这使得对于当前帧的立体声信号为类反相信号的情况,有了针对性相对更强的声道组合方案和解码模式,进而有利于提高解码质量。

在一些可能实施方式中,所述方法还可包括:

在确定所述当前帧的解码模式为相关性信号解码模式的情况下,采用所述相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述相关性信号解码模式对应的时域上混处理方式为相关性信号声道组合方案对应的时域上混处理方式,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。

在一些可能实施方式中,所述方法还可包括:在确定所述当前帧的解码模式为相关性到非相关性信号解码模式的情况下,采用所述相关性到非相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述相关性到非相关性信号解码模式对应的时域上混处理方式为从相关性信号声道组合方案过度到非相关性信号声道组合方案对应的时域上混处理方式。

在一些可能实施方式中,所述方法还可包括:在确定所述当前帧的解码模式为非相关性到相关性信号解码模式的情况下,采用所述非相关性到相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述非相关性到相关性信号解码模式对应的时域上混处理方式为从非相关性信号声道组合方案过度到相关性信号声道组合方案对应的时域上混处理方式。

可以理解,不同的解码模式所对应的时域上混处理方式通常不同。并且每种解码模式也可能对应一种或多种时域上混处理方式。

举例来说,在一些可能的实施方式中,所述采用所述非相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,包括:

根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号;或者根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。

在一些可能实施方式中,可基于音频帧的声道组合比例因子构建相应的上混矩阵,利用声道组合方案对应的上混矩阵,来对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。

举例来说,在根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,

又举例来说,在根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,

if0≤n<n-upmixing_delay:

ifn-upmixing_delay≤n<n:

其中,所述delay_com表示编码时延补偿。

又举例来说,在根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,

if0≤n<n-upmixing_delay:

ifn-upmixing_delay≤n<n-upmixing_delay+nova_1:

ifn-upmixing_delay+nova_1≤n<n:

其中,所述表示所述当前帧的左声道解码信号,所述表示所述当前帧的右声道重建信号,所述表示所述当前帧的主要声道解码信号,所述表示所述当前帧的次要声道解码信号;

其中,所述nova_1表示过渡处理长度。

其中,fade_in(n)表示淡入因子。例如当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。

其中,fade_out(n)表示淡出因子。例如当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。

其中,nova_1表示过渡处理长度。nova_1取值可根据具体场景需要设定。nova_1例如可等于3/n或者nova_1可为小于n的其它值。

又举例来说,在根据所述当前帧的相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,

在上述举例中,所述表示所述当前帧的左声道解码信号。所述表示所述当前帧的右声道重建信号。所述表示所述当前帧的主要声道解码信号。所述表示所述当前帧的次要声道解码信号。

其中,在上述举例中,所述n表示样点序号。例如n=0,1,…,n-1。

其中,在上述举例中,所述upmixing_delay表示解码时延补偿;

表示所述前一帧的相关性信号声道组合方案对应的上混矩阵,所述基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。

所述表示所述当前帧的非相关性信号声道组合方案对应的上混矩阵,所述基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述表示所述前一帧的非相关性信号声道组合方案对应的上混矩阵,所述基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述表示所述当前帧的相关性信号声道组合方案对应的上混矩阵,所述基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。

其中,所述可能存在多种形式,例如:

其中,α1=ratio_sm;α2=1-ratio_sm;所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,所述可能存在多种形式,例如:

其中,α1_pre=tdm_last_ratio_sm;α2_pre=1-tdm_last_ratio_sm。

其中,tdm_last_ratio_sm表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,所述可能存在多种形式,例如:

其中,所述ratio表示当前帧的相关性信号声道组合方案对应的声道组合比例因子。

第三方面,本申请实施例还提供一种时域立体声编码装置,可以包括:相互耦合的处理器和存储器。其中,所述处理器可用于执行第一方面中的任意一种立体声编码方法的部分或全部步骤。

第四方面,本申请实施例还提供一种时域立体声解码装置,可以包括:相互耦合的处理器和存储器。其中,所述处理器可用于执行第二方面中的任意一种立体声编码方法的部分或全部步骤。

第五方面,本申请实施例提供一种时域立体声编码装置,包括用于实施第一方面的任意一种方法的若干个功能单元。

第六方面,本申请实施例提供一种时域立体声解码装置,包括用于实施第二方面的任意一种方法的若干个功能单元。

第七方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储了程序代码,其中,所述程序代码包括用于执行第一方面的任意一种方法的部分或全部步骤的指令。

第八方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储了程序代码,其中,所述程序代码包括用于执行第二方面的任意一种方法的部分或全部步骤的指令。

第九方面,本申请实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行第一方面的任意一种方法的部分或全部步骤。

第十方面,本申请实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行第二方面的任意一种方法的部分或全部步骤。

附图说明

下面将对本申请实施例或背景技术中所涉及的附图进行说明。

图1是本申请实施例提供的一种类反相信号的示意图;

图2是本申请实施例提供的一种音频编码方法的流程示意图;

图3是本申请实施例提供的一种音频解码模式确定方法的流程示意图;

图4是本申请实施例提供的另一种音频编码方法的流程示意图;

图5是本申请实施例提供的一种音频解码方法的流程示意图;

图6是本申请实施例提供的另一种音频编码方法的流程示意图;

图7是本申请实施例提供的另一种音频解码方法的流程示意图;

图8是本申请实施例提供的一种时域立体声参数的确定方法的流程示意图;

图9-a是本申请实施例提供的另一种音频编码方法的流程示意图;

图9-b是本申请实施例提供的一种计算当前帧非相关性信号声道组合方案对应的声道组合比例因子并编码的方法的流程示意图;

图9-c是本申请实施例提供的一种计算当前帧左右声道之间的幅度相关性差异参数的方法的流程示意图;

图9-d是本申请实施例提供的一种将当前帧左右声道之间的幅度相关性差异参数转换为声道组合比例因子的方法的流程示意图;

图10是本申请实施例提供的另一种音频解码方法的流程示意图;

图11-a是本申请实施例提供的一种装置的示意图;

图11-b是本申请实施例提供的另一种装置的示意图;

图11-c是本申请实施例提供的另一种装置的示意图;

图12-a是本申请实施例提供的另一种装置的示意图;

图12-b是本申请实施例提供的另一种装置的示意图;

图12-c是本申请实施例提供的另一种装置的示意图。

具体实施方式

下面结合本申请实施例中的附图对本申请实施例进行描述。

本申请的说明书和权利要求书以及上述附图之中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包括。例如包括一系列步骤或单元的过程、方法、系统或产品或设备没有限定于已列出的步骤或单元,而是可选地还可包括没有列出的步骤或单元,或者可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。另外来说,术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。

需要说明,由于本申请各实施例方案针对的时域场景,因此为了简化描述,时域信号可简称“信号”。例如,左声道时域信号可简称“左声道信号”。又例如,右声道时域信号可以简称“右声道信号”。又例如,单声道时域信号可简称“单声道信号”。又例如参考声道时域信号可简称“参考声道信号”。又例如主要声道时域信号可简称“主要声道信号”。次要声道时域信号可简称“次要声道信号”。又例如中央通道(midchannel)时域信号可以简称“中央通道信号”。又例如边通道(sidechannel)时域信号可简称“边通道信号”。其他情况可以此类推。

需要说明,本申请各实施例中,左声道时域信号和右声道时域信号可合称“左右声道时域信号”或可合称“左右声道信号”。也就是说,左右声道时域信号包括左声道时域信号和右声道时域信号。又例如当前帧经时延对齐处理的左右声道时域信号包括当前帧经时延对齐处理的左声道时域信号和当前帧经时延对齐处理的右声道时域信号。类似的,主要声道信号和次要声道信号可合称“主次声道信号”。也就是说,主次声道信号包括主要声道信号和次要声道信号。又例如主次声道解码信号包括主要声道解码信号和次要声道解码信号。又例如左右声道重建信号包括左声道重建信号和右声道重建信号。以此类推。

其中,例如传统ms编码技术先将左右声道信号下混为中央通道(midchannel)信号和边通道(sidechannel)信号。例如l表示左声道信号,r表示右声道信号,则midchannel信号为0.5*(l+r),midchannel信号表征了左右两个声道之间的相关信息。sidechannel信号为0.5*(l-r),sidechannel信号表征了左右两个声道之间的差异信息。然后,分别对midchannel信号和sidechannel信号采用单声道编码方法编码。其中,对于midchannel信号,通常用相对较多比特数进行编码;对于sidechannel信号,通常用相对较少比特数进行编码。

进一步的,为了提高编码质量,一些方案通过对左右声道的时域信号进行分析,提取用于指示时域下混处理中左右声道所占比例的时域立体声参数。提出这种方法的目的是:当立体声左右声道信号之间的能量相差比较大的时候,有利于提升时域下混信号中的主要声道的能量,降低次要声道的能量。例如,l表示左声道信号,r表示右声道信号,那么,则主要声道(primarychannel)信号记作y,y=alpha*l+beta*r,其中,y表征了两个声道之间的相关信息。次要声道(secondarychannel)记作x,x=alpha*l-beta*r,x表征了两个声道之间的差异信息。alpha和beta为0到1的实数。

参见图1,图1示出了一种左声道信号和右声道信号的幅度变化情况。在时域某一时刻上,左声道信号、右声道信号的对应样点之间幅度的绝对值基本相同,但是符号相反,这种就是典型的类反相信号。图1只是给出了类反相信号的一个典型例子。实际上类反相信号是指左右声道信号之间的相位差接近180度的立体声信号。例如可将左右声道信号之间的相位差属于[180-θ,180+θ]的立体声信号称作类反相信号,其中,θ可取0°到90°之间的任意角度,例如θ可等于0°、5°、15°、17°、20°、30°、40°等角度。

类似的,类正相信号是指左右声道信号之间的相位差接近0度的立体声信号。例如可将左右声道信号之间的相位差属于[-θ,θ]的立体声信号称作类正相信号。θ可取0°到90°之间的任意角度,例如θ可等于0°、5°、15°、17°、20°、30°、40°等角度。

当左右声道信号为类正相信号时,时域下混处理生成的主要声道信号能量往往明显大于次要声道信号的能量。若用较多的比特数对主要声道信号进行编码,同时用较少的比特数对次要声道信号进行编码,那么有利于获得较好的编码效果。但是,当左右声道信号为类反相信号时,如果采用相同的时域下混处理方法,则生成的主要声道信号能量会出现特别小甚至能量缺失的现象,进而导致最终编码质量下降。

下面继续探讨一些有利于提升立体声编解码质量的技术方案。

本申请实施例提及的编码装置和解码装置可为具有采集、存储、向外传输话音信号等功能的装置,具体的,编码装置和解码装置例如可为手机、服务器、平板电脑、个人电脑或笔记本电脑等等。

可以理解,本申请方案中,左右声道信号是指立体声信号的左右声道信号。立体声信号可以是原始的立体声信号,也可以是多声道信号中包含的两路信号组成的立体声信号,还可以是由多声道信号中包含的多路信号联合产生的两路信号组成的立体声信号。其中,立体声编码方法,也可以是多声道编码中使用的立体声编码方法。立体声编码装置,也可以是多声道编码装置中使用的立体声编码装置。立体声解码方法,也可以是多声道解码中使用的立体声解码方法。立体声解码装置,也可以是多声道解码装置中使用的立体声解码装置。本申请实施例中的音频编码方法例如针对的是立体声编码场景,本申请实施例中的音频解码方法例如针对的是立体声解码场景。

下面首先提供一种音频编码模式确定方法,可包括:确定当前帧的声道组合方案,基于前一帧和当前帧的声道组合方案确定当前帧的编码模式。

参见图2,图2是本申请实施例提供的一种音频编码方法的流程示意图。一种音频编码方法的相关步骤可由编码装置来实施,例如可包括如下步骤:

201、确定当前帧的声道组合方案。

其中,所述当前帧的声道组合方案为多种声道组合方案中的其中一种。例如所述多种声道组合方案包括非相关性信号声道组合方案(anticorrelatedsignalchannelcombinationscheme)和相关性信号声道组合方案(correlatedsignalchannelcombinationscheme)。其中,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。可以理解,类正相信号对应的声道组合方案适用于类正相信号,类反相信号对应的声道组合方案适用于类反相信号。

202、基于前一帧和当前帧的声道组合方案确定当前帧的编码模式。

此外,若当前帧为第一帧(即不存在当前帧的前一帧)的情况下,可以基于当前帧的声道组合方案确定当前帧的编码模式。或者,也可以将默认的某种编码模式作为当前帧的编码模式。

其中,所述当前帧的编码模式为多种编码模式中的其中一种。例如所述多种编码模式可包括:相关性信号到非相关性信号编码模式(correlated-to-anticorrelatedsignalcodingswitchingmode)、非相关性信号到相关性信号编码模式(anticorrelated-to-correlatedsignalcodingswitchingmode)、相关性信号编码模式(correlatedsignalcodingmode))和非相关性信号编码模式(anticorrelatedsignalcodingmode)等。

其中,相关性信号到非相关性信号编码模式对应的时域下混模式例如可称为“相关性信号到非相关性信号下混模式”(correlated-to-anticorrelatedsignaldownmixswitchingmode)。非相关性信号到相关性信号编码模式对应的时域下混模式例如可称为“非相关性信号到相关性信号下混模式”(anticorrelated-to-correlatedsignaldownmixswitchingmode)。相关性信号编码模式对应的时域下混模式例如可称为“相关性信号下混模式”(correlatedsignaldownmixmode)。非相关性信号编码模式对应的时域下混模式例如可称为“非相关性信号下混模式”(anticorrelatedsignaldownmixmode)。

可以理解,本申请实施例中对编码模式、解码模式和声道组合方案等对象的命名都是示意性的,在实际应用中也可能选用其他名称。

203、基于当前帧的编码模式所对应的时域下混处理对当前帧的左右声道信号进行时域下混处理,以得到当前帧的主次声道信号。

其中,对当前帧的左右声道信号进行时域下混处理可得到当前帧的主次声道信号,通过进一步对主次声道信号进行编码以得到码流。可进一步将当前帧的声道组合方案标识(当前帧的声道组合方案标识用于指示当前帧的声道组合方案)写入码流,以便于解码装置基于码流中包含的当前帧的声道组合方案标识来确定当前帧的声道组合方案。

其中,根据前一帧的声道组合方案和所述当前帧的声道组合方案确定所述当前帧的编码模式的具体实现方式可以是多种多样的,

具体例如,在一些可能的实施方式中,根据前一帧的声道组合方案和所述当前帧的声道组合方案确定所述当前帧的编码模式,可包括:

在前一帧的声道组合方案为相关性信号声道组合方案,并且当前帧的声道组合方案为非相关性信号声道组合方案的情况下,确定所述当前帧的编码模式为相关性信号到非相关性信号编码模式,其中,相关性信号到非相关性信号编码模式采用从相关性信号声道组合方案过渡到非相关性信号声道组合方案对应的下混处理方法进行时域下混处理。

或者,在前一帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的声道组合方案为非相关性信号声道组合方案的情况下,确定所述当前帧的编码模式为非相关性信号编码模式,所述非相关性信号编码模式采用非相关性信号声道组合方案对应的下混处理方法进行时域下混处理。

或者,在前一帧的声道组合方案为非相关性信号声道组合方案,并且当前帧的声道组合方案为相关性信号声道组合方案的情况下,确定所述当前帧的编码模式为非相关性信号到相关性信号编码模式,所述非相关性信号到相关性信号编码模式采用从非相关性信号声道组合方案过度到相关性信号声道组合方案对应的下混处理方法进行时域下混处理。其中,非相关性信号到相关性信号编码模式对应的时域下混处理方式具体可为分段时域下混方式,具体可以根据所述当前帧和前一帧的声道组合方案对所述当前帧的左右声道信号进行分段时域下混处理。

或者,当前一帧的声道组合方案为相关性信号声道组合方案,当前帧的声道组合方案为相关性信号声道组合方案,确定为所述当前帧的编码模式为相关性信号编码模式,所述相关性信号编码模式采用相关性信号声道组合方案对应的下混处理方法进行时域下混处理。

可以理解,不同的编码模式所对应的时域下混处理方式通常不同。并且每种编码模式也可能对应一种或多种时域下混处理方式。

例如,在一些可能实施方式中,在确定所述当前帧的编码模式为相关性信号编码模式的情况下,采用所述相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,所述相关性信号编码模式对应的时域下混处理方式为相关性信号声道组合方案对应的时域下混处理方式。

又例如,在一些可能实施方式中,在确定所述当前帧的编码模式为非相关性信号编码模式的情况下,采用所述非相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号。所述非相关性信号编码模式对应的时域下混处理方式为非相关性信号声道组合方案对应的时域下混处理方式。

又例如,在一些可能实施方式中,在确定所述当前帧的编码模式为相关性到非相关性信号编码模式的情况下,采用相关性到非相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,所述相关性到非相关性信号编码模式对应的时域下混处理方式为从相关性信号声道组合方案过度到非相关性信号声道组合方案对应的时域下混处理方式。其中,所述相关性信号到非相关性信号编码模式对应的时域下混处理方式具体可为分段时域下混方式,具体可根据所述当前帧和前一帧的声道组合方案对所述当前帧的左右声道信号进行分段时域下混处理。

又例如,在一些可能实施方式中,在确定所述当前帧的编码模式为非相关性到相关性信号编码模式的情况下,采用所述非相关性到相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,所述非相关性到相关性信号编码模式对应的时域下混处理方式为从非相关性信号声道组合方案过度到相关性信号声道组合方案对应的时域下混处理方式。

可以理解,不同的编码模式所对应的时域下混处理方式通常不同。并且每种编码模式也可能对应一种或多种时域下混处理方式。

举例来说,在一些可能的实施方式之中,采用所述非相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,可包括:根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号;或者根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号。

可以理解,上述方案中需确定当前帧的声道组合方案,这就表示当前帧的声道组合方案存在多种可能,这相对于只有唯一一种声道组合方案的传统方案而言,多种可能的声道组合方案和多种可能场景之间有利于获得更好的兼容匹配效果。上述方案中需基于前一帧的声道组合方案和所述当前帧的声道组合方案来确定当前帧的编码模式,当前帧的编码模式存在多种可能,而这相对于只有唯一一种编码模式的传统方案而言,多种可能的编码模式和多种可能场景之间有利于获得更好的兼容匹配效果。

具体例如,在所述当前帧和前一帧的声道组合方案不同的情况下,可确定当前帧的编码模式例如可能为相关性信号到非相关性信号编码模式、或为非相关性信号到相关性信号编码模式,那么,可根据所述当前帧和前一帧的声道组合方案对所述当前帧的左右声道信号进行分段时域下混处理。

由于在所述当前帧和前一帧的声道组合方案不同的情况下引入了对所述当前帧的左右声道信号进行分段时域下混处理的机制,分段时域下混处理机制有利于实现声道组合方案的平滑过度,进而有利于提高编码质量。

相应的,下面针对时域立体声的解码场景进行举例说明。

参见图3,下面还提供一种音频解码模式确定方法,音频解码模式确定方法的相关步骤可由解码装置来实施,方法具体可包括:

301、基于码流中的当前帧的声道组合方案标识确定当前帧的声道组合方案。

302、根据前一帧的声道组合方案和所述当前帧的声道组合方案,确定所述当前帧的解码模式。

其中,所述当前帧的解码模式为多种解码模式中的其中一种。例如所述多种解码模式可包括:相关性信号到非相关性信号解码模式(correlated-to-anticorrelatedsignaldecodingswitchingmode)、非相关性信号到相关性信号解码模式(anticorrelated-to-correlatedsignaldecodingswitchingmode)、相关性信号解码模式(correlatedsignaldecodingmode))和非相关性信号解码模式(anticorrelatedsignaldecodingmode)等。

其中,相关性信号到非相关性信号解码模式对应的时域上混模式例如可称为“相关性信号到非相关性信号上混模式”(correlated-to-anticorrelatedsignalupmixswitchingmode)。非相关性信号到相关性信号解码模式对应的时域上混模式例如可称为“非相关性信号到相关性信号上混模式”(anticorrelated-to-correlatedsignalupmixswitchingmode)。相关性信号解码模式对应的时域上混模式例如可称为“相关性信号上混模式”(correlatedsignalupmixmode)。非相关性信号解码模式对应的时域上混模式例如可称为“非相关性信号上混模式”(anticorrelatedsignalupmixmode)。

可以理解,本申请实施例中对编码模式、解码模式和声道组合方案等对象的命名都是示意性的,在实际应用中也可能选用其他名称。

在一些可能的实施方式中,根据前一帧的声道组合方案和所述当前帧的声道组合方案确定所述当前帧的解码模式,包括:

在前一帧的声道组合方案为相关性信号声道组合方案,并且当前帧的声道组合方案为非相关性信号声道组合方案的情况下,确定所述当前帧的解码模式为相关性信号到非相关性信号解码模式,其中,相关性信号到非相关性信号解码模式采用从相关性信号声道组合方案过渡到非相关性信号声道组合方案对应的上混处理方法进行时域上混处理。

或者,

在前一帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的声道组合方案为非相关性信号声道组合方案的情况下,确定所述当前帧的解码模式为非相关性信号解码模式,所述非相关性信号解码模式采用非相关性信号声道组合方案对应的上混处理方法进行时域上混处理。

或者,

在前一帧的声道组合方案为非相关性信号声道组合方案,并且当前帧的声道组合方案为相关性信号声道组合方案的情况下,确定所述当前帧的解码模式为非相关性信号到相关性信号解码模式,所述非相关性信号到相关性信号解码模式采用从非相关性信号声道组合方案过度到相关性信号声道组合方案对应的上混处理方法进行时域上混处理。

或者,

当前一帧的声道组合方案为相关性信号声道组合方案,当前帧的声道组合方案为相关性信号声道组合方案,确定为所述当前帧的解码模式为相关性信号解码模式,所述相关性信号解码模式采用相关性信号声道组合方案对应的上混处理方法进行时域上混处理。

例如解码装置在确定所述当前帧的解码模式为非相关性信号解码模式的情况下,采用所述非相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。

其中,左右声道重建信号可为左右声道解码信号,或可通过将左右声道重建信号进行时延调整处理和/或时域后处理以得到左右声道解码信号。

其中,所述非相关性信号解码模式对应的时域上混处理方式为非相关性信号声道组合方案对应的时域上混处理方式,所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。

其中,当前帧的解码模式可为多种解码模式中的其中一种。例如当前帧的解码模式可能是如下解码模式中的其中一种:相关性信号解码模式、非相关性信号解码模式、相关性到非相关性信号解码模式、非相关性到相关性信号解码模式。

可以理解,上述方案中需确定当前帧的解码模式,这就表示当前帧的解码模式存在多种可能,这相对于只有唯一一种解码模式的传统方案而言,多种可能的解码模式和多种可能场景之间有利于获得更好的兼容匹配效果。并且,由于引入了针对类反相信号对应的声道组合方案,这使得对于当前帧的立体声信号为类反相信号的情况下,有了针对性相对更强的声道组合方案和解码模式,进而有利于提高解码质量。

又例如,解码装置在确定所述当前帧的解码模式为相关性信号解码模式的情况下,采用所述相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述相关性信号解码模式对应的时域上混处理方式为相关性信号声道组合方案对应的时域上混处理方式,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。

又例如,解码装置在确定所述当前帧的解码模式为相关性到非相关性信号解码模式的情况下,采用所述相关性到非相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述相关性到非相关性信号解码模式对应的时域上混处理方式为从相关性信号声道组合方案过度到非相关性信号声道组合方案对应的时域上混处理方式。

又例如,解码装置在确定所述当前帧的解码模式为非相关性到相关性信号解码模式的情况下,采用所述非相关性到相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述非相关性到相关性信号解码模式对应的时域上混处理方式为从非相关性信号声道组合方案过度到相关性信号声道组合方案对应的时域上混处理方式。

可以理解,不同的解码模式所对应的时域上混处理方式通常不同。并且每种解码模式也可能对应一种或多种时域上混处理方式。

可以理解,上述方案中需确定当前帧的声道组合方案,这就表示当前帧的声道组合方案存在多种可能,这相对于只有唯一一种声道组合方案的传统方案而言,多种可能的声道组合方案和多种可能场景之间有利于获得更好的兼容匹配效果。上述方案中需基于前一帧的声道组合方案和所述当前帧的声道组合方案来确定当前帧的解码模式,当前帧的解码模式存在多种可能,而这相对于只有唯一一种解码模式的传统方案而言,多种可能的解码模式和多种可能场景之间有利于获得更好的兼容匹配效果。

进一步的,解码装置基于当前帧的解码模式所对应的时域上混处理对当前帧的主次声道解码信号进行时域上混处理,以得到当前帧的左右声道重建信号。

下面举例编码装置确定当前帧的声道组合方案的一些具体实现方式。编码装置确定当前帧的声道组合方案的具体实现方式是多种多样的。

举例来说,在一些可能实施方式中,确定当前帧的声道组合方案可包括:通过对所述当前帧进行至少一次声道组合方案判决,确定当前帧的声道组合方案。

具体例如,所述确定当前帧的声道组合方案包括:对所述当前帧进行声道组合方案初始判决,以确定所述当前帧的初始声道组合方案。基于所述当前帧的初始声道组合方案对所述当前帧进行声道组合方案修正判决,以确定所述当前帧的声道组合方案。此外,也可直接将所述当前帧的初始声道组合方案作为所述当前帧的声道组合方案,即所述当前帧的声道组合方案可为:通过对所述当前帧进行声道组合方案初始判决而确定的所述当前帧的初始声道组合方案。

例如,对所述当前帧进行声道组合方案初始判决可包括:利用所述当前帧的左右声道信号确定所述当前帧的立体声信号的信号正反相类型;利用所述当前帧的立体声信号的信号正反相类型和前一帧的声道组合方案确定所述当前帧的初始声道组合方案。其中,所述当前帧的立体声信号的信号正反相类型可以是类正相信号或类反相信号。所述当前帧的立体声信号的信号正反相类型可通过所述当前帧的信号正反相类型标识(信号正反相类型标识例如用tmp_sm_flag表示)来指示。具体例如,当所述当前帧的信号正反相类型标识取值为“1”时,指示所述当前帧的立体声信号的信号正反相类型为类正相信号,当所述当前帧的信号正反相类型标识取值为“0”时,指示所述当前帧的立体声信号的信号正反相类型为类反相信号,反之亦可。

音频帧(例如前一帧或当前帧)的声道组合方案可通过所述音频帧的声道组合方案标识来指示。例如当音频帧的声道组合方案标识取值为“0”时,指示该音频帧的声道组合方案为相关性信号声道组合方案。当音频帧的声道组合方案标识取值为“1”时,指示该音频帧的声道组合方案为非相关性信号声道组合方案,反之亦可。

类似的,音频帧(例如前一帧或当前帧)的初始声道组合方案可通过所述音频帧的初始声道组合方案标识(初始声道组合方案标识例如用tdm_sm_flag_loc表示)来指示。例如当音频帧的初始声道组合方案标识取值为“0”时,指示该音频帧的初始声道组合方案为相关性信号声道组合方案。又例如当音频帧的初始声道组合方案标识取值为“1”时,指示该音频帧的初始声道组合方案为非相关性信号声道组合方案,反之亦可。

其中,利用所述当前帧的左右声道信号确定所述当前帧的立体声信号的信号正反相类型可包括:计算所述当前帧的左右声道信号之间的相关性值xorr,在所述xorr小于或者等于第一阈值的情况下确定所述当前帧的立体声信号的信号正反相类型为类正相信号,在所述xorr大于第一阈值的情况下确定所述当前帧的立体声信号的信号正反相类型为类反相信号。进一步的,若利用所述当前帧的信号正反相类型标识来指示所述当前帧的立体声信号的信号正反相类型,则在确定所述当前帧的立体声信号的信号正反相类型为类正相信号的情况下,可置所述当前帧的信号正反相类型标识的取值指示出所述当前帧的立体声信号的信号正反相类型为类正相信号;那么,在确定所述当前帧的信号正反相类型为类正相信号的情况下,可置所述当前帧的信号正反相类型标识的取值指示出所述当前帧的立体声信号的信号正反相类型为类反相信号。

其中,第一阈值的取值范围例如可为(0.5,1.0),例如可等于0.5、0.85、0.75、0.65或0.81等。

具体例如,音频帧(例如前一帧或当前帧)的信号正反相类型标识取值为“0”时,指示该音频帧的立体声信号的信号正反相类型为类正相信号;音频帧(例如前一帧或当前帧)的信号正反相类型标识取值为“1”时,指示该音频帧的立体声信号的信号正反相类型为类反相信号,以此类推。

其中,利用所述当前帧的立体声信号的信号正反相类型和前一帧的声道组合方案确定所述当前帧的初始声道组合方案,例如可包括:

在所述当前帧的立体声信号的信号正反相类型为类正相信号,且前一帧的声道组合方案为相关性信号声道组合方案的情况下,确定所述当前帧的初始声道组合方案为相关性信号声道组合方案;在所述当前帧的立体声信号的信号正反相类型为类反相信号,且前一帧的声道组合方案为非相关性信号声道组合方案的情况下,确定所述当前帧的初始声道组合方案为非相关性信号声道组合方案。

或者,

在所述当前帧的立体声信号的信号正反相类型为类正相信号,并且前一帧的声道组合方案为非相关性信号声道组合方案的情况下,如果所述当前帧的左右声道信号的信噪比均小于第二阈值,确定所述当前帧的初始声道组合方案为相关性信号声道组合方案;如果所述当前帧的左声道信号和/或右声道信号的信噪比大于或等于第二阈值,确定所述当前帧的初始声道组合方案为非相关性信号声道组合方案。

或者,

在所述当前帧的立体声信号的信号正反相类型为类反相信号,并且前一帧的声道组合方案为相关性信号声道组合方案的情况下,如果所述当前帧的左右声道信号的信噪比均小于第二阈值,确定所述当前帧的初始声道组合方案为非相关性信号声道组合方案;如果所述当前帧的左声道信号和/或右声道信号的信噪比大于或等于第二阈值,确定所述当前帧的初始声道组合方案为相关性信号声道组合方案。

其中,第二阈值的取值范围例如可为[0.8,1.2],例如可等于0.8、0.85、0.9、1、1.1或1.18等。

其中,基于所述当前帧的初始声道组合方案对所述当前帧进行声道组合方案修正判决可以包括:根据前一帧的声道组合比例因子修正标识、所述当前帧的立体声信号的信号正反相类型和所述当前帧的初始声道组合方案,确定所述当前帧的声道组合方案。

其中,当前帧的声道组合方案标识可记作tdm_sm_flag,当前帧的声道组合比例因子修正标识记作tdm_sm_modi_flag。例如声道组合比例因子修正标识取值为0,表示无需进行声道组合比例因子的修正,声道组合比例因子修正标识取值为1,表示需进行声道组合比例因子的修正。当然,声道组合比例因子修正标识也可选用其它不同的取值来表示是否需进行声道组合比例因子的修正。

具体例如,基于所述当前帧的声道组合方案初始判决结果对所述当前帧进行声道组合方案修正判决,可包括:

如果前一帧的声道组合比例因子修正标识指示需修正声道组合比例因子,将非相关性信号声道组合方案作为所述当前帧的声道组合方案;如果前一帧的声道组合比例因子修正标识指示无需修正声道组合比例因子,判决当前帧是否满足切换条件,基于当前帧是否满足切换条件的判决结果确定当前帧的声道组合方案。

其中,所述基于当前帧是否满足切换条件的判决结果确定当前帧的声道组合方案,可以包括:

在前一帧的声道组合方案与所述当前帧的初始声道组合方案不同,并且所述当前帧满足切换条件,且所述当前帧的初始声道组合方案为相关性信号声道组合方案,且前一帧的声道组合方案为非相关性信号声道组合方案,确定所述当前帧的声道组合方案为非相关性信号声道组合方案。

或者,

在前一帧的声道组合方案与所述当前帧的初始声道组合方案不同,并且所述当前帧满足切换条件,且所述当前帧的初始声道组合方案为非相关性信号声道组合方案,且前一帧的声道组合方案为相关性信号声道组合方案,并且所述前一帧的声道组合比例因子小于第一比例因子阈值的情况下,确定所述当前帧的声道组合方案为相关性信号声道组合方案。

或者,

在前一帧的声道组合方案与所述当前帧的初始声道组合方案不同,并且所述当前帧满足切换条件,并且所述当前帧的初始声道组合方案为非相关性信号声道组合方案,并且前一帧的声道组合方案为相关性信号声道组合方案,并且所述前一帧的声道组合比例因子大于或者等于第一比例因子阈值的情况下,确定所述当前帧的声道组合方案为非相关性信号声道组合方案。

或者,

在第前p-1帧的声道组合方案与第前p帧的初始声道组合方案不同,且所述第前p帧的不满足切换条件,且所述当前帧满足切换条件,并且所述当前帧的立体声信号的信号正反相类型为类正相信号,并且所述当前帧的初始声道组合方案为相关性信号声道组合方案,并且前一帧为非相关性信号声道组合方案,确定所述当前帧的声道组合方案为相关性信号声道组合方案。

或者,

在第前p-1帧的声道组合方案与第前p帧的初始声道组合方案,且所述第前p帧的不满足切换条件,且所述当前帧满足切换条件,且当前帧的立体声信号的信号正反相类型为类反相信号,且所述当前帧的初始声道组合方案为非相关性信号声道组合方案,且前一帧的声道组合方案为相关性信号声道组合方案,并且所述前一帧的声道组合比例因子小于第二比例因子阈值的情况下,确定所述当前帧的声道组合方案为相关性信号声道组合方案。

或者,

在第前p-1帧的声道组合方案与第前p帧的初始声道组合方案不同,且所述第前p帧的不满足切换条件,且所述当前帧满足切换条件,且当前帧的立体声信号的正反相类型为类反相信号,且所述当前帧的初始声道组合方案为非相关性信号声道组合方案,且前一帧的声道组合方案为相关性信号声道组合方案,并且所述前一帧的声道组合比例因子大于或等于第二比例因子阈值的情况下,确定所述当前帧的声道组合方案为非相关性信号声道组合方案。

其中,p可为大于1的整数,例如p可等于2、3、4、5、6或其他值。

其中,第一比例因子阈值的取值范围例如可为[0.4,0.6],例如可等于0.4、0.45、0.5、0.55或0.6等。

其中,第二比例因子阈值的取值范围例如可为[0.4,0.6],例如可等于0.4、0.46、0.5、0.56或0.6等。

在一些可能实施方式中,判决当前帧是否满足切换条件可包括:根据前一帧的主要声道信号帧类型和/或次要声道信号帧类型判决当前帧是否满足切换条件。

在一些可能的实施方式中,判决当前帧是否满足切换条件可包括:

在第一条件、第二条件和第三条件都满足的情况下判决当前帧满足切换条件;或者在第二条件、第三条件、第四条件和第五条件都满足的情况下判决当前帧满足切换条件;或者在第六条件满足的情况下判决当前帧满足切换条件;

其中,

第一条件:前一帧的前一帧的主要声道信号帧类型为下列中的任意一种:voiced_clasframe(浊音特性帧,其之前的帧为浊音帧或浊音开始帧)、onsetframe(浊音开始帧)、sin_onsetframe(谐波和噪声混合的开始帧)、inactive_clasframe(非活动特性帧)、audio_clas(音频帧),且前一帧的主要声道信号帧类型为unvoiced_clasframe(清音、静音、噪声或浊音结尾等几种特性之一的帧)或voiced_transitionframe(浊音之后的过度,浊音特性已经很弱的帧);或者,前一帧的前一帧的次要声道信号帧类型为下列中的任意一种:voiced_clasframe、onsetframe、sin_onsetframe、inactive_clasframe和audio_clasframe,且前一帧的次要声道信号帧类型为unvoiced_clasframe或者voiced_transitionframe。

第二条件:前一帧的主要声道信号和次要声道信号的初始编码类型(rawcodingmode)都不为voiced(浊音帧对应的编码类型)。

第三条件:截至前一帧,已持续使用前一帧所使用的声道组合方案的帧数大于预设帧数阈值。帧数阈值的取值范围例如可为[3,10],例如帧数阈值可等于3、4、5、6、7、8、9或其他值。

第四条件:前一帧的主要声道信号帧类型为unvoiced_clas,或前一帧的次要声道信号帧类型为unvoiced_clas。

第五条件:当前帧的左右声道信号长时均方根能量值小于能量阈值。这个能量阈值的取值范围例如可为[300,500],例如帧数阈值可等于300、400、410、451、482、500、415或其他值。

第六条件:前一帧的主要声道信号帧类型为音乐信号,且前一帧的主要声道信号的低频段与高频段的能量比大于第一能量比阈值,且前一帧的次要声道信号的低频段与高频段的能量比大于第二能量比阈值。

其中,第一能量比阈值范围例如可为[4000,6000],例如帧数阈值可等于4000、4500、5000、5105、5200、6000、5800或其他值。

其中,第二能量比阈值范围例如可为[4000,6000],例如帧数阈值可等于4000、4501、5000、5105、5200、6000、5800或其他值。

可以理解,判决当前帧是否满足切换条件的实施方式可以是多种多样的,不限于上述举例的方式。

可以理解,上述举例中给出了确定当前帧的声道组合方案的一些实施方式,但实际应用中也可能不限于上述举例方式。

下面进一步针对非相关性信号编码模式场景进行举例说明。

参见图4、本申请实施例提供了一种音频编码方法,音频编码方法的相关步骤可由编码装置来实施,方法具体可以包括:

401、确定当前帧的编码模式。

402、在确定所述当前帧的编码模式为非相关性信号编码模式的情况下,采用所述非相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号。

403、对得到的所述当前帧的主次声道信号进行编码。

其中,所述非相关性信号编码模式对应的时域下混处理方式为非相关性信号声道组合方案对应的时域下混处理方式,所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。

举例来说,在一些可能的实施方式之中,采用所述非相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,可包括:根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号;或者根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号。

可以理解,音频帧(例如当前帧或前一帧)的声道组合方案(例如非相关性信号声道组合方案或非相关性信号声道组合方案)的声道组合比例因子可以是预设的固定值。当然也可根据音频帧的声道组合方案来确定这个音频帧的声道组合比例因子。

在一些可能实施方式中,可基于音频帧的声道组合比例因子构建相应的下混矩阵,利用声道组合方案对应的下混矩阵来对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号。

例如,在根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号的情况下,

又举例来说,在根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号的情况下,

if0≤n<n-delay_com:

ifn-delay_com≤n<n:

其中,所述delay_com表示编码时延补偿。

又举例来说,在根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号的情况下,

if0≤n<n-delay_com:

ifn-delay_com≤n<n-delay_com+nova_1:

ifn-delay_com+nova_1≤n<n:

其中,fade_in(n)表示淡入因子。例如当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。

fade_out(n)表示淡出因子。例如当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。

其中,nova_1表示过渡处理长度。nova_1取值可根据具体场景需要设定。nova_1例如可等于3/n或者nova_1可为小于n的其它值。

又举例来说,在采用所述相关性信号编码模式对应的时域下混处理方式,对所述当前帧的左右声道信号进行时域下混处理,以得到所述当前帧的主次声道信号的情况下,

在上述举例中,所述xl(n)表示所述当前帧的左声道信号。所述xr(n)表示所述当前帧的右声道信号。所述y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号;所述x(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。

其中,在上述举例中,所述n表示样点序号。例如n=0,1,…,n-1。

其中,在上述举例中,delay_com表示编码时延补偿。

m11表示所述前一帧的相关性信号声道组合方案对应的下混矩阵,m11基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。

所述m12表示所述前一帧的非相关性信号声道组合方案对应的下混矩阵,所述m12基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述m22表示所述当前帧的非相关性信号声道组合方案对应的下混矩阵,所述m22基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述m21表示所述当前帧的相关性信号声道组合方案对应的下混矩阵,所述m21基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。

其中,所述m21可能存在多种形式,例如:

其中,所述ratio表示当前帧的相关性信号声道组合方案对应的声道组合比例因子。

其中,所述m22可能存在多种形式,例如:

其中,α1=ratio_sm;α2=1-ratio_sm。所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,所述m12可能存在多种形式,例如:

其中,α1_pre=tdm_last_ratio_sm;α2_pre=1-tdm_last_ratio_sm。tdm_last_ratio_sm表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,当前帧的左右声道信号具体可以是所述当前帧的原始左右声道信号(原始左右声道信号是未经时域预处理的左右声道信号,例如可以是采样得到左右声道信号),或者可是所述当前帧的经时域预处理的左右声道信号;或者可以是当前帧的经时延对齐处理的左右声道信号。

具体例如,

其中,所述表示所述当前帧的原始左右声道信号。所述表示所述当前帧的经时域预处理的左右声道信号。所述表示所述当前帧的经时延对齐处理的左右声道信号。

相应的,下面针对非相关性信号解码模式场景进行举例说明。

参见图5,本申请实施例还提供一种音频解码方法,音频解码方法的相关步骤可由解码装置来实施,方法具体可以包括:

501、根据码流进行解码以得到当前帧的主次声道解码信号。

502、确定所述当前帧的解码模式。

可以理解,步骤501和步骤502的执行没有必然的先后顺序。

503、在确定所述当前帧的解码模式为非相关性信号解码模式的情况下,采用所述非相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。

其中,左右声道重建信号可为左右声道解码信号,或可通过将左右声道重建信号进行时延调整处理和/或时域后处理以得到左右声道解码信号。

其中,所述非相关性信号解码模式对应的时域上混处理方式为非相关性信号声道组合方案对应的时域上混处理方式,所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。

其中,当前帧的解码模式可为多种解码模式中的其中一种。例如当前帧的解码模式可能是如下解码模式中的其中一种:相关性信号解码模式、非相关性信号解码模式、相关性到非相关性信号解码模式、非相关性到相关性信号解码模式。

可以理解,上述方案中需确定当前帧的解码模式,这就表示当前帧的解码模式存在多种可能,这相对于只有唯一一种解码模式的传统方案而言,多种可能的解码模式和多种可能场景之间有利于获得更好的兼容匹配效果。并且,由于引入了针对类反相信号对应的声道组合方案,这使得对于当前帧的立体声信号为类反相信号的情况下,有了针对性相对更强的声道组合方案和解码模式,进而有利于提高解码质量。

在一些可能实施方式中,所述方法还可包括:

在确定所述当前帧的解码模式为相关性信号解码模式的情况下,采用所述相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述相关性信号解码模式对应的时域上混处理方式为相关性信号声道组合方案对应的时域上混处理方式,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。

在一些可能实施方式中,所述方法还可包括:在确定所述当前帧的解码模式为相关性到非相关性信号解码模式的情况下,采用所述相关性到非相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述相关性到非相关性信号解码模式对应的时域上混处理方式为从相关性信号声道组合方案过度到非相关性信号声道组合方案对应的时域上混处理方式。

在一些可能实施方式中,所述方法还可包括:在确定所述当前帧的解码模式为非相关性到相关性信号解码模式的情况下,采用所述非相关性到相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,所述非相关性到相关性信号解码模式对应的时域上混处理方式为从非相关性信号声道组合方案过度到相关性信号声道组合方案对应的时域上混处理方式。

可以理解,不同的解码模式所对应的时域上混处理方式通常不同。并且每种解码模式也可能对应一种或多种时域上混处理方式。

举例来说,在一些可能的实施方式中,所述采用所述非相关性信号解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号,包括:

根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号;或者根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。

在一些可能实施方式中,可基于音频帧的声道组合比例因子构建相应的上混矩阵,利用声道组合方案对应的上混矩阵,来对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。

举例来说,在根据所述当前帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,

又举例来说,在根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,

if0≤n<n-upmixing_delay:

ifn-upmixing_delay≤n<n:

其中,所述delay_com表示编码时延补偿。

又举例来说,在根据所述当前帧和前一帧的非相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,

if0≤n<n-upmixing_delay:

ifn-upmixing_delay≤n<n-upmixing_delay+nova_1:

ifn-upmixing_delay+nova_1≤n<n:

其中,所述表示所述当前帧的左声道解码信号,所述表示所述当前帧的右声道重建信号,所述表示所述当前帧的主要声道解码信号,所述表示所述当前帧的次要声道解码信号;

其中,所述nova_1表示过渡处理长度。

其中,fade_in(n)表示淡入因子。例如当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。

其中,fade_out(n)表示淡出因子。例如当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。

其中,nova_1表示过渡处理长度。nova_1取值可根据具体场景需要设定。nova_1例如可等于3/n或者nova_1可为小于n的其它值。

又举例来说,在根据所述当前帧的相关性信号声道组合方案的声道组合比例因子,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,

在上述举例中,所述表示所述当前帧的左声道解码信号。所述表示所述当前帧的右声道重建信号。所述表示所述当前帧的主要声道解码信号。所述表示所述当前帧的次要声道解码信号。

其中,在上述举例中,所述n表示样点序号。例如n=0,1,…,n-1。

其中,在上述举例中,所述upmixing_delay表示解码时延补偿;

表示所述前一帧的相关性信号声道组合方案对应的上混矩阵,所述基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。

所述表示所述当前帧的非相关性信号声道组合方案对应的上混矩阵,所述基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述表示所述前一帧的非相关性信号声道组合方案对应的上混矩阵,所述基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述表示所述当前帧的相关性信号声道组合方案对应的上混矩阵,所述基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。

其中,所述可能存在多种形式,例如:

其中,α1=ratio_sm;α2=1-ratio_sm;所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,所述可能存在多种形式,例如:

其中,α1_pre=tdm_last_ratio_sm;α2_pre=1-tdm_last_ratio_sm。

其中,tdm_last_ratio_sm表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,所述可能存在多种形式,例如:

其中,所述ratio表示当前帧的相关性信号声道组合方案对应的声道组合比例因子。

下面针对相关性信号到非相关性信号编码模式和非相关性信号到非相关性信号编码模式场景进行举例说明。相关性信号到非相关性信号编码模式和非相关性信号到非相关性信号编码模式对应的时域下混处理方式例如为分段时域下混处理方式。

参见图6、本申请实施例提供了一种音频编码方法,音频编码方法的相关步骤可由编码装置来实施,方法具体可以包括:

601、确定当前帧的声道组合方案。

602、在所述当前帧和前一帧的声道组合方案不同的情况下,根据所述当前帧和前一帧的声道组合方案对所述当前帧的左右声道信号进行分段时域下混处理,以得到所述当前帧的主要声道信号和次要声道信号。

603、对得到的所述当前帧的主要声道信号和次要声道信号进行编码。

其中,在所述当前帧和前一帧的声道组合方案不同的情况下,可确定当前帧的编码模式为相关性信号到非相关性信号编码模式或非相关性信号到非相关性信号编码模式,而如果当前帧的编码模式为相关性信号到非相关性信号编码模式或非相关性信号到非相关性信号编码模式,那么例如可根据所述当前帧和前一帧的声道组合方案对所述当前帧的左右声道信号进行分段时域下混处理。

具体例如,当前一帧的声道组合方案为相关性信号声道组合方案,且当前帧的声道组合方案为非相关性信号声道组合方案,可确定当前帧的编码模式为相关性信号到非相关性信号编码模式。又例如,当前一帧的声道组合方案为非相关性信号声道组合方案,且当前帧的声道组合方案为相关性信号声道组合方案,可确定当前帧的编码模式为非相关性信号到相关性信号编码模式。以此类推。

其中,分段时域下混处理可以理解为是当前帧的左右声道信号被分为至少两段,针对每段采用不同的时域下混处理方式进行时域下混处理。可以理解,相对于非分段时域下混处理而言,分段时域下混处理使得在相邻帧的声道组合方案发生变化时获得更好平滑过度变得更有可能。

可以理解,上述方案中需确定当前帧的声道组合方案,这就表示当前帧的声道组合方案存在多种可能,这相对于只有唯一一种声道组合方案的传统方案而言,多种可能的声道组合方案和多种可能场景之间有利于获得更好的兼容匹配效果。并且,由于在所述当前帧和前一帧的声道组合方案不同的情况下引入了对所述当前帧的左右声道信号进行分段时域下混处理的机制,分段时域下混处理机制有利于实现声道组合方案的平滑过度,进而有利于提高编码质量。

并且,由于引入了针对类反相信号对应的声道组合方案,这使得对于当前帧的立体声信号为类反相信号的情况下,有了针对性相对更强的声道组合方案和编码模式,进而有利于提高编码质量。

举例来说,前一帧的声道组合方案例如可能为相关性信号声道组合方案或非相关性信号声道组合方案。当前帧的声道组合方案可能为相关性信号声道组合方案或非相关性信号声道组合方案。那么当前帧和前一帧的声道组合方案不同也存在好几种可能情况。

具体例如,当所述前一帧的声道组合方案为相关性信号声道组合方案且所述当前帧的声道组合方案为非相关性信号声道组合方案,所述当前帧的左右声道信号包括左右声道信号起始段、左右声道信号中间段和左右声道信号结尾段;所述当前帧的主次声道信号包括主次声道信号起始段、主次声道信号中间段和主次声道信号结尾段。那么,根据所述当前帧和前一帧的声道组合方案对所述当前帧的左右声道信号进行分段时域下混处理,以得到所述当前帧的主要声道信号和次要声道信号,可以包括:

使用所述前一帧的相关性信号声道组合方案对应的声道组合比例因子和相关性信号声道组合方案对应的时域下混处理方式,对所述当前帧的左右声道信号起始段进行时域下混处理,以得到所述当前帧的主次声道信号起始段;

使用所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子和非相关性信号声道组合方案对应的时域下混处理方式,对所述当前帧的左右声道信号结尾段进行时域下混处理,以得到所述当前帧的主次声道信号结尾段;

使用所述前一帧的相关性信号声道组合方案对应的声道组合比例因子和相关性信号声道组合方案对应的时域下混处理方式,对所述当前帧的左右声道信号中间段进行时域下混处理以得到第一主次声道信号中间段;使用当前帧的非相关性信号声道组合方案对应的声道组合比例因子和非相关性信号声道组合方案对应的时域下混处理方式,对所述当前帧的左右声道信号中间段进行时域下混处理以得到第二主次声道信号中间段;将所述第一主次声道信号中间段和所述第二主次声道信号中间段进行加权求和处理以得到所述当前帧的主次声道信号中间段。

其中,所述当前帧的左右声道信号起始段、左右声道信号中间段和左右声道信号结尾段的长度可根据需要进行设定。所述当前帧的左右声道信号起始段、左右声道信号中间段和左右声道信号结尾段的长度可以相等、部分相等或互不相等。

其中,所述当前帧的主次声道信号起始段、主次声道信号中间段和主次声道信号结尾段的长度可根据需要进行设定。所述当前帧的主次声道信号起始段、主次声道信号中间段和主次声道信号结尾段的长度可以相等、部分相等或互不相等。

其中,将所述第一主次声道信号中间段和所述第二主次声道信号中间段进行加权求和处理时,所述第一主次声道信号中间段对应的加权系数,可等于或不等于所述第二主次声道信号中间段对应的加权系数。

举例来说,将所述第一主次声道信号中间段和所述第二主次声道信号中间段进行加权求和处理时,所述第一主次声道信号中间段对应的加权系数为淡出因子,所述第二主次声道信号中间段对应的加权系数为淡入因子。

在一些可能实施方式中,

其中,x11(n)表示所述当前帧的主要声道信号起始段。y11(n)表示所述当前帧的次要声道信号起始段。x31(n)表示所述当前帧的主要声道信号结尾段。y31(n)表示所述当前帧的次要声道信号结尾段。x21(n)表示所述当前帧的主要声道信号中间段。y21(n)表示所述当前帧的次要声道信号中间段;

其中,x(n)表示所述当前帧的主要声道信号。

其中,y(n)表示所述当前帧的次要声道信号。

例如,

例如,fade_in(n)表示淡入因子,fade_out(n)表示淡出因子。例如,fade_in(n)和fade_out(n)之和为1。

具体例如,当然,fade_in(n)也可以是基于n的其它函数关系的淡入因子。当然,fade_out(n)也可以是基于n的其它函数关系的淡入因子。

其中,n表示样点序号,n=0,1,…,n-1。0<n1<n2<n-1。

例如n1等于100,107、120、150或其他值。

例如n2等于180,187、200、203或其他值。

其中,所述x211(n)表示所述当前帧的第一主要声道信号中间段,所述y211(n)表示所述当前帧的第一次要声道信号中间段。其中,所述x212(n)表示所述当前帧的第二主要声道信号中间段,所述y212(n)表示所述当前帧的第二次要声道信号中间段。

在一些可能实施方式中,

其中,所述xl(n)表示所述当前帧的左声道信号。所述xr(n)表示所述当前帧的右声道信号。

所述m11表示所述前一帧的相关性信号声道组合方案对应的下混矩阵,所述m11基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。所述m22表示所述当前帧的非相关性信号声道组合方案对应的下混矩阵,所述m22基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述m22可以有多种可能的形式,具体例如:

其中,所述α1=ratio_sm,所述α2=1-ratio_sm,所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

所述m11可以有多种可能的形式,具体例如:

其中,所述tdm_last_ratio表示所述前一帧的相关性信号声道组合方案对应的声道组合比例因子。

又具体例如,当所述前一帧的声道组合方案为非相关性信号声道组合方案且所述当前帧的声道组合方案为相关性信号声道组合方案,其中,所述当前帧的左右声道信号包括左右声道信号起始段、左右声道信号中间段和左右声道信号结尾段;所述当前帧的主次声道信号包括主次声道信号起始段、主次声道信号中间段和主次声道信号结尾段。那么,所述根据所述当前帧和前一帧的声道组合方案对所述当前帧的左右声道信号进行分段时域下混处理,以得到所述当前帧的主要声道信号和次要声道信号,可以包括:

使用所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子和非相关性信号声道组合方案对应的时域下混处理方式,对所述当前帧的左右声道信号起始段进行时域下混处理,以得到所述当前帧的主次声道信号起始段;

使用所述当前帧的相关性信号声道组合方案对应的声道组合比例因子和相关性信号声道组合方案对应的时域下混处理方式,对所述当前帧的左右声道信号结尾段进行时域下混处理,以得到所述当前帧的主次声道信号结尾段;

使用所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子和非相关性信号声道组合方案对应的时域下混处理方式,对所述当前帧的左右声道信号中间段进行时域下混处理以得到第三主次声道信号中间段;使用当前帧的相关性信号声道组合方案对应的声道组合比例因子和相关性信号声道组合方案对应的时域下混处理方式,对所述当前帧的左右声道信号中间段进行时域下混处理以得到第四主次声道信号中间段;将所述第三主次声道信号中间段和所述第四主次声道信号中间段进行加权求和处理以得到所述当前帧的主次声道信号中间段。

其中,将所述第三主次声道信号中间段和所述第四主次声道信号中间段进行加权求和处理时,所述第三主次声道信号中间段对应的加权系数,可等于或不等于所述第四主次声道信号中间段对应的加权系数。

例如,将所述第三主次声道信号中间段和所述第四主次声道信号中间段进行加权求和处理时,所述第三主次声道信号中间段对应的加权系数为淡出因子,所述第四主次声道信号中间段对应的加权系数为淡入因子。

在一些可能实施方式中,

其中,x12(n)表示所述当前帧的主要声道信号起始段,y12(n)表示所述当前帧的次要声道信号起始段。x32(n)表示所述当前帧的主要声道信号结尾段,y32(n)表示所述当前帧的次要声道信号结尾段。x22(n)表示所述当前帧的主要声道信号中间段,y22(n)表示所述当前帧的次要声道信号中间段。

其中,x(n)表示所述当前帧的主要声道信号。

其中,y(n)表示所述当前帧的次要声道信号。

例如,

其中,fade_in(n)表示淡入因子表示,fade_out(n)表示淡出因子,fade_in(n)和fade_out(n)之和为1。

具体例如,当然,fade_in(n)也可以是基于n的其它函数关系的淡入因子。当然,fade_out(n)也可以是基于n的其它函数关系的淡入因子。

其中,n表示样点序号,例如n=0,1,…,n-1。

其中,0<n3<n4<n-1。

例如n3等于101,107、120、150或其他值。

例如n4等于181,187、200、205或其他值。

其中,所述x221(n)表示所述当前帧的第三主要声道信号中间段,所述y221(n)表示所述当前帧的第三次要声道信号中间段。其中,所述x222(n)表示所述当前帧的第四主要声道信号中间段,所述y222(n)表示所述当前帧的第四次要声道信号中间段。

在一些可能实施方式中,

其中,所述xl(n)表示所述当前帧的左声道信号,所述xr(n)表示所述当前帧的右声道信号。

所述m12表示所述前一帧的非相关性信号声道组合方案对应的下混矩阵,所述m12基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。所述m21表示所述当前帧相关性信号声道组合方案对应的下混矩阵,所述m21基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。

所述m12可以有多种可能的形式,具体例如:

其中,α1_pre=tdm_last_ratio_sm;α2_pre=1-tdm_last_ratio_sm。

其中,tdm_last_ratio_sm表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。

所述m21可以有多种可能的形式,具体例如:

其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。

在一些可能实施方式中,所述当前帧的左右声道信号例如可以为当前帧的原始左右声道信号,经时域预处理的左右声道信号或经时延对齐处理的左右声道信号。

具体例如:

其中,所述xl(n)表示所述当前帧的原始左声道信号(原始左声道信号是未经时域预处理的左声道信号),所述xr(n)表示所述当前帧的原始右声道信号(原始右声道信号是未经时域预处理的右声道信号)。

所述xl_hp(n)表示所述当前帧的经时域预处理的左声道信号,所述xr_hp(n)表示所述当前帧的经时域预处理的右声道信号。所述x′l(n)表示所述当前帧的经时延对齐处理的左声道信号,所述x′r(n)表示所述当前帧的经时延对齐处理的右声道信号。

可以理解,上述举例的分段时域下混处理方式并不一定是全部的可能实施方式,在实际应用中也可能采用其他分段时域下混处理方式。

相应的,下面针对相关性信号到非相关性信号解码模式和非相关性信号到非相关性信号解码模式场景进行举例说明。相关性信号到非相关性信号解码模式和非相关性信号到非相关性信号解码模式对应的时域下混处理方式例如为分段时域下混处理方式。

参见图7,本申请实施例提供一种音频解码方法,音频解码方法的相关步骤可由解码装置来实施,方法具体可包括:

701、根据码流进行解码以得到当前帧的主次声道解码信号。

702、确定当前帧的声道组合方案。

可以理解,步骤701和步骤702的执行没有必然的先后顺序。

703、在所述当前帧和前一帧的声道组合方案不同的情况下,根据所述当前帧和前一帧的声道组合方案对所述当前帧的主次声道解码信号进行分段时域上混处理,以得到所述当前帧的左右声道重建信号。

其中,所述当前帧的声道组合方案为多种声道组合方案中的其中一种。

其中,例如所述多种声道组合方案包括非相关性信号声道组合方案和相关性信号声道组合方案。其中,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。可以理解,类正相信号对应的声道组合方案适用于类正相信号,类反相信号对应的声道组合方案适用于类反相信号。

其中,分段时域上混处理可以理解为是当前帧的左右声道信号被分为至少两段,针对每段采用不同的时域上混处理方式进行时域上混处理。可以理解,相对于非分段时域上混处理而言,分段时域上混处理使得在相邻帧的声道组合方案发生变化时获得更好平滑过度变得更有可能。

可以理解,上述方案中需确定当前帧的声道组合方案,这就表示当前帧的声道组合方案存在多种可能,这相对于只有唯一一种声道组合方案的传统方案而言,多种可能的声道组合方案和多种可能场景之间有利于获得更好的兼容匹配效果。并且,由于在所述当前帧和前一帧的声道组合方案不同的情况下引入了对所述当前帧的左右声道信号进行分段时域上混处理的机制,分段时域上混处理机制有利于实现声道组合方案的平滑过度,进而有利于提高编码质量。

并且,由于引入了针对类反相信号对应的声道组合方案,这使得对于当前帧的立体声信号为类反相信号的情况下,有了针对性相对更强的声道组合方案和编码模式,进而有利于提高编码质量。

举例来说,前一帧的声道组合方案例如可能为相关性信号声道组合方案或非相关性信号声道组合方案。当前帧的声道组合方案可能为相关性信号声道组合方案或非相关性信号声道组合方案。那么当前帧和前一帧的声道组合方案不同也存在好几种可能情况。

具体例如,当所述前一帧的声道组合方案为相关性信号声道组合方案且所述当前帧的声道组合方案为非相关性信号声道组合方案。其中,所述当前帧的左右声道重建信号包括左右声道重建信号起始段、左右声道重建信号中间段和左右声道重建信号结尾段;所述当前帧的主次声道解码信号包括主次声道解码信号起始段、主次声道解码信号中间段和主次声道解码信号结尾段。那么,所述根据所述当前帧和前一帧的声道组合方案对所述当前帧的主次声道解码信号进行分段时域上混处理,以得到所述当前帧的左右声道重建信号,包括:使用所述前一帧的相关性信号声道组合方案对应的声道组合比例因子和相关性信号声道组合方案对应的时域上混处理方式,对所述当前帧的主次声道解码信号起始段进行时域上混处理,以得到所述当前帧的左右声道重建信号起始段;

使用所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子和非相关性信号声道组合方案对应的时域上混处理方式,对所述当前帧的主次声道解码信号结尾段进行时域上混处理,以得到所述当前帧的左右声道重建信号结尾段;

使用所述前一帧的相关性信号声道组合方案对应的声道组合比例因子和相关性信号声道组合方案对应的时域上混处理方式,对所述当前帧的主次声道解码信号中间段进行时域上混处理以得到第一左右声道重建信号中间段;使用当前帧的非相关性信号声道组合方案对应的声道组合比例因子和非相关性信号声道组合方案对应的时域上混处理方式,对所述当前帧的主次声道解码信号中间段进行时域上混处理以得到第二左右声道重建信号中间段;将所述第一左右声道重建信号中间段和所述第二左右声道重建信号中间段进行加权求和处理以得到所述当前帧的左右声道重建信号中间段。

其中,所述当前帧的左右声道重建信号起始段、左右声道重建信号中间段和左右声道重建信号结尾段的长度可根据需要进行设定。所述当前帧的左右声道重建信号起始段、左右声道重建信号中间段和左右声道重建信号结尾段的长度可以相等、部分相等或互不相等。

其中,所述当前帧的主次声道解码信号起始段、主次声道解码信号中间段和主次声道解码信号结尾段的长度可根据需要进行设定。所述当前帧的主次声道解码信号起始段、主次声道解码信号中间段和主次声道解码信号结尾段的长度可以相等、部分相等或互不相等。

其中,左右声道重建信号可为左右声道解码信号,或可通过将左右声道重建信号进行时延调整处理和/或时域后处理以得到左右声道解码信号。

其中,将所述第一左右声道重建信号中间段和所述第二左右声道重建信号中间段进行加权求和处理时,所述第一左右声道重建信号中间段对应的加权系数,可等于或不等于第二左右声道重建信号中间段对应的加权系数。

举例来说,将所述第一左右声道重建信号中间段和所述第二左右声道重建信号中间段进行加权求和处理时,所述第一左右声道重建信号中间段对应的加权系数为淡出因子,所述第二左右声道重建信号中间段对应的加权系数为淡入因子。

在一些可能实施方式中,

其中,表示所述当前帧的左声道重建信号起始段,表示所述当前帧的右声道重建信号起始段。表示所述当前帧的左声道重建信号结尾段,表示所述当前帧的右声道重建信号结尾段。其中,表示所述当前帧的左声道重建信号中间段,表示所述当前帧的右声道重建信号中间段。

其中,表示所述当前帧的左声道重建信号。

其中,表示所述当前帧的右声道重建信号。

例如,

例如,fade_in(n)表示淡入因子,fade_out(n)表示淡出因子。例如,fade_in(n)和fade_out(n)之和为1。

具体例如,当然,fade_in(n)也可以是基于n的其它函数关系的淡入因子。当然,fade_out(n)也可以是基于n的其它函数关系的淡入因子。

其中,n表示样点序号,n=0,1,…,n-1。其中,0<n1<n2<n-1。

其中,所述表示所述当前帧的第一左声道重建信号中间段,所述表示所述当前帧的第一右声道重建信号中间段。所述表示所述当前帧的第二左声道重建信号中间段,所述表示所述当前帧的第二右声道重建信号中间段。

在一些可能实施方式中,

其中,表示所述当前帧的主要声道解码信号;表示所述当前帧的次要声道解码信号。

所述表示所述前一帧的相关性信号声道组合方案对应的上混矩阵,所述基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。所述表示所述当前帧的非相关性信号声道组合方案对应的上混矩阵,所述基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。

所述可以有多种可能的形式,具体例如:

其中,α1=ratio_sm;α2=1-ratio_sm;所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

所述可以有多种可能的形式,具体例如:

其中,所述tdm_last_ratio表示所述前一帧的相关性信号声道组合方案对应的声道组合比例因子。

又具体例如,当所述前一帧的声道组合方案为非相关性信号声道组合方案且所述当前帧的声道组合方案为相关性信号声道组合方案。其中,所述当前帧的左右声道重建信号包括左右声道重建信号起始段、左右声道重建信号中间段和左右声道重建信号结尾段;所述当前帧的主次声道解码信号包括主次声道解码信号起始段、主次声道解码信号中间段和主次声道解码信号结尾段。那么,所述根据所述当前帧和前一帧的声道组合方案对所述当前帧的主次声道解码信号进行分段时域上混处理,以得到所述当前帧的左右声道重建信号,包括:

使用所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子和非相关性信号声道组合方案对应的时域上混处理方式,对所述当前帧的主次声道解码信号起始段进行时域上混处理,以得到所述当前帧的左右声道重建信号起始段;

使用所述当前帧的相关性信号声道组合方案对应的声道组合比例因子和相关性信号声道组合方案对应的时域上混处理方式,对所述当前帧的主次声道解码信号结尾段进行时域上混处理,以得到所述当前帧的左右声道重建信号结尾段;

使用所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子和非相关性信号声道组合方案对应的时域上混处理方式,对所述当前帧的主次声道解码信号中间段进行时域上混处理以得到第三左右声道重建信号中间段;使用当前帧的相关性信号声道组合方案对应的声道组合比例因子和相关性信号声道组合方案对应的时域上混处理方式,对所述当前帧的主次声道解码信号中间段进行时域上混处理以得到第四左右声道重建信号中间段;将所述第三左右声道重建信号中间段和所述第四左右声道重建信号中间段进行加权求和处理以得到所述当前帧的左右声道重建信号中间段。

其中,将所述第三左右声道重建信号中间段和所述第四左右声道重建信号中间段进行加权求和处理时,所述第三左右声道重建信号中间段对应的加权系数,可等于或不等于所述第四左右声道重建信号中间段对应的加权系数。

例如,将所述第三左右声道重建信号中间段和所述第四左右声道重建信号中间段进行加权求和处理时,所述第三左右声道重建信号中间段对应的加权系数为淡出因子,所述第四左右声道重建信号中间段对应的加权系数为淡入因子。

在一些可能实施方式中,

其中,表示所述当前帧的左声道重建信号起始段,表示所述当前帧的右声道重建信号起始段。表示所述当前帧的左声道重建信号结尾段,表示所述当前帧的右声道重建信号结尾段。其中,表示所述当前帧的左声道重建信号中间段,表示所述当前帧的右声道重建信号中间段;

其中,表示所述当前帧的左声道重建信号。

其中,表示所述当前帧的右声道重建信号。

例如,

其中,fade_in(n)表示淡入因子表示,fade_out(n)表示淡出因子,fade_in(n)和fade_out(n)之和为1。

具体例如,当然,fade_in(n)也可以是基于n的其它函数关系的淡入因子。当然,fade_out(n)也可以是基于n的其它函数关系的淡入因子。

其中,n表示样点序号,例如n=0,1,…,n-1。

其中,0<n3<n4<n-1。

例如n3等于101,107、120、150或其他值。

例如n4等于181,187、200、205或其他值。

其中,所述表示所述当前帧的第三左声道重建信号中间段,所述表示所述当前帧的第三右声道重建信号中间段;所述表示所述当前帧的第四左声道重建信号中间段,所述表示所述当前帧的第四右声道重建信号中间段。

在一些可能实施方式中,

其中,表示所述当前帧的主要声道解码信号;表示所述当前帧的次要声道解码信号。

所述表示所述前一帧的非相关性信号声道组合方案对应的上混矩阵,所述基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建;所述表示所述当前帧的相关性信号声道组合方案对应的上混矩阵,所述基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。

所述可以有多种可能的形式,具体例如:

其中,α1_pre=tdm_last_ratio_sm;α2_pre=1-tdm_last_ratio_sm;

其中,tdm_last_ratio_sm表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。

所述可以有多种可能的形式,具体例如:

其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。

本申请实施例中,当前帧的立体声参数(例如声道组合比例因子和/或声道间时延差)可为固定值,也可基于当前帧的声道组合方案(例如相关性信号声道组合方案或非相关性信号声道组合方案)来确定。

参见图8,下面举例一种时域立体声参数的确定方法,时域立体声参数的确定方法的相关步骤可由编码装置来实施,方法具体可以包括:

801、确定当前帧的声道组合方案。

802、根据所述当前帧的声道组合方案确定所述当前帧的时域立体声参数,所述时域立体声参数包括声道组合比例因子和声道间时延差中的至少一种。

其中,所述当前帧的声道组合方案为多种声道组合方案中的其中一种。

其中,例如所述多种声道组合方案包括非相关性信号声道组合方案和相关性信号声道组合方案。

其中,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。可以理解,类正相信号对应的声道组合方案适用于类正相信号,类反相信号对应的声道组合方案适用于类反相信号。

在确定所述当前帧的声道组合方案为相关性信号声道组合方案的情况下,所述当前帧的时域立体声参数为所述当前帧的相关性信号声道组合方案对应的时域立体声参数;在确定所述当前帧的声道组合方案为非相关性信号声道组合方案的情况下,所述当前帧的时域立体声参数为所述当前帧的非相关性信号声道组合方案对应的时域立体声参数。

可以理解,上述方案中需确定当前帧的声道组合方案,这就表示当前帧的声道组合方案存在多种可能,这相对于只有唯一一种声道组合方案的传统方案而言,多种可能的声道组合方案和多种可能场景之间有利于获得更好的兼容匹配效果。由于是根据所述当前帧的声道组合方案确定所述当前帧的时域立体声参数,这使得时域立体声参数和多种可能场景之间有利于获得更好的兼容匹配效果,进而有利于提升编解码质量。

在一些可能实施方式中,可以先分别计算出当前帧的非相关性信号声道组合方案对应的声道组合比例因子和当前帧的相关性信号声道组合方案对应的声道组合比例因子。而后在确定当前帧的声道组合方案为相关性信号声道组合方案的情况下,确定当前帧的时域立体声参数为所述当前帧的相关性信号声道组合方案对应的时域立体声参数;或者,在确定当前帧的声道组合方案为非相关性信号声道组合方案的情况下,确定当前帧的时域立体声参数为所述当前帧的非相关性信号声道组合方案对应的时域立体声参数。或者,也可先计算出当前帧的相关性信号声道组合方案对应的时域立体声参数,在确定当前帧的声道组合方案为相关性信号声道组合方案的情况下,确定当前帧的时域立体声参数为所述当前帧的相关性信号声道组合方案对应的时域立体声参数;而在确定当前帧的声道组合方案为非相关性信号声道组合方案的情况下,再计算所述当前帧的非相关性信号声道组合方案对应的时域立体声参数,将计算出的所述当前帧的非相关性信号声道组合方案对应的时域立体声参数,确认为当前帧的时域立体声参数。

或者,也可先确定当前帧的声道组合方案,在确定所述当前帧的声道组合方案为相关性信号声道组合方案的情况下,计算所述当前帧的相关性信号声道组合方案对应的时域立体声参数,那么,当前帧的时域立体声参数为当前帧的相关性信号声道组合方案对应的时域立体声参数。而在确定当前帧的声道组合方案为非相关性信号声道组合方案的情况下,计算所述当前帧的非相关性信号声道组合方案对应的时域立体声参数,那么,当前帧的时域立体声参数为当前帧的非相关性信号声道组合方案对应的时域立体声参数。

在一些可能实施方式中,根据所述当前帧的声道组合方案确定所述当前帧的时域立体声参数包括:根据所述当前帧的声道组合方案,确定所述当前帧的声道组合方案所对应的声道组合比例因子初始值。在无需对所述当前帧的声道组合方案(相关性信号声道组合方案或非相关性信号声道组合方法)对应的声道组合比例因子的初始值进行修正的情况之下,所述当前帧的声道组合方案对应的声道组合比例因子,等于所述当前帧的声道组合方案对应的声道组合比例因子的初始值。在需对所述当前帧的声道组合方案(相关性信号声道组合方案或非相关性信号声道组合方法)对应的声道组合比例因子的初始值进行修正的情况之下,对所述当前帧的声道组合方案对应的声道组合比例因子的初始值进行修正,以得到所述当前帧的声道组合方案对应的声道组合比例因子的修正值,所述当前帧的声道组合方案对应的声道组合比例因子,等于所述当前帧的声道组合方案对应的声道组合比例因子的修正值。

举例来说,所述根据所述当前帧的声道组合方案确定所述当前帧的时域立体声参数可以包括:根据所述当前帧左声道信号计算所述当前帧的左声道信号的帧能量;根据所述当前帧右声道信号计算所述当前帧的右声道信号的帧能量;根据所述当前帧左声道信号的帧能量和右声道信号的帧能量,计算所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的初始值。

其中,在无需对所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正的情况下,所述当前帧的相关性信号声道组合方案对应的声道组合比例因子等于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子初始值,所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的编码索引等于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的初始值的编码索引;

在需对所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正的情况下,对所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的初始值及其编码索引进行修正,以得到所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的修正值及其编码索引,所述当前帧的相关性信号声道组合方案对应的声道组合比例因子等于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的修正值;所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的编码索引等于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的修正值的编码索引。

具体例如,在对所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的初始值及其编码索引进行修正的情况下,

ratio_idx_mod=0.5*(tdm_last_ratio_idx+16);

ratio_modqua=ratio_tabl[ratio_idx_mod];

其中,所述tdm_last_ratio_idx表示前一帧的相关性信号声道组合方案对应的声道组合比例因子的编码索引,所述ratio_idx_mod表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的修正值对应的编码索引,所述ratio_modqua表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的修正值。

又例如,根据所述当前帧的声道组合方案确定所述当前帧的时域立体声参数包括:根据所述当前帧的左声道信号和右声道信号获得所述当前帧的参考声道信号;计算所述当前帧的左声道信号与参考声道信号之间的幅度相关性参数;计算所述当前帧的右声道信号与参考声道信号之间的幅度相关性参数;根据所述当前帧的左右声道信号与参考声道信号之间的幅度相关性参数,计算所述当前帧的左右声道信号之间的幅度相关性差异参数;根据所述当前帧的左右声道信号之间的幅度相关性差异参数,计算所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

其中,根据所述当前帧的左右声道信号之间的幅度相关性差异参数,计算所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子,例如可包括:根据所述当前帧的左右声道信号之间的幅度相关性差异参数,计算所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子初始值;对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子初始值进行修正,以得到所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。可以理解,当无需对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子初始值进行修正时,那么,所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子,等于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子初始值。

在一些可能的实施方式中,

其中,

其中,所述mono_i(n)表示所述当前帧的参考声道信号。

其中,所述x′l(n)表示所述当前帧经时延对齐处理的左声道信号;所述x′r(n)表示所述当前帧经时延对齐处理的右声道信号。所述corr_lm表示所述当前帧的左声道信号与参考声道信号之间的幅度相关性参数,所述corr_rm表示所述当前帧的右声道信号与参考声道信号之间的幅度相关性参数。

在一些可能的实施方式中,所述根据所述当前帧的左右声道信号与参考声道信号之间的幅度相关性参数,计算所述当前帧的左右声道信号之间的幅度相关性差异参数,包括:根据当前帧经时延对齐处理的左声道信号与参考声道信号之间的幅度相关性参数,计算当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数;根据当前帧经时延对齐处理的右声道信号与参考声道信号之间的幅度相关性参数,计算当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数;根据当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数及当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数,计算当前帧左右声道之间的幅度相关性差异参数。

其中,平滑处理的方式可以是多样多样的,举例来说:

tdm_lt_corr_lm_smcur=α*tdm_lt_corr_lm_smpre+(1-α)corr_lm;

其中,tdm_lt_rms_l_smcur=(1-a)*tdm_lt_rms_l_smpre+a*rms_l,所述a表示所述当前帧的左声道信号的长时平滑帧能量的更新因子。所述tdm_lt_rms_l_smcur表示所述当前帧的左声道信号的长时平滑帧能量;其中,所述rms_l表示所述当前帧左声道信号的帧能量。tdm_lt_corr_lm_smcur表示当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数。tdm_lt_corr_lm_smpre表示前一帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数。α表示左声道平滑因子。

举例来说,

tdm_lt_corr_rm_smcur=β*tdm_lt_corr_rm_smpre+(1-β)corr_lm。

其中,tdm_lt_rms_r_smcur=(1-b)*tdm_lt_rms_r_smpre+b*rms_r;所述b表示所述当前帧的右声道信号的长时平滑帧能量的更新因子。所述tdm_lt_rms_r_smpre表示所述当前帧的右声道信号的长时平滑帧能量。其中,所述rms_r表示所述当前帧右声道信号的帧能量。其中,tdm_lt_corr_rm_smcur表示所述当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数。tdm_lt_corr_rm_smpre表示前一帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数。β表示右声道平滑因子。

在一些可能的实施方式中,

diff_lt_corr=tdm_lt_corr_lm_sm-tdm_lt_corr_rm_sm;

其中,tdm_lt_corr_lm_sm表示所述当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数,tdm_lt_corr_rm_sm表示所述当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数,所述diff_lt_corr表示所述当前帧左右声道信号之间的幅度相关性差异参数。

在一些可能的实施方式中,所述根据所述当前帧的左右声道信号之间的幅度相关性差异参数,计算所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子包括:对当前帧的左右声道信号之间的幅度相关性差异参数进行映射处理,使映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的取值范围在[map_min,map_max]之间;将映射处理后的左右声道信号之间的幅度相关性差异参数转换为声道组合比例因子。

在一些可能的实施方式中,对所述当前帧的左右声道之间的幅度相关性差异参数进行映射处理包括:对所述当前帧的左右声道信号之间的幅度相关性差异参数进行限幅处理;对经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数进行映射处理。

其中,限幅处理的方式可以是多种多样的,具体例如:

其中,ratio_max表示经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的最大值,ratio_min表示经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的最小值,ratio_max>ratio_min。

其中,映射处理的方式可以是多种多样的,具体例如:

b1=map_max-ratio_max*a1,或b1=map_high-ratio_high*a1

b2=map_low-ratio_low*a2,或b2=map_min-ratio_min*a2

b3=map_high-ratio_high*a3,或b3=map_low-ratio_low*a3

其中,所述diff_lt_corr_map表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数;

其中,map_max表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的最大值;map_high表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的高门限;map_low表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的低门限;map_min表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的最小值;

其中,map_max>map_high>map_low>map_min;

ratio_max表示经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的最大值,ratio_high表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的高门限,ratio_low表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的低门限,ratio_min表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的最小值;

其中,ratio_max>ratio_high>ratio_low>ratio_min。

又例如,

其中,diff_lt_corr_limit表示经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数;diff_lt_corr_map表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数。

其中,

其中,所述ratio_max表示所述当前帧的左右声道信号之间的幅度相关性差异参数的最大幅度,所述-ratio_max表示所述当前帧的左右声道信号之间的幅度相关性差异参数的最小幅度。

在一些可能的实施方式中,

其中,所述diff_lt_corr_map表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数。所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子,或所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值。

在本申请一些实施方式,在需进行声道组合比例因子修正的场景,修正可以在编码声道组合比例因子之前或之后。具体例如,可先计算得到当前帧的声道组合比例因子(例如非相关性信号声道组合方案对应的声道组合比例因子或者相关性信号声道组合方案对应的声道组合比例因子)的初始值,而后对声道组合比例因子的初始值进行编码,进而得到当前帧的声道组合比例因子的初始编码索引,而后再对得到的当前帧的声道组合比例因子的初始编码索引进行修正,进而得到当前帧的声道组合比例因子的编码索引(得到当前帧的声道组合比例因子的编码索引,也就相当于也得到了当前帧的声道组合比例因子)。或者,也可以先计算得到当前帧的声道组合比例因子的初始值,而后对计算得到当前帧的声道组合比例因子的初始值进行修正,进而得到当前帧的声道组合比例因子,而后在对得到的当前帧的声道组合比例因子进行编码,以得到当前帧的声道组合比例因子的编码索引。

其中,对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正的方式可以是多种多样的,例如,在需要通过对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正,来得到所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的情况下,例如可以基于前一帧的声道组合比例因子和所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值,来对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正;或者,也可基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值,对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正。

例如,首先,根据当前帧的左声道信号的长时平滑帧能量、当前帧的右声道信号的长时平滑帧能量、当前帧的左声道信号的帧间能量差异、历史缓存中的缓存前一帧的编码参数(例如主要声道信号的帧间相关性、次要声道信号的帧间相关性)、当前帧以及前一帧的声道组合方案标识、前一帧的非相关性信号声道组合方案对应的声道组合比例因子以及当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值,确定是否需要对当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正。若是,则将前一帧的非相关性信号声道组合方案对应的声道组合比例因子作为当前帧的非相关性信号声道组合方案对应的声道组合比例因子;否则,将当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值作为当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

当然,通过对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正,来得到所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的具体实现方式并不限于上述举例。

803、对确定的所述当前帧的时域立体声参数进行编码。

在一些可能的实施方式中,对确定的当前帧的非相关性信号声道组合方案对应的声道组合比例因子进行量化编码,

ratio_init_smqua=ratio_tabl_sm[ratio_idx_init_sm]。

其中,所述ratio_tabl_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子标量量化的码书,所述ratio_idx_init_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始编码索引,所述ratio_init_smqua表示当前帧的非相关性信号声道组合方案对应的声道组合比例因子的量化编码初始值。

在一些可能的实施方式中,

ratio_idx_sm=ratio_idx_init_sm。

ratio_sm=ratio_tabl[ratio_idx_sm]。

其中,所述ratio_sm表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。ratio_idx_sm表示当前帧的非相关性信号声道组合方案对应的声道组合比例因子的编码索引;

或者,

ratio_idx_sm=φ*ratio_idx_init_sm+(1-φ)*tdm_last_ratio_idx_sm

ratio_sm=ratio_tabl[ratio_idx_sm]

其中,ratio_idx_init_sm表示所述当前帧的非相关性信号声道组合方案对应的初始编码索引,tdm_last_ratio_idx_sm表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子的最终编码索引,其中,为非相关性信号声道组合方案对应的声道组合比例因子的修正因子。其中,所述ratio_sm表示当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

在一些可能的实施方式中,在需要通过对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正,来得到所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的情况下,还可以先所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行量化编码,所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始编码索引,然后可以基于前一帧的声道组合比例因子的编码索引和所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始编码索引,来对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始编码索引进行修正;或者,也可基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始编码索引,对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始编码索引进行修正。

例如,可以是先将当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行量化编码,得到当前帧的非相关性信号声道组合方案对应的初始编码索引。然后在需要对当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始值进行修正时,将前一帧的非相关性信号声道组合方案对应的声道组合比例因子的编码索引作为当前帧的非相关性信号声道组合方案对应的声道组合比例因子的编码索引;否则,将当前帧的非相关性信号声道组合方案对应的声道组合比例因子的初始编码索引作为当前帧的非相关性信号声道组合方案对应的声道组合比例因子的编码索引。最后,将当前帧的非相关性信号声道组合方案对应的声道组合比例因子的编码索引对应的量化编码值作为当前帧的非相关性信号声道组合方案对应的声道组合比例因子。

此外,在时域立体声参数包括声道间时间差的情况下,根据所述当前帧的声道组合方案确定所述当前帧的时域立体声参数可包括:在所述当前帧的声道组合方案为相关性信号声道组合方案的情况下,计算所述当前帧的声道间时间差。并且可将计算得到的所述当前帧的声道间时间差写入码流。在所述当前帧的声道组合方案为非相关性信号声道组合方案的情况下使用默认的声道间时间差(例如0)作为所述当前帧的声道间时间差。并且可不将默认的声道间时间差写入码流,解码装置也使用默认的声道间时间差。

下面还举例提供一种时域立体声参数的编码方法,例如可以包括:确定当前帧的声道组合方案;根据所述当前帧的声道组合方案确定所述当前帧的时域立体声参数;对确定的所述当前帧的时域立体声参数进行编码,所述时域立体声参数包括声道组合比例因子和声道间时延差中的至少一种。

相应的,解码装置可从码流中获得当前帧的时域立体声参数,进而基于从码流中获得的当前帧的时域立体声参数来进行相关解码。

下面通过一个更为具体的应用场景进行举例说明。

参见图9-a,图9-a是本申请实施例提供的一种音频编码方法的流程示意图。本申请实施例提供的一种音频编码方法可由编码装置来实施,方法具体可包括:

901、对当前帧的原始左右声道信号进行时域预处理。

例如若立体声音频信号的采样率为16khz,一帧信号为20ms,帧长记作n,当n=320是表示帧长为320个样点。其中,当前帧的立体声信号包括当前帧的左声道信号和当前帧的右声道信号。其中,当前帧的原始左声道信号记作xl(n),当前帧的原始右声道信号记作xr(n),n为样点序号,n=0,1,…,n-1。

例如,对当前帧的原始左右声道信号进行时域预处理可包括:对当前帧的原始左右声道信号进行高通滤波处理,得到当前帧经时域预处理的左右声道信号,当前帧经时域预处理的左声道信号记作xl_hp(n),当前帧经时域预处理的的右声道信号记作xr_hp(n)。其中,n为样点序号。n=0,1,…,n-1。其中,高通滤波处理采用的滤波器例如可为截止频率为20hz的无限脉冲响应滤波器(英文:infiniteimpulseresponse,缩写:iir)滤波器,也可采用其他类型的滤波器。

例如采样率为16khz且对应截止频率为20hz的高通滤波器的传递函数可为:

其中,b0=0.994461788958195,b1=-1.988923577916390,b2=0.994461788958195,a1=1.988892905899653,a2=-0.988954249933127,z为z变换的变换因子。

其中,相应的时域滤波器的传递函数可表示为:

xl_hp(n)=b0*xl(n)+b1*xl(n-1)+b2*xl(n-2)-a1*xl_hp(n-1)-a2*xl_hp(n-2)

xr_hp(n)=b0*xr(n)+b1*xr(n-1)+b2*xr(n-2)-a1*xr_hp(n-1)-a2*xr_hp(n-2)

902、对当前帧经时域预处理的左右声道信号进行时延对齐处理,得到当前帧经时延对齐处理的左右声道信号。

其中,经时延对齐处理的信号可简称“时延对齐的信号”。例如经时延对齐处理的左声道信号可简称“时延对齐的左声道信号”,经时延对齐处理的右声道信号可简称“时延对齐的左声道信号”,以此类推。

具体地,可根据当前帧预处理后的左右声道信号提取声道间时延参数并编码,根据编码后的声道间时延参数对左右声道信号进行时延对齐处理,得到当前帧经时延对齐处理的左右声道信号。其中,当前帧经时延对齐处理的左声道信号记作x′l(n),当前帧经时延对齐处理的右声道信号记作x′r(n),其中,n为样点序号,n=0,1,…,n-1。

具体例如,编码装置可根据当前帧预处理后的左右声道信号计算左右声道间的时域互相关函数。搜索左右声道间的时域互相关函数的最大值(或其它值)以确定左右声道信号间的时延差。对确定的左右声道间的时延差进行量化编码。根据量化编码后的左右声道间时延差,以左右声道中选定的一个声道的信号为基准,对另一个声道的信号进行时延调整,从而获得当前帧经时延对齐处理的左右声道信号。

值得注意的是,时延对齐处理的具体实现方法有很多种,本实施例中对具体时延对齐处理方法不做限定。

903、对当前帧经时延对齐处理的左右声道信号进行时域分析。

具体地,时域分析可以包括瞬态检测等。其中,瞬态检测可以是对分别当前帧经时延对齐处理的左右声道信号进行能量检测(具体可检测当前帧是否发生能量突变)。例如,当前帧经时延对齐处理的左声道信号的能量表示为ecur_l,前一帧时延对齐后的左声道信号的能量表示为epre_l,那么可根据epre_l和ecur_l之间的差值的绝对值来进行瞬态检测,得到当前帧经时延对齐处理的左声道信号的瞬态检测结果。同理,可以用同样的方法对当前帧经时延对齐处理的左声道信号进行瞬态检测。时域分析也可以包括除瞬态检测之外的其他传统方式的时域分析,例如可包括频带扩展预处理等。

可以理解,步骤903可在步骤902之后,在对当前帧的主要声道信号编码和次要声道信号编码之前的任意位置执行。

904、根据当前帧经时延对齐处理的左右声道信号进行当前帧的声道组合方案判决以确定当前帧的声道组合方案。

本实施例中举例两种可能的声道组合方案,以下描述中分别称为相关性信号声道组合方案和非相关性信号声道组合方案。本实施例中,相关性信号声道组合方案对应了当前帧(时延对齐后的)左右声道信号为类正相信号的情况下,而非相关性信号声道组合方案对应了当前帧(时延对齐后的)左右声道信号为类反相信号的情况。当然,除了用“相关性信号声道组合方案”和“非相关性信号声道组合方案”来表征这两种可能的声道组合方案之外,在实际应用中不限于用其他的名称命名这两种不同的声道组合方案。

本实施例一些方案中,声道组合方案判决可分为声道组合方案初始判决和声道组合方案修正判决。可以理解,通过进行当前帧的声道组合方案判决,进而确定所述当前帧的声道组合方案。其中,确定当前帧的声道组合方案的一些举例实施方式,可参考上述实施例的相关描述,此处不再赘述。

905、根据当前帧经时延对齐处理的左右声道信号和当前帧的声道组合方案标识,计算当前帧相关性信号声道组合方案对应的声道组合比例因子并编码,得到当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值及其编码索引。

具体例如,首先根据当前帧经时延对齐处理的左右声道信号计算当前帧的左右声道信号的帧能量。

其中,当前帧左声道信号的帧能量rms_l满足:

其中,当前帧右声道信号的帧能量rms_r满足:

其中,x′l(n)表示当前帧经时延对齐处理的左声道信号。

其中,x′r(n)表示当前帧经时延对齐处理的右声道信号。

然后,根据当前帧左声道的帧能量和右声道的帧能量,计算当前帧相关性信号声道组合方案对应的声道组合比例因子。其中,计算得到的当前帧相关性信号声道组合方案对应的声道组合比例因子ratio_init满足:

然后,对计算得到的当前帧相关性信号声道组合方案对应的声道组合比例因子ratio_init进行量化编码,得到对应的编码索引ratio_idx_init,及量化编码后的当前帧相关性信号声道组合方案对应的声道组合比例因子ratio_initqua:

ratio_initqua=ratio_tabl[ratio_idx_init]

其中,ratio_tabl为标量量化的码书。其中,量化编码可以采用传统的任何一种标量量化方法,例如均匀标量量化,也可以是非均匀标量量化,编码比特数例如为5比特,这里对标量量化的具体方法不再赘述。

量化编码后的当前帧相关性信号声道组合方案对应的声道组合比例因子ratio_initqua即为得到的当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值,编码索引ratio_idx_init即为当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值对应的编码索引。

另外,还可根据当前帧的声道组合方案标识tdm_sm_flag的值,对当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值对应的编码索引进行修正。

例如,量化编码为5比特的标量量化,则当tdm_sm_flag=1时,将当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值对应的编码索引ratio_idx_init修正为某一预先设定值(例如15或其他取值);并且,可将当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值修正为ratio_initqua=ratio_tabl[15]。

值得注意的是,除了上述计算方法,还可根据时域立体声编码传统技术中任何一种计算声道组合方案对应的声道组合比例因子的方法,计算当前帧相关性信号声道组合方案对应的声道组合比例因子。也可直接将当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值设置为固定值(例如0.5或其他值)。

906、可根据声道组合比例因子修正标识来判决是否需对声道组合比例因子进行修正。

若是,则修正当前帧相关性信号声道组合方案对应的声道组合比例因子及其编码索引,得到当前帧相关性信号声道组合方案对应的声道组合比例因子的修正值及其编码索引。

其中,当前帧的声道组合比例因子修正标识记作tdm_sm_modi_flag。例如声道组合比例因子修正标识取值为0,表示无需进行声道组合比例因子的修正,声道组合比例因子修正标识取值为1,表示需进行声道组合比例因子的修正。当然声道组合比例因子修正标识也可选用其它不同的取值来表示是否需进行声道组合比例因子的修正。

例如,根据声道组合比例因子修正标识判决是否需对声道组合比例因子进行修正具体可包括:例如若声道组合比例因子修正标识tdm_sm_modi_flag=1,则判决需对声道组合比例因子进行修正。又例如若声道组合比例因子修正标识tdm_sm_modi_flag=0,则判决无需对声道组合比例因子进行修正。

其中,修正当前帧相关性信号声道组合方案对应的声道组合比例因子及其编码索引具体可以包括:

例如当前帧相关性信号声道组合方案对应的声道组合比例因子的修正值对应的编码索引满足:ratio_idx_mod=0.5*(tdm_last_ratio_idx+16),其中,tdm_last_ratio_idx为上一帧相关性信号声道组合方案对应的声道组合比例因子的编码索引。

那么,当前帧相关性信号声道组合方案对应的声道组合比例因子的修正值ratio_modqua满足:ratio_modqua=ratio_tabl[ratio_idx_mod]。

907、根据当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值及其编码索引、当前帧相关性信号声道组合方案对应的声道组合比例因子的修正值及其编码索引、以及声道组合比例因子修正标识,确定当前帧相关性信号声道组合方案对应的声道组合比例因子ratio和编码索引ratio_idx。

具体例如,确定的相关性信号声道组合方案对应的声道组合比例因子ratio满足:

其中,上述ratio_initqua表示当前帧的相关性信号声道组合方案对应的声道组合比例因子的初始值,上述ratio_modqua表示当前帧的相关性信号声道组合方案对应的声道组合比例因子的修正值,上述tdm_sm_modi_flag表示当前帧的声道组合比例因子修正标识。

其中,确定的相关性信号声道组合方案对应的声道组合比例因子对应的编码索引ratio_idx满足:

其中,ratio_idx_init表示当前帧相关性信号声道组合方案对应的声道组合比例因子的初始值对应的编码索引,ratio_idx_mod表示当前帧相关性信号声道组合方案对应的声道组合比例因子的修正值对应的编码索引。

908、判断当前帧的声道组合方案标识是否对应非相关性信号声道组合方案,若是则计算当前帧非相关性信号声道组合方案对应的声道组合比例因子并编码,得到非相关性信号声道组合方案对应的声道组合比例因子和编码索引。

首先,可判断是否需要对计算当前帧非相关性信号声道组合方案对应的声道组合比例因子用到的历史缓存进行重置。

例如若当前帧的声道组合方案标识tdm_sm_flag等于1(例如tdm_sm_flag等于1表示当前帧的声道组合方案标识对应非相关性信号声道组合方案),而前一帧的声道组合方案标识tdm_last_sm_flag等于0(例如tdm_last_sm_flag等于0表示当前帧的声道组合方案标识对应相关性信号声道组合方案),则表示需要对计算当前帧非相关性信号声道组合方案对应的声道组合比例因子用到的历史缓存进行重置。

值得注意的是,判断是否需要对计算当前帧非相关性信号声道组合方案对应的声道组合比例因子用到的历史缓存进行重置,也可以通过在声道组合方案初始判决和声道组合方案修正判决的过程中确定历史缓存重置标识tdm_sm_reset_flag,然后,通过判断历史缓存重置标识的取值来实现。例如tdm_sm_reset_flag为1,表示当前帧的声道组合方案标识对应了非相关性信号声道组合方案而前一帧的声道组合方案标识对应了相关性信号声道组合方案。例如历史缓存重置标识tdm_sm_reset_flag等于1,表示需要对计算当前帧非相关性信号声道组合方案对应的声道组合比例因子用到的历史缓存进行重置。具体的重置方法有很多种,可以是将计算当前帧非相关性信号声道组合方案对应的声道组合比例因子用到的历史缓存中的所有参数均按照预先设定的初始值进行重置;或者也可以是将计算当前帧非相关性信号声道组合方案对应的声道组合比例因子用到的历史缓存中的部分参数均按照预先设定的初始值进行重置;或者还可将计算当前帧非相关性信号声道组合方案对应的声道组合比例因子用到的历史缓存中的部分参数均按照预先设定的初始值进行重置,而另一部分参数按照计算相关性信号声道组合方案对应的声道组合比例因子用到的历史缓存中对应的参数值进行重置。

接下来,进一步判断当前帧的声道组合方案标识tdm_sm_flag是否对应非相关性信号声道组合方案。其中,非相关性信号声道组合方案是一种更加适合于对类反相立体声信号进行时域下混的声道组合方案。其中,在本实施例中,在当前帧的声道组合方案标识tdm_sm_flag=1时,表征当前帧的声道组合方案标识对应了非相关性信号声道组合方案;在当前帧的声道组合方案标识tdm_sm_flag=0时,表征当前帧的声道组合方案标识对应了相关性信号声道组合方案。

判断当前帧的声道组合方案标识是否对应非相关性信号声道组合方案具体可包括:

判断当前帧的声道组合方案标识的值是否为1。若当前帧的声道组合方案标识tdm_sm_flag=1,表示当前帧的声道组合方案标识对应非相关性信号声道组合方案。在这种情况下,可计算当前帧非相关性信号声道组合方案对应的声道组合比例因子并编码。

参见图9-b,计算当前帧非相关性信号声道组合方案对应的声道组合比例因子并编码例如可包括如下的步骤9081-9085。

9081、对当前帧经时延对齐处理的左右声道信号进行信号能量分析。

分别得到当前帧左声道信号的帧能量、当前帧右声道信号的帧能量、当前帧左声道的长时平滑帧能量、当前帧右声道的长时平滑帧能量、当前帧左声道的帧间能量差异和当前帧右声道的帧间能量差异。

例如当前帧左声道信号的帧能量rms_l满足:

其中,当前帧右声道信号的帧能量rms_r满足:

其中,x′l(n)表示当前帧经时延对齐处理的左声道信号。

其中,x′r(n)表示当前帧经时延对齐处理的右声道信号。

例如当前帧左声道的长时平滑帧能量tdm_lt_rms_l_smcur满足:

tdm_lt_rms_l_smcur=(1-a)*tdm_lt_rms_l_smpre+a*rms_l

其中,tdm_lt_rms_l_smpre表示前一帧左声道的长时平滑帧能量,a表示左声道长时平滑帧能量的更新因子,a例如可以取0到1之间的实数,a例如可等于0.4。

例如当前帧右声道的长时平滑帧能量tdm_lt_rms_r_smcur满足:

tdm_lt_rms_r_smcur=(1-b)*tdm_lt_rms_r_smpre+b*rms_r

其中,tdm_lt_rms_r_smpre表示前一帧右声道的长时平滑帧能量,b表示右声道长时平滑帧能量的更新因子,b例如可以取0到1之间的实数,b例如可以和左声道长时平滑帧能量的更新因子取相同或不同的数值,b例如也可等于0.4。

例如当前帧左声道的帧间能量差异ener_l_dt满足:

ener_l_dt=tdm_lt_rms_l_smcur-tdm_lt_rms_l_smpre

例如当前帧右声道的帧间能量差异ener_r_dt满足:

ener_r_dt=tdm_lt_rms_r_smcur-tdm_lt_rms_r_smpre

9082、根据当前帧经时延对齐处理的左右声道信号确定当前帧的参考声道信号。参考声道信号也可被称作单声道信号,若将参考声道信号称作单声道信号,则后续所有与参考声道相关的描述和参数命名,则可以统一将参考声道信号替换为单声道信号。

例如参考声道信号mono_i(n)满足:

其中,x′l(n)为当前帧经时延对齐处理的左声道信号,其中,x′r(n)为当前帧经时延对齐处理的右声道信号。

9083、分别计算当前帧经时延对齐处理的左右声道信号与参考声道信号之间的幅度相关性参数。

例如,当前帧经时延对齐处理的左声道信号与参考声道信号之间的幅度相关性参数corr_lm例如满足:

例如当前帧经时延对齐处理的右声道信号与参考声道信号之间的幅度相关性参数corr_rm例如满足:

其中,x′l(n)表示当前帧经时延对齐处理的左声道信号。其中,x′r(n)表示当前帧经时延对齐处理的右声道信号。mono_i(n)表示当前帧的参考声道信号。|·|表示取绝对值。

9084、根据当前帧经时延对齐处理的左声道信号与参考声道信号之间的幅度相关性参数及当前帧经时延对齐处理的右声道信号与参考声道信号之间的幅度相关性参数,计算当前帧左右声道之间的幅度相关性差异参数diff_lt_corr。

可以理解,步骤9081可在步骤9082、9083之前执行,或者也可以在步骤9082、9083之后且在步骤9084之前执行。

参见图9-c,例如,计算当前帧左右声道之间的幅度相关性差异参数diff_lt_corr具体可包括如下步骤90841-90842。

90841、根据当前帧经时延对齐处理的左声道信号与参考声道信号之间的幅度相关性参数,以及当前帧经时延对齐处理的右声道信号与参考声道信号之间的幅度相关性参数,计算当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数,及当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数。

例如一种计算当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数及当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数,可包括:当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数tdm_lt_corr_lm_sm满足:

tdm_lt_corr_lm_smcur=α*tdm_lt_corr_lm_smpre+(1-α)corr_lm。

其中,tdm_lt_corr_lm_smcur表示当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数,tdm_lt_corr_lm_smpre表示前一帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数,α表示左声道平滑因子,其中,α可以是预先设定的0到1之间的实数,如0.2、0.5、0.8。或者,α的取值也可以通过自适应计算得到。

例如当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数tdm_lt_corr_rm_sm满足:

tdm_lt_corr_rm_smcur=β*tdm_lt_corr_rm_smpre+(1-β)corr_lm。

其中,tdm_lt_corr_rm_smcur表示当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数,tdm_lt_corr_rm_smpre表示前一帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数,β表示右声道平滑因子,其中,β可以是预先设定的0到1之间的实数,β可以和左声道平滑因子α取值相同或不同,例如β可等于0.2、0.5、0.8。或者β的取值也可以通过自适应计算得到。

另一种计算当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数及当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数的方法,可包括:

首先,对当前帧经时延对齐处理的左声道信号与参考声道信号之间的幅度相关性参数corr_lm进行修正,得到修正后的当前帧左声道信号与参考声道信号之间的幅度相关性参数corr_lm_mod;对当前帧经时延对齐处理的右声道信号与参考声道信号之间的幅度相关性参数corr_rm进行修正,得到修正后的当前帧右声道信号与参考声道信号之间的幅度相关性参数corr_rm_mod。

然后,根据修正后的当前帧左声道信号与参考声道信号之间的幅度相关性参数corr_lm_mod和修正后的当前帧右声道信号与参考声道信号之间的幅度相关性参数corr_rm_mod,以及前一帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数tdm_lt_corr_lm_smpre和前一帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数tdm_lt_corr_rm_smpre,确定当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数diff_lt_corr_lm_tmp及前一帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数diff_lt_corr_rm_tmp。

接下来,根据当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数diff_lt_corr_lm_tmp及前一帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数diff_lt_corr_rm_tmp,获得当前帧的左右声道之间的幅度相关性差异参数的初始值diff_lt_corr_sm;并根据获得的当前帧的左右声道之间的幅度相关性差异参数的初始值diff_lt_corr_sm以及前一帧的左右声道之间的幅度相关性差异参数tdm_last_diff_lt_corr_sm,确定当前帧的左右声道之间的幅度相关性差异的帧间变化参数d_lt_corr。

最后,根据信号能量分析而获得的当前帧左声道信号的帧能量、当前帧右声道信号的帧能量帧能量、当前帧左声道的长时平滑帧能量、当前帧右声道的长时平滑帧能量、当前帧左声道的帧间能量差异、当前帧右声道的帧间能量差异以及当前帧的左右声道之间的幅度相关性差异的帧间变化参数,自适应选择不同的左声道平滑因子、右声道平滑因子,并计算当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数tdm_lt_corr_lm_sm以及当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数tdm_lt_corr_rm_sm。

除以上举例的两种方法,还可以有很多种计算当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数及当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数的方法,本申请对此不作限定。

90842、根据当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数及当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数,计算当前帧左右声道之间的幅度相关性差异参数diff_lt_corr。

例如当前帧左右声道之间的幅度相关性差异参数diff_lt_corr满足:

diff_lt_corr=tdm_lt_corr_lm_sm-tdm_lt_corr_rm_sm

其中,tdm_lt_corr_lm_sm表示当前帧长时平滑后的左声道信号与参考声道信号之间的幅度相关性参数,tdm_lt_corr_rm_sm表示当前帧长时平滑后的右声道信号与参考声道信号之间的幅度相关性参数。

9085、将当前帧左右声道之间的幅度相关性差异参数diff_lt_corr转换为声道组合比例因子并进行编码量化,以确定当前帧非相关性信号声道组合方案对应的声道组合比例因子及其编码索引。

参见图9-d,将当前帧左右声道之间的幅度相关性差异参数转换为声道组合比例因子的一种可能方法具体可以包括步骤90851-90853。

90851、对左右声道之间的幅度相关性差异参数进行映射处理,使映射处理后的左右声道之间的幅度相关性差异参数的取值范围在[map_min,map_max]之间。

对左右声道之间的幅度相关性差异参数进行映射处理的一种方法可包括:

首先,对左右声道之间的幅度相关性差异参数进行限幅处理,例如经限幅处理后的左右声道之间的幅度相关性差异参数diff_lt_corr_limit满足:

ratio_max表示限幅后左右声道之间的幅度相关性差异参数的最大值,ratio_min表示限幅后左右声道之间的幅度相关性差异参数的最小值。其中,ratio_max例如为预先设定的经验值,ratio_max例如为1.5、3.0或其他值。其中,ratio_min例如为预先设定的经验值,ratio_min例如为-1.5、-3.0或其他值。其中,ratio_max>ratio_min。

然后,对限幅处理后的左右声道之间的幅度相关性差异参数进行映射处理。映射处理后的左右声道之间的幅度相关性差异参数diff_lt_corr_map满足:

其中,

b1=map_max-ratio_max*a1,或者b1=map_high-ratio_high*a1。

b2=map_low-ratio_low*a2,或者b2=map_min-ratio_min*a2。

b3=map_high-ratio_high*a3,或者b3=map_low-ratio_low*a3。

其中,map_max表示映射处理后的左右声道之间的幅度相关性差异参数取值的最大值,map_high表示映射处理后的左右声道之间的幅度相关性差异参数取值的高门限,map_low表示映射处理后的左右声道之间的幅度相关性差异参数取值的低门限。map_min表示映射处理后的左右声道之间的幅度相关性差异参数取值的最小值。

其中,map_max>map_high>map_low>map_min。

例如在本申请的一些实施例中,map_max可为2.0,map_high可为1.2,map_low可为0.8,map_min可为0.0。当然实际应用中不限于这样的取值举例。

ratio_max表示限幅后左右声道之间的幅度相关性差异参数的最大值,ratio_high表示限幅后左右声道之间的幅度相关性差异参数取值的高门限,ratio_low表示限幅后左右声道之间的幅度相关性差异参数取值的低门限,ratio_min表示限幅后左右声道之间的幅度相关性差异参数的最小值。

其中,ratio_max>ratio_high>ratio_low>ratio_min。

例如在本申请一些实施例中,ratio_max为1.5,ratio_high为0.75,ratio_low为-0.75,ratio_min为-1.5。当然实际应用中不限于这样的取值举例。

本申请的一些实施例的另一种方法是:映射处理后的左右声道之间的幅度相关性差异参数diff_lt_corr_map满足:

其中,diff_lt_corr_limit表示经过限幅处理后的左右声道之间的幅度相关性差异参数。

其中,

其中,ratio_max表示左右声道之间的幅度相关性差异参数的最大幅度,-ratio_max表示左右声道之间的幅度相关性差异参数的最小幅度。其中,ratio_max可以为预先设定的经验值,ratio_max例如可为1.5、3.0或其他大于0的实数。

90852、将映射处理后的左右声道之间的幅度相关性差异参数转换为声道组合比例因子。

声道组合比例因子ratio_sm满足:

其中,cos(·)表示余弦运算。

除了上述方法之外,还可以通过其他方法将左右声道之间的幅度相关性差异参数转换为声道组合比例因子,例如:

根据信号能量分析而获得的当前帧左声道的长时平滑帧能量、当前帧右声道的长时平滑帧能量、当前帧左声道的帧间能量差异、编码器历史缓存中的缓存前一帧的编码参数(例如主要声道信号的帧间相关性参数、次要声道信号的帧间相关性参数)、当前帧以及前一帧的声道组合方案标识、当前帧以及前一帧的非相关性信号声道组合方案对应的声道组合比例因子,确定是否对非相关性信号声道组合方案对应的声道组合比例因子进行更新。

若需要对非相关性信号声道组合方案对应的声道组合比例因子进行更新,则使用上述举例方法将左右声道之间的幅度相关性差异参数转换为声道组合比例因子;否则,直接将前一帧的非相关性信号声道组合方案对应的声道组合比例因子及其编码索引,作为当前帧的非相关性信号声道组合方案对应的声道组合比例因子及其编码索引。

90853、对转换后得到的声道组合比例因子进行量化编码,确定当前帧非相关性信号声道组合方案对应的声道组合比例因子。

具体例如,对转换后得到的声道组合比例因子进行量化编码,得到当前帧非相关性信号声道组合方案对应的初始编码索引ratio_idx_init_sm,及量化编码后的当前帧非相关性信号声道组合方案对应的声道组合比例因子的初始值ratio_init_smqua。

其中,ratio_init_smqua=ratio_tabl_sm[ratio_idx_init_sm]。

其中,ratio_tabl_sm表示非相关性信号声道组合方案对应的声道组合比例因子标量量化的码书。量化编码可以采用传统技术中的任何一种标量量化方法,如均匀标量量化,也可以是非均匀标量量化,编码比特数可以是5比特,这里对具体方法不再赘述。非相关性信号声道组合方案对应的声道组合比例因子标量量化的码书可以采用和相关性信号声道组合方案对应的声道组合比例因子标量量化的码书相同或不同的码书。其中,当码书相同,这样可只需要存储一个用于声道组合比例因子标量量化的码书即可。此时,量化编码后的当前帧非相关性信号声道组合方案对应的声道组合比例因子的初始值ratio_init_smqua。

其中,ratio_init_smqua=ratio_tabl[ratio_idx_init_sm]。

例如,一种方法是将量化编码后的当前帧非相关性信号声道组合方案对应的声道组合比例因子的初始值直接作为当前帧非相关性信号声道组合方案对应的声道组合比例因子,并将当前帧非相关性信号声道组合方案对应的声道组合比例因子的初始编码索引直接作为当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引,即:

其中,当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx_sm满足:ratio_idx_sm=ratio_idx_init_sm。

其中,当前帧非相关性信号声道组合方案对应的声道组合比例因子满足:

ratio_sm=ratio_tabl[ratio_idx_sm]

另一种方法可以是:根据前一帧的非相关性信号声道组合方案对应的声道组合比例因子的编码索引或者前一帧的非相关性信号声道组合方案对应的声道组合比例因子,对量化编码后的当前帧非相关性信号声道组合方案对应的声道组合比例因子的初始值以及当前帧非相关性信号声道组合方案对应的初始编码索引进行修正,将修正后的当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引作为当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引,将修正后的非相关性信号声道组合方案对应的声道组合比例因子作为当前帧非相关性信号声道组合方案对应的声道组合比例因子。

其中,当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx_sm满足:ratio_idx_sm=φ*ratio_idx_init_sm+(1-φ)*tdm_last_ratio_idx_sm。

其中,ratio_idx_init_sm表示当前帧非相关性信号声道组合方案对应的初始编码索引,tdm_last_ratio_idx_sm为前一帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引,为非相关性信号声道组合方案对应的声道组合比例因子的修正因子。的取值可为经验值,例如可等于0.8。

则当前帧非相关性信号声道组合方案对应的声道组合比例因子满足:

ratio_sm=ratio_tabl[ratio_idx_sm]

还有一种方法是:将未量化的非相关性信号声道组合方案对应的声道组合比例因子,作为当前帧非相关性信号声道组合方案对应的声道组合比例因子,即当前帧非相关性信号声道组合方案对应的声道组合比例因子的ratio_sm满足:

此外,第四种方法是:根据前一帧的非相关性信号声道组合方案对应的声道组合比例因子,对未量化的当前帧非相关性信号声道组合方案对应的声道组合比例因子进行修正,将修正后的非相关性信号声道组合方案对应的声道组合比例因子,作为当前帧非相关性信号声道组合方案对应的声道组合比例因子,并对其进行量化编码,得到当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引。

除以上述方法,还可以有很多种方法来将左右声道之间的幅度相关性差异参数转换为声道组合比例因子并进行编码量化,同样也有很多不同的方法来确定当前帧非相关性信号声道组合方案对应的声道组合比例因子及其编码索引,本申请对此不作限定。

909、根据前一帧的声道组合方案标识和当前帧的声道组合方案标识进行编码模式判决,以确定当前帧的编码模式。

其中,当前帧的声道组合方案标识记作tdm_sm_flag,前一帧的声道组合方案标识记作tdm_last_sm_flag,前一帧的声道组合方案标识和当前帧的声道组合方案标识的联合标识可以表示为(tdm_last_sm_flag,tdm_sm_flag),可根据此联合标识来进行编码模式判决,具体例如:

假设相关性信号声道组合方案用0表示,非相关性信号声道组合方案用1表示,则前一帧和当前帧的声道组合方案标识的联合标识有以下四种情况(01),(11),(10),(00),则当前帧的编码模式分别判决为:相关性信号编码模式,非相关性信号编码模式,相关性信号到非相关性信号编码模式,非相关性信号到相关性信号编码模式。例如:当前帧的声道组合方案标识的联合标识为(00),则表示当前帧的编码模式为相关性信号编码模式;当前帧的声道组合方案标识的联合标识为(11)则表示当前帧的编码模式为非相关性信号编码模式;当前帧的声道组合方案标识的联合标识为(01)则表示当前帧的编码模式为相关性信号到非相关性信号编码模式;当前帧的声道组合方案标识的联合标识为(10)则表示当前帧的编码模式为非相关性信号到相关性信号编码模式。

910、在获得当前帧的编码模式stereo_tdm_coder_type之后,编码装置根据当前帧的编码模式采用对应的时域下混处理方法对当前帧的左右声道信号进行时域下混处理,以得到当前帧的主要声道信号和次要声道信号。

其中,所述当前帧的编码模式为多种编码模式中的其中一种。例如所述多种编码模式可包括:相关性信号到非相关性信号编码模式、非相关性信号到相关性信号编码模式、相关性信号编码模式和非相关性信号编码模式等。其中,不同编码模式进行时域下混处理的实施方式,可参考上述实施例中的相关举例描述,此处不再赘述。

911、编码装置对主要声道信号和次要声道信号分别进行编码,得到主要声道编码信号和次要声道编码信号。

具体地,可以先根据前一帧的主要声道信号和/或次要声道信号编码中得到的参数信息以及主要声道信号编码和次要声道信号编码的总比特数,对主要声道信号编码和次要声道信号编码进行比特分配。然后根据比特分配的结果,分别对主要声道信号和次要声道信号进行编码,得到主要声道编码的编码索引、次要声道编码的编码索引。主要声道编码和次要声道编码,可以采用任何一种单声道音频编码技术,这里不再赘述。

912、编码装置根据声道组合方案标识选择相应的声道组合比例因子编码索引写入码流,并将主要声道编码信号、次要声道编码信号以及当前帧的声道组合方案标识写入码流。

具体例如,若当前帧的声道组合方案标识tdm_sm_flag对应了相关性信号声道组合方案,则将当前帧相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx写入码流;若当前帧的声道组合方案标识tdm_sm_flag对应了非相关性信号声道组合方案,则将当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx_sm写入码流。例如,tdm_sm_flag=0,则将当前帧相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx写入码流;tdm_sm_flag=1,则将当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx_sm写入码流。

并且,将主要声道编码信号、次要声道编码信号以及当前帧的声道组合方案标识写入比特流。可以理解,写码流操作无先后顺序。

相应的,下面针对时域立体声的解码场景进行举例说明。

参见图10,下面还提供一种音频解码方法,音频解码方法的相关步骤可由解码装置来具体实施,具体可包括:

1001、根据码流进行解码以得到当前帧的主次声道解码信号。

1002、根据码流进行解码以得到当前帧的时域立体声参数。

其中,当前帧的时域立体声参数包括当前帧的声道组合比例因子(码流包含的是当前帧的声道组合比例因子的编码索引,基于当前帧的声道组合比例因子的编码索引进行解码可以得到当前帧的声道组合比例因子),还可包括当前帧的声道间时间差(例如,码流包含的是当前帧的声道间时间差的编码索引,基于当前帧的声道间时间差的编码索引进行解码可以得到当前帧的声道间时间差;或者码流包含的是当前帧的声道间时间差的绝对值得编码索引,基于当前帧的声道间时间差的绝对值的编码索引进行解码可以得到当前帧的声道间时间差的绝对值)等。

1003、基于码流得到所述码流中包含的当前帧的声道组合方案标识,确定所述当前帧的声道组合方案。

1004、基于所述当前帧的声道组合方案和前一帧的声道组合方案确定当前帧的解码模式。

其中,基于所述当前帧的声道组合方案和前一帧的声道组合方案确定当前帧的解码模式,可参考步骤909中确定当前帧的编码模式的方法,根据所述当前帧的声道组合方案和前一帧的声道组合方案确定当前帧的解码模式。其中,所述当前帧的解码模式为多种解码模式中的其中一种。例如所述多种解码模式可包括:相关性信号到非相关性信号解码模式、非相关性信号到相关性信号解码模式、相关性信号编码模式和非相关性信号解码模式等。编码模式和解码模式是一一对应的。

例如,当前帧的声道组合方案标识的联合标识为(00)则表示当前帧的解码模式也为相关性信号解码模式;当前帧的声道组合方案标识的联合标识为(11)则表示当前帧的解码模式为非相关性信号解码模式;当前帧的声道组合方案标识的联合标识为(01)则表示当前帧的解码模式为相关性信号到非相关性信号解码模式;当前帧的声道组合方案标识的联合标识为(10)则表示当前帧的解码模式为非相关性信号到相关性信号解码模式。

可以理解,步骤1001、步骤1002、步骤1003-1004的执行没有必然的先后顺序。

1005、采用确定的当前帧的解码模式对应的时域上混处理方式,对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。

其中,不同解码模式进行时域上混处理的相关实施方式,可参考上述实施例中的相关举例描述,此处不再赘述。

其中,时域上混处理所使用的上混矩阵基于得到的当前帧的声道组合比例因子构建。

其中,当前帧的左右声道重建信号可作为所述当前帧的左右声道解码信号。

或者,进一步的,还可基于当前帧的声道间时间差对所述当前帧的左右声道重建信号进行时延调整,得到当前帧经时延调整的左右声道重建信号,当前帧经时延调整的左右声道重建信号可作为当前帧的左右声道解码信号。或者,进一步的,还可对当前帧经时延调整的左右声道重建信号进行时域后处理,其中,当前帧经时域后处理的左右声道重建信号可作为所述当前帧的左右声道解码信号。

上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。

参见图11-a,本申请实施例还提供一种装置1100,可包括:

相互耦合的处理器1110和存储器1120。所述处理器1110可用于执行本申请实施例提供的任意一种方法的部分或全部步骤。

存储器1120包括但不限于是随机存储记忆体(英文:randomaccessmemory,简称:ram)、只读存储器(英文:read-onlymemory,简称:rom)、可擦除可编程只读存储器(英文:erasableprogrammablereadonlymemory,简称:eprom)、或便携式只读存储器(英文:compactdiscread-onlymemory,简称:cd-rom),该存储器402用于相关指令及数据。

当然,装置1100还可包括用于接收和发送数据的收发器1130。

处理器1110可以是一个或多个中央处理器(英文:centralprocessingunit,简称:cpu),在处理器1110是一个cpu的情况下,该cpu可以是单核cpu,也可以是多核cpu。处理器1110具体可以是数字信号处理器。

在实现过程中,上述方法的各步骤可通过处理器1110中的硬件的集成逻辑电路或者软件形式的指令完成。上述处理器1110可以是通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。处理器1110可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。

软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等等本领域成熟的存储介质之中。该存储介质位于存储器1120,例如处理器1110可读取存储器1120中的信息,结合其硬件完成上述方法的步骤。

进一步的,装置1100还可包括收发器1130,收发器1130例如可用于相关数据(例如指令或声道信号或码流)的收发。

举例来说,装置1100可执行上述图2-图9任意一附图所示实施例中对应的方法的部分或全部步骤。

具体例如,当装置1100执行上述编码的相关步骤时,装置1100可称为编码装置(或音频编码装置)。当装置1100执行上述解码的相关步骤时,装置1100可称为解码装置(或音频解码装置)。

参见图11-b,在装置1100为编码装置的情况下,装置1100例如还可进一步包括:麦克风1140和模数转换器1150等。

其中,麦克风1140例如可用于采样得到模拟音频信号。

模数转换器1150例如可用于将模拟音频信号转换为数字音频信号。

参见图11-c,在装置1100为编码装置的情况下,装置1100例如还可进一步包括:扬声器1160和数模转换器1170等。

数模转换器1170例如可用于将数字音频信号转换为模拟音频信号。

其中,扬声器1160例如可用于播放模拟音频信号。

此外,参见图12-a,本申请实施例提供一种装置1200,包括用于实施本申请实施例提供的任意一种方法的若干个功能单元。

例如,当装置1200执行图2所示实施例中对应的方法时,装置1200可包括:

第一确定单元1210,用于确定当前帧的声道组合方案,基于前一帧和当前帧的声道组合方案确定当前帧的编码模式。

编码单元1220,用于基于当前帧的编码模式所对应的时域下混处理对当前帧的左右声道信号进行时域下混处理,以得到当前帧的主次声道信号。

此外,参见图12-b,装置1200还可包括第二确定单元1230,用于确定当前帧的时域立体声参数。编码单元1220还可用于对当前帧的时域立体声参数进行编码。

又例如,参见图12-c,当装置1200执行图3所示实施例中对应的方法时,装置1200可包括:

第三确定单元1240,用于基于码流中的当前帧的声道组合方案标识确定当前帧的声道组合方案;根据前一帧的声道组合方案和所述当前帧的声道组合方案,确定所述当前帧的解码模式。

解码单元1250,用于基于码流解码得到当前帧的主次声道解码信号;基于当前帧的解码模式所对应的时域上混处理对当前帧的主次声道解码信号进行时域上混处理,以得到当前帧的左右声道重建信号。

这个装置执行其他方法时的情况以此类推。

本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储了程序代码,其中,所述程序代码包括用于执行本申请实施例提供的任意一种方法的部分或全部步骤的指令。

本申请实施例提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本申请实施例提供的任意一种方法的部分或全部步骤。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可结合或者可以集成到另一个系统,或一些特征可以忽略或不执行。另一点,所显示或讨论的相互之间的间接耦合或者直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例的方案的目的。

另外,在本发明各实施例中的各功能单元可集成在一个处理单元中,也可以是各单元单独物理存在,也可两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,或者也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1