CN109859766B - 音频编解码方法和相关产品 - Google Patents

音频编解码方法和相关产品 Download PDF

Info

Publication number
CN109859766B
CN109859766B CN201711244330.5A CN201711244330A CN109859766B CN 109859766 B CN109859766 B CN 109859766B CN 201711244330 A CN201711244330 A CN 201711244330A CN 109859766 B CN109859766 B CN 109859766B
Authority
CN
China
Prior art keywords
downmix mode
current frame
mode
downmix
switching
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711244330.5A
Other languages
English (en)
Other versions
CN109859766A (zh
Inventor
李海婷
王宾
苗磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201711244330.5A priority Critical patent/CN109859766B/zh
Priority to TW107126918A priority patent/TWI705432B/zh
Priority to KR1020207017982A priority patent/KR102437451B1/ko
Priority to PCT/CN2018/118301 priority patent/WO2019105436A1/zh
Priority to BR112020010850-2A priority patent/BR112020010850A2/pt
Priority to JP2020529337A priority patent/JP7088450B2/ja
Priority to EP18884568.9A priority patent/EP3703050B1/en
Publication of CN109859766A publication Critical patent/CN109859766A/zh
Priority to US16/887,878 priority patent/US11393482B2/en
Application granted granted Critical
Publication of CN109859766B publication Critical patent/CN109859766B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S1/00Two-channel systems
    • H04S1/007Two-channel systems in which the audio signals are in digital form
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/03Aspects of down-mixing multi-channel audio to configurations with lower numbers of playback channels, e.g. 7.1 -> 5.1
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/008Systems employing more than two channels, e.g. quadraphonic in which the audio signals are in digital form, i.e. employing more than two discrete digital channels

Abstract

本申请实施例公开了音频编解码方法和相关产品。一种音频编码方法,包括:确定当前帧的声道组合方案;根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式;根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号;对得到的所述当前帧的主次声道信号进行编码。本申请实施例提供的技术方案有利于提高编码质量。

Description

音频编解码方法和相关产品
技术领域
本申请涉及音频编解码技术领域,尤其涉及音频编解码方法和相关产品。
背景技术
随着生活质量的提高,人们对高质量音频的需求不断增大。相对于单声道音频,立体声音频具有各声源的方位感和分布感,能够提高信息的清晰度、可懂度和临场感,因而备受人们青睐。
参数立体声编解码技术通过将立体声信号转换为单声道信号和空间感知参数,对多声道信号进行压缩处理,是一种常见的立体声编解码技术。但是由于参数立体声编解码技术通常需要在频域提取空间感知参数,需进行时频变换,使得整个编解码器的时延相对较大。因此在时延要求较严格的情况下,时域立体声编码技术,是一种更好的选择。
传统时域立体声编码技术是在时域将信号下混为两路单声道信号,例如MS编码技术先将左右声道信号下混为中央通道(Mid channel)信号和边通道(Side channel)信号。例如L表示左声道信号,R表示右声道信号,则Mid channel信号为0.5*(L+R),Mid channel信号表征了左右两个声道之间的相关信息;Side channel信号为0.5*(L-R),Side channel信号表征了左右两个声道之间的差异信息。然后,分别对Mid channel信号和Side channel信号采用单声道编码方法编码,对于Mid channel信号,通常用相对较多比特数进行编码;对于Side channel信号,通常用相对较少比特数进行编码。
本申请发明人研究和实践发现,采用传统时域立体声编码技术有时候出现主要信号能量特别小甚至能量缺失的现象,进而导致最终编码质量下降。
发明内容
本申请实施例提供音频编解码方法和相关产品。
第一方面,本申请实施例提供了一种音频编码方法,包括:确定当前帧的声道组合方案;根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式;根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号;对得到的所述当前帧的主次声道信号进行编码。
其中,当前帧的立体声信号例如由当前帧的左右声道信号组成。
其中,所述当前帧的声道组合方案为多种声道组合方案中的其中一种。例如所述多种声道组合方案包括非相关性信号声道组合方案和相关性信号声道组合方案。其中,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。
可以理解,类正相信号对应的声道组合方案适用于类正相信号,类反相信号对应的声道组合方案适用于类反相信号。
其中,音频帧(例如前一帧/当前帧)的下混模式为多种下混模式中的其中一种,其中,所述多种下混模式包括:下混模式A、下混模式B、下混模式C和下混模式D;其中,所述下混模式A和所述下混模式D为相关性信号下混模式;所述下混模式B和所述下混模式C为非相关性信号下混模式;其中,所述音频帧的下混模式A、所述音频帧的下混模式B、所述音频帧的下混模式C和所述音频帧的下混模式D对应的下混矩阵互不相同。
可以理解,由于下混矩阵和上混矩阵是对应的,因此,所述音频帧的下混模式A、所述音频帧的下混模式B、所述音频帧的下混模式C和所述音频帧的下混模式D对应的上混矩阵也互不相同。
可以理解,上述编码方案中,需根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,这就表示当前帧的编码模式存在多种可能,因此,相对于只有唯一一种编码模式的传统方案而言,多种可能的编码模式、下混模式和多种可能场景之间有利于获得更好的兼容匹配效果。
此外,第二方面,本申请实施例提供了一种音频编码模式确定方法,可以包括:确定当前帧的声道组合方案;根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式。
其中,所述当前帧的编码模式为多种编码模式中的其中一种。例如所述多种编码模式可包括:下混模式切换型编码模式和下混模式非切换型编码模式等。
具体的,下混模式非切换型编码模式可包括:下混模式A到下混模式A对应的编码模式、下混模式B到下混模式B对应的编码模式、下混模式C到下混模式C对应的编码模式和下混模式D到下混模式D对应的编码模式。
具体的,下混模式切换型编码模式可包括:下混模式A切换到下混模式B对应的编码模式、下混模式A切换到下混模式C对应的编码模式、下混模式B切换到下混模式A对应的编码模式、下混模式B切换到下混模式D对应的编码模式、下混模式C切换到下混模式A对应的编码模式、下混模式C切换到下混模式D对应的编码模式、下混模式D切换到到下混模式B对应的编码模式和下混模式D切换到到下混模式C对应的编码模式。
其中,根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式的具体实施方式可以是多种多样的。
例如,在一些可能的实施方式中,根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,可以包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式A,确定所述当前帧的编码模式为从下混模式A到下混模式A对应的编码模式;或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为非相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式B,确定所述当前帧的编码模式为从下混模式B到下混模式B对应的编码模式;或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为非相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式C到下混模式C对应的编码模式;或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式D到下混模式D对应的编码模式。
又例如,在一些可能的实施方式中,根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,可包括:根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式。
其中,所述当前帧的下混模式切换代价值例如可为根据所述当前帧的下混模式切换代价函数进行计算的计算结果(例如结果越大表示切换代价越大);其中,所述下混模式切换代价函数基于如下参数的至少一种来构建:所述当前帧的至少一种时域立体声参数、所述前一帧的至少一种时域立体声参数和所述当前帧的左右声道信号。
或者,当前帧的下混模式切换代价值为当前帧的声道组合比例因子。
其中,下混模式切换代价函数例如为如下切换代价函数的其中一种:下混模式A切换到下混模式B的下混模式切换代价函数、下混模式A切换到下混模式C的下混模式切换代价函数、下混模式D切换到下混模式B的下混模式切换代价函数、下混模式D切换到下混模式C的下混模式切换代价函数、下混模式B切换到下混模式A的下混模式切换代价函数、下混模式B切换到下混模式D的下混模式切换代价函数、下混模式C切换到下混模式A的下混模式切换代价函数、下混模式C切换到下混模式D的下混模式切换代价函数等。
在一些可能的实施方式中,根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式,具体可包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第一下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第一模式切换条件为当前帧的下混模式A切换到下混模式B的切换代价函数值大于或等于下混模式A切换到下混模式C的切换代价函数值;或者,
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第二下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第二模式切换条件为当前帧的下混模式A切换到下混模式B的切换代价函数值小于或等于下混模式A切换到下混模式C的切换代价函数值;或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第三下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式B切换到下混模式A对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第三模式切换条件为当前帧的下混模式B切换到下混模式A的切换代价函数值小于或等于下混模式B切换到下混模式D的切换代价函数值;或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第四下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式B切换到下混模式D对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第四模式切换条件为当前帧的下混模式B切换到下混模式A的切换代价函数值大于或等于下混模式B切换到下混模式D的切换代价函数值;或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第五下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式C切换到下混模式D对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第五模式切换条件为当前帧的下混模式C切换到下混模式A的切换代价函数值大于或等于下混模式C切换到下混模式D的切换代价函数值;或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第六下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式C切换到下混模式A对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第六模式切换条件为当前帧的下混模式C切换到下混模式A的切换代价函数值小于或等于下混模式C切换到下混模式D的切换代价函数值;或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第七下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式D切换到下混模式B对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第七模式切换条件为当前帧的下混模式D切换到下混模式B的切换代价函数值小于或等于下混模式D切换到下混模式C的切换代价函数值;或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第八下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式D切换到下混模式C对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第八模式切换条件为当前帧的下混模式D切换到下混模式B的切换代价函数值大于或等于下混模式D切换到下混模式C的切换代价函数值。
在另一些可能的实施方式中,根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式,例如可包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第九下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第九模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S1;或者,
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第十下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S1;或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十一下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式B切换到下混模式A对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,并且所述第十一模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S2;或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十二下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式B切换到下混模式D对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十二模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S2;或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十三下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式C切换到下混模式D对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十三模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S3;或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十四下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式C切换到下混模式A对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十四模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S3;或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十五下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式D切换到下混模式B对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十五模式切换条件为当前帧的声道组合比例因子小于或或等于声道组合比例因子阈值S4;或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十六下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式D切换到下混模式C对应的编码模式;其中,当前帧的下混模式切换代价函数值为当前帧的声道组合比例因子,且所述第十六模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S4。
其中,在所述当前帧和前一帧的下混模式不同的情况下,可确定当前帧的编码模式例如可能为下混模式切换型编码模式,那么,可根据所述当前帧和前一帧的下混模式对所述当前帧的左右声道信号进行分段时域下混处理。
由于在所述当前帧和前一帧的声道组合方案不同的情况下引入了对所述当前帧的左右声道信号进行分段时域下混处理的机制,分段时域下混处理机制有利于实现声道组合方案的平滑过度,进而有利于提高编码质量。
在一些可能的实施方式中,确定当前帧的声道组合方案可包括:利用所述当前帧的左右声道信号确定所述当前帧的立体声信号的信号正反相类型;利用所述当前帧的立体声信号的信号正反相类型和前一帧的声道组合方案确定所述当前帧的声道组合方案。其中,所述当前帧的立体声信号的信号正反相类型可以是类正相信号或类反相信号。所述当前帧的立体声信号的信号正反相类型可通过所述当前帧的信号正反相类型标识来指示。具体例如,当所述当前帧的信号正反相类型标识取值为“1”时,指示所述当前帧的立体声信号的信号正反相类型为类正相信号,当所述当前帧的信号正反相类型标识取值为“0”时,指示所述当前帧的立体声信号的信号正反相类型为类反相信号,反之亦可。
音频帧(例如前一帧或当前帧)的声道组合方案可通过所述音频帧的声道组合方案标识来指示。具体例如,当音频帧的声道组合方案标识取值为“0”时,指示该音频帧的声道组合方案为相关性信号声道组合方案。当音频帧的声道组合方案标识取值为“1”时,指示该音频帧的声道组合方案为非相关性信号声道组合方案,反之亦可。
其中,利用所述当前帧的左右声道信号确定所述当前帧的立体声信号的信号正反相类型可包括:计算所述当前帧的左右声道信号之间的相关性值xorr,在所述xorr小于或者等于第一阈值的情况下确定所述当前帧的立体声信号的信号正反相类型为类正相信号,在所述xorr大于第一阈值的情况下确定所述当前帧的立体声信号的信号正反相类型为类反相信号。进一步的,若利用所述当前帧的信号正反相类型标识来指示所述当前帧的立体声信号的信号正反相类型,则在确定所述当前帧的立体声信号的信号正反相类型为类正相信号的情况下,可置所述当前帧的信号正反相类型标识的取值指示出所述当前帧的立体声信号的信号正反相类型为类正相信号;那么,在确定所述当前帧的信号正反相类型为类正相信号的情况下,可置所述当前帧的信号正反相类型标识的取值指示出所述当前帧的立体声信号的信号正反相类型为类反相信号。
具体例如,音频帧(例如前一帧或当前帧)的信号正反相类型标识取值为“0”时,指示该音频帧的立体声信号的信号正反相类型为类正相信号;音频帧(例如前一帧或当前帧)的信号正反相类型标识取值为“1”时,指示该音频帧的立体声信号的信号正反相类型为类反相信号,以此类推。
其中,利用所述当前帧的立体声信号的信号正反相类型和前一帧的声道组合方案确定所述当前帧的声道组合方案,例如可包括:
在所述当前帧的立体声信号的信号正反相类型为类正相信号,且前一帧的声道组合方案为相关性信号声道组合方案的情况下,确定所述当前帧的声道组合方案为相关性信号声道组合方案;在所述当前帧的立体声信号的信号正反相类型为类反相信号,且前一帧的声道组合方案为非相关性信号声道组合方案的情况下,确定所述当前帧的声道组合方案为非相关性信号声道组合方案;或者,
在所述当前帧的立体声信号的信号正反相类型为类正相信号,并且前一帧的声道组合方案为非相关性信号声道组合方案的情况下,如果所述当前帧的左右声道信号的信噪比均小于第二阈值,确定所述当前帧的声道组合方案为相关性信号声道组合方案;如果所述当前帧的左声道信号和/或右声道信号的信噪比大于或等于第二阈值,确定所述当前帧的声道组合方案为非相关性信号声道组合方案;或者,
在所述当前帧的立体声信号的信号正反相类型为类反相信号,并且前一帧的声道组合方案为相关性信号声道组合方案的情况下,如果所述当前帧的左右声道信号的信噪比均小于第二阈值,确定所述当前帧的声道组合方案为非相关性信号声道组合方案;如果所述当前帧的左声道信号和/或右声道信号的信噪比大于或等于第二阈值,确定所述当前帧的声道组合方案为相关性信号声道组合方案。
第三方面,本申请实施例还提供一种音频解码方法,包括:根据码流进行解码以得到当前帧的主次声道解码信号;根据码流进行解码以确定所述当前帧的下混模式;根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式;根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。
其中,所述当前帧的声道组合方案为多种声道组合方案中的其中一种。例如所述多种声道组合方案包括非相关性信号声道组合方案和相关性信号声道组合方案。所述相关性信号声道组合方案为类正相信号对应的声道组合方案。所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。可以理解,类正相信号对应的声道组合方案适用于类正相信号,类反相信号对应的声道组合方案适用于类反相信号。
可以理解,由于时域下混和时域上混是对应的,编码和解码是对应的,因此,可根据当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理(其中,时域上混处理所使用的上混矩阵与编码装置时域下混所使用的下混矩阵是对应的)以得到所述当前帧的左右声道重建信号。
在一些可能的实施方式中,所述根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式,可包括:若前一帧的下混模式为下混模式A,所述当前帧的下混模式A为下混模式A,确定所述当前帧的编码模式为从下混模式A到下混模式A对应的编码模式。或者,
若前一帧的下混模式为下混模式A,所述当前帧的为下混模式B,确定所述当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式。或者,
若前一帧的下混模式为下混模式A,所述当前帧的为下混模式C,确定所述当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式。或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式B,确定所述当前帧的编码模式为从下混模式B到下混模式B对应的编码模式。或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式A,确定所述当前帧的编码模式为从下混模式B到下混模式A对应的编码模式。或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式D,确定所述当前帧的编码模式为从下混模式B到下混模式D对应的编码模式。或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式C到下混模式C对应的编码模式。或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式A,确定所述当前帧的编码模式为从下混模式C到下混模式A对应的编码模式。或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式C到下混模式D对应的编码模式。或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式D到下混模式D对应的编码模式。或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式D到下混模式C对应的编码模式。或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式B,确定所述当前帧的编码模式为从下混模式D到下混模式B对应的编码模式。
可以理解,上述解码方案中,需根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式,这就表示当前帧的编码模式存在多种可能,相对于只有唯一一种编码模式的传统方案而言,多种可能的编码模式、下混模式和多种可能场景之间有利于获得更好的兼容匹配效果。
第四方面,本申请实施例还提供一种音频编码模式确定方法,包括:根据码流进行解码以得到当前帧的主次声道解码信号;根据码流进行解码以确定所述当前帧的下混模式;根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式。
下面对各种下混模式切换代价函数进行举例说明。在实际应用中,切换代价函数的具体构建方式可以是多种多样的,并不一定限于下面的举例形式。
举例来说,当前帧的下混模式A切换到下混模式B的下混模式切换代价函数可为:
Figure BDA0001490492070000071
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_AB表示下混模式A切换到下混模式B的下混模式切换代价函数值;其中,所述start_sample_A表示下混模式A切换到下混模式B的模式切换代价函数的计算起始样点,end_sample_A为表示下混模式A切换到下混模式B的模式切换代价函数的计算结束样点,所述start_sample_A为大于0且小于N-1的整数,所述end_sample_A为大于0且小于N-1的整数,所述start_sample_A小于所述end_sample_A。
例如end_sample_A-start_sample_A的取值范围可为[60,200],例如end_sample_A-start_sample_A等于60、69、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式A切换到下混模式C的下混模式切换代价函数可为:
Figure BDA0001490492070000072
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_AC表示下混模式A切换到下混模式C的下混模式切换代价函数值;其中,所述start_sample_A表示下混模式A切换到下混模式C的模式切换代价函数的计算起始样点,end_sample_A为表示下混模式A切换到下混模式C的模式切换代价函数的计算结束样点,所述start_sample_A为大于0且小于N-1的整数,所述end_sample_A为大于0且小于N-1的整数,所述start_sample_A小于所述end_sample_A。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式B切换到下混模式A的下混模式切换代价函数为:
Figure BDA0001490492070000081
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_BA表示下混模式B切换到下混模式A的下混模式切换代价函数值;其中,所述start_sample_B表示下混模式B切换到下混模式A的模式切换代价函数的计算起始样点,end_sample_B为表示下混模式B切换到下混模式A的模式切换代价函数的计算结束样点,所述start_sample_B为大于0且小于N-1的整数,所述end_sample_B为大于0且小于N-1的整数,所述start_sample_B小于所述end_sample_B。
例如end_sample_B-start_sample_B的取值范围可为[60,200],例如end_sample_B-start_sample_B等于60、67、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式B切换到下混模式D的下混模式切换代价函数可为:
Figure BDA0001490492070000082
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_BD表示下混模式B切换到下混模式D的下混模式切换代价函数值;其中,所述start_sample_B表示下混模式B切换到下混模式D的模式切换代价函数的计算起始样点,end_sample_B为表示下混模式B切换到下混模式D的模式切换代价函数的计算结束样点,所述start_sample_B为大于0且小于N-1的整数,所述end_sample_B为大于0且小于N-1的整数,所述start_sample_B小于所述end_sample_B。
例如end_sample_B-start_sample_B的取值范围可为[60,200],例如end_sample_B-start_sample_B等于60、67、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式C切换到下混模式D的下混模式切换代价函数可为:
Figure BDA0001490492070000091
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_CD表示下混模式C切换到下混模式D的下混模式切换代价函数值;其中,所述start_sample_C表示下混模式C切换到下混模式D的模式切换代价函数的计算起始样点,end_sample_C为表示下混模式C切换到下混模式D的模式切换代价函数的计算结束样点,所述start_sample_C为大于0且小于N-1的整数,所述end_sample_C为大于0且小于N-1的整数,所述start_sample_C小于所述end_sample_C。
例如end_sample_C-start_sample_C的取值范围可为[60,200],例如end_sample_C-start_sample_C等于60、71、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号。
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式C切换到下混模式A的下混模式切换代价函数可为:
Figure BDA0001490492070000092
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_CA表示下混模式C切换到下混模式A的下混模式切换代价函数值;其中,所述start_sample_C表示下混模式C切换到下混模式A的模式切换代价函数的计算起始样点,end_sample_C为表示下混模式C切换到下混模式A的模式切换代价函数的计算结束样点,所述start_sample_C为大于0且小于N-1的整数,所述end_sample_C为大于0且小于N-1的整数,所述start_sample_C小于所述end_sample_C,
例如end_sample_C-start_sample_C的取值范围可为[60,200],例如end_sample_C-start_sample_C等于60、71、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式D切换到下混模式C的下混模式切换代价函数可为:
Figure BDA0001490492070000101
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_DC表示下混模式D切换到下混模式C的下混模式切换代价函数值;其中,所述start_sample_D表示下混模式D切换到下混模式C的模式切换代价函数的计算起始样点,end_sample_D为表示下混模式D切换到下混模式C的模式切换代价函数的计算结束样点,所述start_sample_D为大于0且小于N-1的整数,所述end_sample_D为大于0且小于N-1的整数,所述start_sample_D小于所述end_sample_D。
例如end_sample_D-start_sample_D的取值范围可为[60,200],例如end_sample_D-start_sample_D等于60、73、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中所述XL(n)表示所述当前帧的左声道信号所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式D切换到下混模式B的下混模式切换代价函数为:
Figure BDA0001490492070000102
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_DB表示下混模式D切换到下混模式B的下混模式切换代价函数值;其中,所述start_sample_D表示下混模式D切换到下混模式B的模式切换代价函数的计算起始样点,end_sample_D为表示下混模式D切换到下混模式B的模式切换代价函数的计算结束样点,所述start_sample_D为大于0且小于N-1的整数,所述end_sample_D为大于0且小于N-1的整数,所述start_sample_D小于所述end_sample_D。
例如end_sample_D-start_sample_D的取值范围可为[60,200],例如end_sample_D-start_sample_D等于60、73、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
下面对当前帧的不同下混模式A对应的一些下混矩阵和上混矩阵进行举例说明。
例如,M2A表示当前帧的下混模式A对应的下混矩阵,所述M2A基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。那么,例如:
Figure BDA0001490492070000111
或者
Figure BDA0001490492070000112
其中,ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000113
表示当前帧的下混模式A对应的下混矩阵M2A对应的上混矩阵,所述
Figure BDA0001490492070000114
基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000115
或者
Figure BDA0001490492070000116
例如,所述M2B表示当前帧的下混模式B对应的下混矩阵。所述M2B基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000117
Figure BDA0001490492070000118
其中,α1=ratio_SM;α2=1-ratio_SM;ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000119
表示当前帧的下混模式B对应的下混矩阵M2B对应的上混矩阵,所述
Figure BDA00014904920700001110
基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA00014904920700001111
Figure BDA00014904920700001112
其中,α1=ratio_SM;α2=1-ratio_SM;ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
例如,M2C表示当前帧的下混模式C对应的下混矩阵;所述M2C基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA00014904920700001113
Figure BDA00014904920700001114
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000121
表示当前帧的下混模式C对应的下混矩阵M2C对应的上混矩阵,所述
Figure BDA0001490492070000122
基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000123
Figure BDA0001490492070000124
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
例如,M2D表示当前帧的下混模式D对应的下混矩阵;所述M2D基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000125
Figure BDA0001490492070000126
其中,α1=ratio;α2=1-ratio;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000127
表示当前帧的下混模式D对应的下混矩阵M2D对应的上混矩阵,所述
Figure BDA0001490492070000128
基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建,例如:
Figure BDA0001490492070000129
Figure BDA00014904920700001210
其中,α1=ratio;α2=1-ratio;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
下面对前一帧的一些下混矩阵和上混矩阵进行举例说明。
例如,M1A表示前一帧的下混模式A对应的下混矩阵,所述M1A基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。那么,例如:
Figure BDA00014904920700001211
或者
Figure BDA00014904920700001212
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000131
表示前一帧的下混模式A对应的下混矩阵M1A对应的上混矩阵(
Figure BDA0001490492070000132
简称前一帧的下混模式A对应的上混矩阵),其中,所述
Figure BDA0001490492070000133
基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000134
或者
Figure BDA0001490492070000135
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
例如,所述M1B表示前一帧的下混模式B对应的下混矩阵。所述M1B基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000136
Figure BDA0001490492070000137
其中,α1_pre=tdm_last_ratio_SM;α2_pre=1-α1_pre;tdm_last_ratio_SM表示所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000138
表示前一帧的下混模式B对应的下混矩阵M1B对应的上混矩阵,所述
Figure BDA0001490492070000139
基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA00014904920700001310
Figure BDA00014904920700001311
其中,α1_pre=tdm_last_ratio_SM;α2_pre=1-α1_pre;tdm_last_ratio_SM表示所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
例如,M1C表示前一帧的下混模式C对应的下混矩阵;所述M1C基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA00014904920700001312
Figure BDA00014904920700001313
其中,α1_pre=tdm_last_ratio_SM;α2_pre=1-α1_pre;tdm_last_ratio_SM表示所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA00014904920700001314
表示前一帧的下混模式C对应的下混矩阵M1C对应的上混矩阵,所述
Figure BDA00014904920700001315
基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000141
Figure BDA0001490492070000142
其中,α1_pre=tdm_last_ratio_SM;α2_pre=1-α1_pre;tdm_last_ratio_SM表示所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
例如,M2D表示前一帧的下混模式D对应的下混矩阵;所述M1D基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000143
Figure BDA0001490492070000144
其中,α1_pre=tdm_last_ratio;α2_pre=1-α1_pre;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000145
表示前一帧的下混模式D对应的下混矩阵M1D对应的上混矩阵,所述
Figure BDA0001490492070000146
基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建,例如:
Figure BDA0001490492070000147
Figure BDA0001490492070000148
其中,α1_pre=tdm_last_ratio;α2_pre=1-α1_pre;所述tdm_last_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是本申请实施例提供的另一种装置的示意图。
具体实施方式
下面结合本申请实施例中的附图对本申请实施例进行描述。
本申请说明书和权利要求书以及上述附图之中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包括。例如包括一系列步骤或单元的过程、方法、系统或产品或设备没有限定于已列出的步骤或单元,而是可选地还可包括没有列出的步骤或单元,或者可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。另外来说,术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。
需要说明,由于本申请各实施例方案针对的时域场景,因此为了简化描述,时域信号可简称“信号”。例如,左声道时域信号可简称“左声道信号”。又例如,右声道时域信号可以简称“右声道信号”。又例如,单声道时域信号可简称“单声道信号”。又例如参考声道时域信号可简称“参考声道信号”。又例如主要声道时域信号可简称“主要声道信号”。次要声道时域信号可简称“次要声道信号”。又例如中央通道(Mid channel)时域信号可以简称“中央通道信号”。又例如边通道(Side channel)时域信号可简称“边通道信号”。其他情况可以此类推。
需要说明,本申请各实施例中,左声道时域信号和右声道时域信号可合称“左右声道时域信号”或可合称“左右声道信号”。也就是说,左右声道时域信号包括左声道时域信号和右声道时域信号。又例如当前帧经时延对齐处理的左右声道时域信号包括当前帧经时延对齐处理的左声道时域信号和当前帧经时延对齐处理的右声道时域信号。类似的,主要声道信号和次要声道信号可合称“主次声道信号”。也就是说,主次声道信号包括主要声道信号和次要声道信号。又例如主次声道解码信号包括主要声道解码信号和次要声道解码信号。又例如左右声道重建信号包括左声道重建信号和右声道重建信号。以此类推。
其中,例如传统MS编码技术先将左右声道信号下混为中央通道(Mid channel)信号和边通道(Side channel)信号。例如L表示左声道信号,R表示右声道信号,则Midchannel信号为0.5*(L+R),Mid channel信号表征了左右两个声道之间的相关信息。Sidechannel信号为0.5*(L-R),Side channel信号表征了左右两个声道之间的差异信息。然后,分别对Mid channel信号和Side channel信号采用单声道编码方法编码。其中,对于Midchannel信号,通常用相对较多比特数进行编码;对于Side channel信号,通常用相对较少比特数进行编码。
进一步的,为了提高编码质量,一些方案通过对左右声道的时域信号进行分析,提取用于指示时域下混处理中左右声道所占比例的时域立体声参数。提出这种方法的目的是:当立体声左右声道信号之间的能量相差比较大的时候,有利于提升时域下混信号中的主要声道的能量,降低次要声道的能量。
例如,L表示左声道信号,R表示右声道信号,那么,则主要声道(Primary channel)信号记作Y,Y=alpha*L+beta*R,其中,Y表征了两个声道之间的相关信息。次要声道(Secondary channel)记作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、确定当前帧的声道组合方案。
其中,所述当前帧的声道组合方案为多种声道组合方案中的其中一种。例如所述多种声道组合方案可以包括非相关性信号声道组合方案(anticorrelated signalChannel Combination Scheme)和相关性信号声道组合方案(correlated signal ChannelCombination Scheme)。其中,所述相关性信号声道组合方案为类正相信号对应的声道组合方案。所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。可以理解,类正相信号对应的声道组合方案适用于类正相信号,类反相信号对应的声道组合方案适用于类反相信号。
202、根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式。
此外,若当前帧为第一帧(即不存在当前帧的前一帧)的情况下,可以基于当前帧的声道组合方案确定当前帧的下混模式和编码模式。或者,也可以将默认的某种下混模式和编码模式作为当前帧的下混模式和编码模式。
其中,前一帧的下混模式可为如下多种下混模式中的其中一种:下混模式A、下混模式B、下混模式C和下混模式D。其中,所述下混模式A和所述下混模式D为相关性信号下混模式。所述下混模式B和所述下混模式C为非相关性信号下混模式。其中,所述前一帧的下混模式A、所述前一帧的下混模式B、所述前一帧的下混模式C和所述前一帧的下混模式D对应的下混矩阵互不相同。
其中,当前帧的下混模式可为如下多种下混模式中的其中一种:下混模式A、下混模式B、下混模式C和下混模式D。其中,所述下混模式A和所述下混模式D为相关性信号下混模式。所述下混模式B和所述下混模式C为非相关性信号下混模式。其中,所述当前帧的下混模式A、所述前一帧的下混模式B、所述前一帧的下混模式C和所述前一帧的下混模式D对应的下混矩阵互不相同。
其中,本申请一些实施例中,有时候将“时域下混”简称“下混”,有时候将“时域上混”简称“上混”。例如将“时域下混模式”简称“下混模式”;将“时域下混矩阵”简称“下混矩阵”;将“时域上混模式”简称“上混模式”;将“时域上混矩阵”简称“上混矩阵”;将“时域上混处理”简称“上混处理”,将“时域下混处理”简称“下混处理”,以此类推。
可以理解,本申请实施例中对编码模式、解码模式、下混模式、上混模式和声道组合方案等对象的命名都是示意性的,在实际应用中也可能选用其他名称。
203、根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号,对得到的所述当前帧的主次声道信号进行编码。
其中,对当前帧的左右声道信号进行时域下混处理可得到当前帧的主次声道信号,通过进一步对得到的所述当前帧的主次声道信号进行编码以得到码流。可进一步将当前帧的声道组合方案标识(当前帧的声道组合方案标识用于指示当前帧的声道组合方案)写入码流,以便于解码装置基于码流中包含的当前帧的声道组合方案标识来确定当前帧的声道组合方案。可进一步将当前帧的下混模式标识(当前帧的下混模式标识用于指示当前帧的下混模式)写入码流,以便于解码装置基于码流中包含的当前帧的下混模式标识来确定当前帧的下混模式。
其中,根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式的具体实现方式可以是多种多样的。
具体例如,在一些可能的实施方式中,根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,可以包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式A,确定所述当前帧的编码模式为从下混模式A到下混模式A对应的编码模式。或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为非相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式B,确定所述当前帧的编码模式为从下混模式B到下混模式B对应的编码模式。或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为非相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式C到下混模式C对应的编码模式。或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式D到下混模式D对应的编码模式。
又例如,在一些可能的实施方式中,根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,可包括:根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式。
在一些可能的实施方式中,下混模式切换代价值可以表征下混模式切换代价,例如下混模式切换代价值越大则表示下混模式切换代价。
例如,所述当前帧的下混模式切换代价值可为根据所述当前帧的下混模式切换代价函数进行计算的计算结果(计算结果即下混模式切换代价函数值)。其中,所述下混模式切换代价函数例如可基于如下参数的至少一种来构建:当前帧的至少一种时域立体声参数(当前帧的至少一种时域立体声参例如包括当前帧的声道组合比例因子等)、前一帧的至少一种时域立体声参数(前一帧的至少一种时域立体声参例如包括前一帧的声道组合比例因子等)和所述当前帧的左右声道信号。
又例如,当前帧的下混模式切换代价值可为当前帧的声道组合比例因子。
例如下混模式切换代价函数可为如下切换代价函数的其中一种:
下混模式A切换到下混模式B的下混模式切换代价函数、下混模式A切换到下混模式C的下混模式切换代价函数、下混模式D切换到下混模式B的下混模式切换代价函数、下混模式D切换到下混模式C的下混模式切换代价函数、下混模式B切换到下混模式A的下混模式切换代价函数、下混模式B切换到下混模式D的下混模式切换代价函数、下混模式C切换到下混模式A的下混模式切换代价函数、下混模式C切换到下混模式D的下混模式切换代价函数。
具体例如如图4举例所示,在一些可能的实施方式中,根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式,可以包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第一下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第一模式切换条件为当前帧的下混模式A切换到下混模式B的切换代价函数值大于或等于下混模式A切换到下混模式C的切换代价函数值。或者,
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第二下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第二模式切换条件为当前帧的下混模式A切换到下混模式B的切换代价函数值小于或等于下混模式A切换到下混模式C的切换代价函数值。或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第三下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式B切换到下混模式A对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第三模式切换条件为当前帧的下混模式B切换到下混模式A的切换代价函数值小于或等于下混模式B切换到下混模式D的切换代价函数值。或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第四下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式B切换到下混模式D对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第四模式切换条件为当前帧的下混模式B切换到下混模式A的切换代价函数值大于或等于下混模式B切换到下混模式D的切换代价函数值。或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第五下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式C切换到下混模式D对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第五模式切换条件为当前帧的下混模式C切换到下混模式A的切换代价函数值大于或等于下混模式C切换到下混模式D的切换代价函数值。或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第六下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式C切换到下混模式A对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第六模式切换条件为当前帧的下混模式C切换到下混模式A的切换代价函数值小于或等于下混模式C切换到下混模式D的切换代价函数值。或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第七下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式D切换到下混模式B对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第七模式切换条件为当前帧的下混模式D切换到下混模式B的切换代价函数值小于或等于下混模式D切换到下混模式C的切换代价函数值。或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第八下混模式切换条件,则可确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式D切换到下混模式C对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第八模式切换条件为当前帧的下混模式D切换到下混模式B的切换代价函数值大于或等于下混模式D切换到下混模式C的切换代价函数值。
又具体例如图5举例所示,在一些可能的实施方式中,根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式,可包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第九下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第九模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S1。或者,
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第十下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S1。或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十一下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式B切换到下混模式A对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,并且所述第十一模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S2。或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十二下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式B切换到下混模式D对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十二模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S2。或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十三下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式C切换到下混模式D对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十三模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S3。或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十四下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式C切换到下混模式A对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十四模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S3。或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十五下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式D切换到下混模式B对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十五模式切换条件为当前帧的声道组合比例因子小于或或等于声道组合比例因子阈值S4。或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十六下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式D切换到下混模式C对应的编码模式;其中,当前帧的下混模式切换代价函数值为当前帧的声道组合比例因子,且所述第十六模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S4。
其中,声道组合比例因子阈值S1的取值范围例如可以是[0.4,0.6],例如S1可等于0.4、0.42、0.45、0.5、0.55、0.58、0.6或其它值。
其中,声道组合比例因子阈值S2的取值范围例如可以是[0.4,0.6],例如S1可等于0.4、0.42、0.45、0.5、0.55、0.57、0.6或其它值。
其中,声道组合比例因子阈值S3的取值范围例如可以是[0.4,0.6],例如S1可等于0.4、0.42、0.45、0.5、0.55、0.59、0.6或其它值。
其中,声道组合比例因子阈值S4的取值范围例如可以是[0.4,0.6],例如S1可等于0.4、0.43、0.45、0.5、0.55、0.58、0.6或其它值。
可以理解,上述对声道组合比例因子阈值S4取值范围的举例是示例性的,可以基于切换测量来灵活的设置。
其中,在所述当前帧和前一帧的下混模式不同的情况下,那么可根据所述当前帧编码模式对所述当前帧的左右声道信号进行分段时域下混处理。由于在所述当前帧和前一帧的下混模式不同的情况下引入了对所述当前帧的左右声道信号进行分段时域下混处理的机制,分段时域下混处理机制有利于实现声道组合方案的平滑过度,进而有利于提高编码质量。
可以理解,上述编码方案中,需确定当前帧的声道组合方案,且需根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,这就表示当前帧的声道组合方案存在多种可能,当前帧的编码模式存在多种可能,这相对于只有唯一一种声道组合方案和唯一一种编码模式的传统方案而言,多种可能的声道组合方案、多种编码模式和多种可能场景之间有利于获得更好的兼容匹配效果,进而有利于提高编码质量。
并且,由于引入了针对类反相信号对应的声道组合方案,这使得对于当前帧的立体声信号为类反相信号的情况,有了针对性相对更强的声道组合方案和编码模式,进而有利于提高编码质量。
进一步的,由于针对相关性信号声道组合方案和非相关性信号声道组合方案分别引入了两种不同的下混模式,通过合理设计对应的下混矩阵,有利于实现无切换位置要求的随意性切换。
相应的,下面针对时域立体声的解码场景进行举例说明。
参见图3,下面还提供一种音频解码方法,音频解码方法的相关步骤可由解码装置来实施,方法具体可包括:
301、根据码流进行解码以得到当前帧的主次声道解码信号。
302、根据码流进行解码以确定所述当前帧的下混模式。
其中,例如编码装置在码流中写入了所述当前帧的下混模式标识(所述当前帧的下混模式标识指示出所述当前帧的下混模式),那么根据码流进行解码可得到所述当前帧的下混模式标识,进而可基于解码得到的所述当前帧的下混模式标识确定所述当前帧的下混模式。当然,解码端也可基于编码端的类似方式来确定所述当前帧的下混模式。或者基于码流中包含的其它信息确定当前帧的下混模式。
其中,前一帧的下混模式可为如下多种下混模式中的其中一种:下混模式A、下混模式B、下混模式C和下混模式D。其中,所述下混模式A和所述下混模式D为相关性信号下混模式。所述下混模式B和所述下混模式C为非相关性信号下混模式。其中,所述前一帧的下混模式A、所述前一帧的下混模式B、所述前一帧的下混模式C和所述前一帧的下混模式D对应的下混矩阵互不相同。
其中,当前帧的下混模式可为如下多种下混模式中的其中一种:下混模式A、下混模式B、下混模式C和下混模式D。其中,所述下混模式A和所述下混模式D为相关性信号下混模式。所述下混模式B和所述下混模式C为非相关性信号下混模式。其中,所述当前帧的下混模式A、所述前一帧的下混模式B、所述前一帧的下混模式C和所述前一帧的下混模式D对应的下混矩阵互不相同。
可以理解,不同的下混矩阵对应不同的上混矩阵。
举例来说,下混模式标识例如可包括至少两个比特,例如当下混模式标识取值“00”时可表示所述当前帧的下混模式为下混模式A。例如当下混模式标识取值“01”时可以表示所述当前帧的下混模式为下混模式B,例如当下混模式标识取值“10”时可以表示所述当前帧的下混模式为下混模式C,例如当下混模式标识取值“11”时可以表示所述当前帧的下混模式为下混模式D。
可以理解,由于所述下混模式A和所述下混模式D为相关性信号下混模式,因此当基于解码得到的所述当前帧的下混模式标识确定所述当前帧的下混模式为下混模式A或下混模式D时,也就可以确定当前帧的声道组合方案为相关性声道组合方案。
类似的,由于所述下混模式B和所述下混模式C为相关性信号下混模式,因此当基于解码得到的所述当前帧的下混模式标识确定所述当前帧的下混模式为下混模式B或下混模式C时,也就可以确定当前帧的声道组合方案为非相关性声道组合方案。
303、根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式。
其中,根据前一帧的下混模式和所述当前帧的下混模式确定当前帧的编码模式可能是下混模式切换型编码模式或下混模式非切换型编码模式。具体的,下混模式非切换型编码模式可包括:下混模式A到下混模式A对应的编码模式、下混模式B到下混模式B对应的编码模式、下混模式C到下混模式C对应的编码模式和下混模式D到下混模式D对应的编码模式。
具体的,下混模式切换型编码模式可包括:下混模式A切换到下混模式B对应的编码模式、下混模式A切换到下混模式C对应的编码模式、下混模式B切换到下混模式A对应的编码模式、下混模式B切换到下混模式D对应的编码模式、下混模式C切换到下混模式A对应的编码模式、下混模式C切换到下混模式D对应的编码模式、下混模式D切换到到下混模式B对应的编码模式和下混模式D切换到到下混模式C对应的编码模式。
具体例如,根据前一帧的下混模式和当前帧的下混模式确定所述当前帧的编码模式,可包括:
若前一帧的下混模式为下混模式A,所述当前帧的下混模式A为下混模式A,确定所述当前帧的编码模式为从下混模式A到下混模式A对应的编码模式。或者,
若前一帧的下混模式为下混模式A,所述当前帧的为下混模式B,确定所述当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式。或者,
若前一帧的下混模式为下混模式A,所述当前帧的为下混模式C,确定所述当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式。或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式B,确定所述当前帧的编码模式为从下混模式B到下混模式B对应的编码模式。或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式A,确定所述当前帧的编码模式为从下混模式B到下混模式A对应的编码模式。或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式D,确定所述当前帧的编码模式为从下混模式B到下混模式D对应的编码模式。或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式C到下混模式C对应的编码模式。或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式A,确定所述当前帧的编码模式为从下混模式C到下混模式A对应的编码模式。或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式C到下混模式D对应的编码模式。或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式D到下混模式D对应的编码模式。或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式D到下混模式C对应的编码模式。或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式B,确定所述当前帧的编码模式为从下混模式D到下混模式B对应的编码模式。
304、根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。
其中,左右声道重建信号可为左右声道解码信号,或可通过将左右声道重建信号进行时延调整处理和/或时域后处理以得到左右声道解码信号。
可以理解,下混模式和上混模式是对应的,编码模式和解码模式也是对应的。
例如,在所述当前帧和前一帧的下混模式不同的情况下,那么可根据所述当前帧编码模式对所述当前帧的主次声道解码信号进行分段时域上混处理。由于在所述当前帧和前一帧的下混模式不同的情况下引入了对所述当前帧的主次声道解码信号进行分段时域上混处理的机制,分段时域上混处理机制有利于实现声道组合方案的平滑过度,进而有利于提高编码质量。
可以理解,上述解码方案中,需根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式,这就表示前一帧和当前帧的下混模式存在多种可能,当前帧的编码模式存在多种可能,这相对于只有唯一一种下混模式和唯一一种编码模式的传统方案而言,多种可能的下混模式、多种编码模式和多种可能场景之间有利于获得更好的兼容匹配效果,进而有利于提高编码质量。
并且,由于引入了针对类反相信号对应的声道组合方案,这使得对于当前帧的立体声信号为类反相信号的情况,有了针对性相对更强的声道组合方案和编码模式,进而有利于提高编码质量。
下面举例编码装置确定当前帧的声道组合方案的一些具体实现方式。编码装置确定当前帧的声道组合方案的具体实现方式是多种多样的。
其中,在所述当前帧和前一帧的下混模式不同的情况下,可确定当前帧的编码模式例如可能为下混模式切换型编码模式,那么,可根据所述当前帧和前一帧的下混模式对所述当前帧的左右声道信号进行分段时域下混处理。
由于在所述当前帧和前一帧的声道组合方案不同的情况下引入了对所述当前帧的左右声道信号进行分段时域下混处理的机制,分段时域下混处理机制有利于实现声道组合方案的平滑过度,进而有利于提高编码质量。
在一些可能的实施方式中,确定当前帧的声道组合方案可包括:利用所述当前帧的左右声道信号确定所述当前帧的立体声信号的信号正反相类型;利用所述当前帧的立体声信号的信号正反相类型和前一帧的声道组合方案确定所述当前帧的声道组合方案。其中,所述当前帧的立体声信号的信号正反相类型可以是类正相信号或类反相信号。所述当前帧的立体声信号的信号正反相类型可通过所述当前帧的信号正反相类型标识来指示。具体例如,当所述当前帧的信号正反相类型标识取值为“1”时,指示所述当前帧的立体声信号的信号正反相类型为类正相信号,当所述当前帧的信号正反相类型标识取值为“0”时,指示所述当前帧的立体声信号的信号正反相类型为类反相信号,反之亦可。
音频帧(例如前一帧或当前帧)的声道组合方案可通过所述音频帧的声道组合方案标识来指示。具体例如,当音频帧的声道组合方案标识取值为“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_last_SM_flag。
可以理解,上述举例中给出了确定当前帧的声道组合方案的一些实施方式,但实际应用中也可能不限于上述举例方式。
下面对各种下混模式切换代价函数进行举例说明。其中,下混模式切换代价函数可为如下切换代价函数的其中一种:下混模式A切换到下混模式B的下混模式切换代价函数、下混模式A切换到下混模式C的下混模式切换代价函数、下混模式D切换到下混模式B的下混模式切换代价函数、下混模式D切换到下混模式C的下混模式切换代价函数、下混模式B切换到下混模式A的下混模式切换代价函数、下混模式B切换到下混模式D的下混模式切换代价函数、下混模式C切换到下混模式A的下混模式切换代价函数、下混模式C切换到下混模式D的下混模式切换代价函数。例如,下混模式切换代价函数例如可基于如下参数的至少一种来构建:当前帧的至少一种时域立体声参数(当前帧的至少一种时域立体声参例如包括当前帧的声道组合比例因子等)、前一帧的至少一种时域立体声参数(前一帧的至少一种时域立体声参例如包括前一帧的声道组合比例因子等)和所述当前帧的左右声道信号。
在实际应用中,切换代价函数的具体构建方式可以是多种多样的,下面进行举例说明。
举例来说,当前帧的下混模式A切换到下混模式B的下混模式切换代价函数可为:
Figure BDA0001490492070000251
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_AB表示下混模式A切换到下混模式B的下混模式切换代价函数值;其中,所述start_sample_A表示下混模式A切换到下混模式B的模式切换代价函数的计算起始样点,end_sample_A为表示下混模式A切换到下混模式B的模式切换代价函数的计算结束样点,所述start_sample_A为大于0且小于N-1的整数,所述end_sample_A为大于0且小于N-1的整数,所述start_sample_A小于所述end_sample_A。
例如end_sample_A-start_sample_A的取值范围可为[60,200],例如end_sample_A-start_sample_A等于60、69、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式A切换到下混模式C的下混模式切换代价函数可为:
Figure BDA0001490492070000252
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_AC表示下混模式A切换到下混模式C的下混模式切换代价函数值;其中,所述start_sample_A表示下混模式A切换到下混模式C的模式切换代价函数的计算起始样点,end_sample_A为表示下混模式A切换到下混模式C的模式切换代价函数的计算结束样点,所述start_sample_A为大于0且小于N-1的整数,所述end_sample_A为大于0且小于N-1的整数,所述start_sample_A小于所述end_sample_A。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式B切换到下混模式A的下混模式切换代价函数为:
Figure BDA0001490492070000261
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_BA表示下混模式B切换到下混模式A的下混模式切换代价函数值;其中,所述start_sample_B表示下混模式B切换到下混模式A的模式切换代价函数的计算起始样点,end_sample_B为表示下混模式B切换到下混模式A的模式切换代价函数的计算结束样点,所述start_sample_B为大于0且小于N-1的整数,所述end_sample_B为大于0且小于N-1的整数,所述start_sample_B小于所述end_sample_B。
例如end_sample_B-start_sample_B的取值范围可为[60,200],例如end_sample_B-start_sample_B等于60、67、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式B切换到下混模式D的下混模式切换代价函数可为:
Figure BDA0001490492070000262
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_BD表示下混模式B切换到下混模式D的下混模式切换代价函数值;其中,所述start_sample_B表示下混模式B切换到下混模式D的模式切换代价函数的计算起始样点,end_sample_B为表示下混模式B切换到下混模式D的模式切换代价函数的计算结束样点,所述start_sample_B为大于0且小于N-1的整数,所述end_sample_B为大于0且小于N-1的整数,所述start_sample_B小于所述end_sample_B。
例如end_sample_B-start_sample_B的取值范围可为[60,200],例如end_sample_B-start_sample_B等于60、67、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式C切换到下混模式D的下混模式切换代价函数可为:
Figure BDA0001490492070000271
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_CD表示下混模式C切换到下混模式D的下混模式切换代价函数值;其中,所述start_sample_C表示下混模式C切换到下混模式D的模式切换代价函数的计算起始样点,end_sample_C为表示下混模式C切换到下混模式D的模式切换代价函数的计算结束样点,所述start_sample_C为大于0且小于N-1的整数,所述end_sample_C为大于0且小于N-1的整数,所述start_sample_C小于所述end_sample_C。
例如end_sample_C-start_sample_C的取值范围可为[60,200],例如end_sample_C-start_sample_C等于60、71、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号。
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式C切换到下混模式A的下混模式切换代价函数可为:
Figure BDA0001490492070000272
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_CA表示下混模式C切换到下混模式A的下混模式切换代价函数值;其中,所述start_sample_C表示下混模式C切换到下混模式A的模式切换代价函数的计算起始样点,end_sample_C为表示下混模式C切换到下混模式A的模式切换代价函数的计算结束样点,所述start_sample_C为大于0且小于N-1的整数,所述end_sample_C为大于0且小于N-1的整数,所述start_sample_C小于所述end_sample_C,
例如end_sample_C-start_sample_C的取值范围可为[60,200],例如end_sample_C-start_sample_C等于60、71、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式D切换到下混模式C的下混模式切换代价函数可为:
Figure BDA0001490492070000273
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_DC表示下混模式D切换到下混模式C的下混模式切换代价函数值;其中,所述start_sample_D表示下混模式D切换到下混模式C的模式切换代价函数的计算起始样点,end_sample_D为表示下混模式D切换到下混模式C的模式切换代价函数的计算结束样点,所述start_sample_D为大于0且小于N-1的整数,所述end_sample_D为大于0且小于N-1的整数,所述start_sample_D小于所述end_sample_D。
例如end_sample_D-start_sample_D的取值范围可为[60,200],例如end_sample_D-start_sample_D等于60、73、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
又例如,当前帧的下混模式D切换到下混模式B的下混模式切换代价函数为:
Figure BDA0001490492070000281
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_DB表示下混模式D切换到下混模式B的下混模式切换代价函数值;其中,所述start_sample_D表示下混模式D切换到下混模式B的模式切换代价函数的计算起始样点,end_sample_D为表示下混模式D切换到下混模式B的模式切换代价函数的计算结束样点,所述start_sample_D为大于0且小于N-1的整数,所述end_sample_D为大于0且小于N-1的整数,所述start_sample_D小于所述end_sample_D。
例如end_sample_D-start_sample_D的取值范围可为[60,200],例如end_sample_D-start_sample_D等于60、73、80、100、120、150、180、191、200或其它值。
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
下面对当前帧的不同下混模式A对应的一些下混矩阵和上混矩阵进行举例说明。
例如,M2A表示当前帧的下混模式A对应的下混矩阵,所述M2A基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。那么,例如:
Figure BDA0001490492070000282
或者
Figure BDA0001490492070000291
其中,ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000292
表示当前帧的下混模式A对应的下混矩阵M2A对应的上混矩阵,所述
Figure BDA0001490492070000293
基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000294
或者
Figure BDA0001490492070000295
例如,所述M2B表示当前帧的下混模式B对应的下混矩阵。所述M2B基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000296
Figure BDA0001490492070000297
其中,α1=ratio_SM;α2=1-ratio_SM;ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000298
表示当前帧的下混模式B对应的下混矩阵M2B对应的上混矩阵,所述
Figure BDA0001490492070000299
基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA00014904920700002910
Figure BDA00014904920700002911
其中,α1=ratio_SM;α2=1-ratio_SM;ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
例如,M2C表示当前帧的下混模式C对应的下混矩阵;所述M2C基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA00014904920700002912
Figure BDA00014904920700002913
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA00014904920700002914
表示当前帧的下混模式C对应的下混矩阵M2C对应的上混矩阵,所述
Figure BDA00014904920700002915
基于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000301
Figure BDA0001490492070000302
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
例如,M2D表示当前帧的下混模式D对应的下混矩阵;所述M2D基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000303
Figure BDA0001490492070000304
其中,α1=ratio;α2=1-ratio;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000305
表示当前帧的下混模式D对应的下混矩阵M2D对应的上混矩阵,所述
Figure BDA0001490492070000306
基于所述当前帧的相关性信号声道组合方案对应的声道组合比例因子构建,例如:
Figure BDA0001490492070000307
Figure BDA0001490492070000308
其中,α1=ratio;α2=1-ratio;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
下面对前一帧的一些下混矩阵和上混矩阵进行举例说明。
例如,M1A表示前一帧的下混模式A对应的下混矩阵,所述M1A基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。那么,例如:
Figure BDA0001490492070000309
或者
Figure BDA00014904920700003010
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA00014904920700003011
表示前一帧的下混模式A对应的下混矩阵M1A对应的上混矩阵(
Figure BDA00014904920700003012
简称前一帧的下混模式A对应的上混矩阵),其中,所述
Figure BDA00014904920700003013
基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000311
或者
Figure BDA0001490492070000312
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
例如,所述M1B表示前一帧的下混模式B对应的下混矩阵。所述M1B基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000313
Figure BDA0001490492070000314
其中,α1_pre=tdm_last_ratio_SM;α2_pre=1-α1_pre;tdm_last_ratio_SM表示所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000315
表示前一帧的下混模式B对应的下混矩阵M1B对应的上混矩阵,所述
Figure BDA0001490492070000316
基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000317
Figure BDA0001490492070000318
其中,α1_pre=tdm_last_ratio_SM;α2_pre=1-α1_pre;tdm_last_ratio_SM表示所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
例如,M1C表示前一帧的下混模式C对应的下混矩阵;所述M1C基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000319
Figure BDA00014904920700003110
其中,α1_pre=tdm_last_ratio_SM;α2_pre=1-α1_pre;tdm_last_ratio_SM表示所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA00014904920700003111
表示前一帧的下混模式C对应的下混矩阵M1C对应的上混矩阵,所述
Figure BDA00014904920700003112
基于所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA00014904920700003113
Figure BDA0001490492070000321
其中,α1_pre=tdm_last_ratio_SM;α2_pre=1-α1_pre;tdm_last_ratio_SM表示所述前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
例如,M2D表示前一帧的下混模式D对应的下混矩阵;所述M1D基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建。例如:
Figure BDA0001490492070000322
Figure BDA0001490492070000323
其中,α1_pre=tdm_last_ratio;α2_pre=1-α1_pre;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
相应的,
Figure BDA0001490492070000324
表示前一帧的下混模式D对应的下混矩阵M1D对应的上混矩阵,所述
Figure BDA0001490492070000325
基于所述前一帧的相关性信号声道组合方案对应的声道组合比例因子构建,例如:
Figure BDA0001490492070000326
Figure BDA0001490492070000327
其中,α1_pre=tdm_last_ratio;α2_pre=1-α1_pre;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
可以理解,上面对下混矩阵和上混矩阵形式的举例都是示例性的,当然在实际应用中还可能存在其它形式的下混矩阵和上混矩阵。
下面进一步针对不同的编码模式场景和对应解码模式场景进行举例说明。可以理解,不同的编码模式所对应的时域下混处理方式通常不同。并且每种编码模式也可能对应一种或多种时域下混处理方式。
下面先针针对当前帧和前一帧的下混模式相同的一些编解码情况进行举例说明。
首先,针对当前帧的编码模式为下混模式A到下混模式A对应的编码模式的情况下的编码场景和解码场景进行举例说明。
举例来说,例如当前帧的编码模式为下混模式A到下混模式A对应的编码模式,那么,在一些可能的编码实施方式中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
Figure BDA0001490492070000328
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号;其中,所述n表示样点序号。所述M2A表示所述当前帧的下混模式A对应的下混矩阵。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
Figure BDA0001490492070000331
其中,所述n表示样点序号,所述
Figure BDA0001490492070000332
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000333
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000334
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000335
表示所述当前帧的次要声道解码信号。所述
Figure BDA0001490492070000336
表示所述当前帧的下混模式A对应的上混矩阵。
又例如,当前帧的编码模式为下混模式A到下混模式A对应的编码模式,那么,在另一些可能的编码实施方式中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000337
if N-delay_com≤n<N:
Figure BDA0001490492070000338
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000339
if N-upmixing_delay≤n<N:
Figure BDA00014904920700003310
其中,所述n表示样点序号,所述
Figure BDA00014904920700003311
表示所述当前帧的左声道重建信号,所述
Figure BDA00014904920700003312
表示所述当前帧的右声道重建信号,所述
Figure BDA00014904920700003313
表示所述当前帧的主要声道解码信号,所述
Figure BDA00014904920700003314
表示所述当前帧的次要声道解码信号;
其中,所述upmixing_delay表示解码时延补偿。
所述delay_com表示编码时延补偿。
其中,所述n表示样点序号,N表示帧长;例如n=0,1,…,N-1。
所述M1A表示所述前一帧的下混模式A对应的下混矩阵。所述M2A表示所述当前帧的下混模式A对应的下混矩阵。所述
Figure BDA00014904920700003315
表示所述前一帧的下混模式A对应的上混矩阵。所述
Figure BDA00014904920700003316
表示所述前一帧的下混模式A对应的下混矩阵。
又例如,当前帧的编码模式为下混模式A到下混模式A对应的编码模式,那么,在另一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000341
if N-delay_com≤n<N-delay_com+NOVA_A:
Figure BDA0001490492070000342
if N-delay_com+NOVA_A≤n<N:
Figure BDA0001490492070000343
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000344
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000345
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000346
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_A:
Figure BDA0001490492070000347
if N-upmixing_delay+NOVA_A≤n<N:
Figure BDA0001490492070000348
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000349
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA00014904920700003410
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子
其中,NOVA_A表示下混模式A对应的过渡处理长度。其中,NOVA_A取值可根据具体场景需要设定。NOVA_A例如可等于3/N或者NOVA_A可为小于N的其它值。
下面针对下混模式B到下混模式B对应的编码模式的场景进行举例说明。
举例来说,例如当前帧的编码模式为下混模式B到下混模式B对应的编码模式,那么,在一些可能实施方式中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
Figure BDA0001490492070000351
其中,所述XL(n)表示所述当前帧的左声道信号所述XR(n)表示所述当前帧的右声道信号所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。其中,所述n表示样点序号。所述M2B表示所述当前帧的下混模式B对应的下混矩阵。
又例如,当前帧的编码模式为下混模式B到下混模式B对应的编码模式,那么,在另一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000352
if N-delay_com≤n<N:
Figure BDA0001490492070000353
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号;
其中,所述n表示样点序号,N表示帧长;所述delay_com表示编码时延补偿。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000354
if N-upmixing_delay≤n<N:
Figure BDA0001490492070000355
其中,所述n表示样点序号,所述
Figure BDA0001490492070000356
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000357
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000358
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000359
表示所述当前帧的次要声道解码信号;
其中,所述upmixing_delay表示解码时延补偿。
所述delay_com表示编码时延补偿。
其中,所述n表示样点序号,N表示帧长;例如n=0,1,…,N-1。
所述M1B表示所述前一帧的下混模式B对应的下混矩阵。所述M2B表示所述当前帧的下混模式B对应的下混矩阵。所述
Figure BDA0001490492070000361
表示所述前一帧的下混模式B对应的上混矩阵。所述
Figure BDA0001490492070000362
表示所述前一帧的下混模式B对应的下混矩阵。
又例如,当前帧的编码模式为下混模式A到下混模式A对应的编码模式,那么,在另一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000363
if N-delay_com≤n<N-delay_com+NOVA_B:
Figure BDA0001490492070000364
if N-delay_com+NOVA_B≤n<N:
Figure BDA0001490492070000365
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000366
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000367
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000368
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_B:
Figure BDA0001490492070000369
if N-upmixing_delay+NOVA_1≤n<N:
Figure BDA0001490492070000371
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000372
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000373
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,NOVA_B表示下混模式B对应的过渡处理长度。其中,NOVA_B的取值可根据具体场景需要设定。NOVA_B例如可等于3/N或者NOVA_B可为小于N的其它值。
下面针对下混模式C到下混模式C对应的编码模式的场景进行举例说明。
举例来说,例如当前帧的编码模式为下混模式C到下混模式C对应的编码模式,那么,在一些可能实施方式中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
Figure BDA0001490492070000374
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号;其中,所述n表示样点序号。所述M2C表示所述当前帧的下混模式C对应的下混矩阵。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
Figure BDA0001490492070000375
其中,所述n表示样点序号,所述
Figure BDA0001490492070000376
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000377
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000378
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000379
表示所述当前帧的次要声道解码信号。所述
Figure BDA00014904920700003710
表示所述当前帧的下混模式A对应的上混矩阵。
又例如,当前帧的编码模式为下混模式C到下混模式C对应的编码模式,那么,在另一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA00014904920700003711
if N-delay_com≤n<N:
Figure BDA0001490492070000381
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号;
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000382
if N-upmixing_delay≤n<N:
Figure BDA0001490492070000383
其中,所述n表示样点序号,所述
Figure BDA0001490492070000384
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000385
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000386
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000387
表示所述当前帧的次要声道解码信号;
其中,所述upmixing_delay表示解码时延补偿。
所述delay_com表示编码时延补偿。
其中,所述n表示样点序号,N表示帧长;例如n=0,1,…,N-1。
所述M1C表示所述前一帧的下混模式C对应的下混矩阵。所述M2C表示所述当前帧的下混模式C对应的下混矩阵。所述
Figure BDA0001490492070000388
表示所述前一帧的下混模式C对应的上混矩阵。所述
Figure BDA0001490492070000389
表示所述前一帧的下混模式C对应的下混矩阵。
又例如,当前帧的编码模式为下混模式C到下混模式C对应的编码模式,那么,在另一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA00014904920700003810
if N-delay_com≤n<N-delay_com+NOVA_C:
Figure BDA00014904920700003811
if N-delay_com+NOVA_C≤n<N:
Figure BDA00014904920700003812
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000391
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000392
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000393
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_C:
Figure BDA0001490492070000394
if N-upmixing_delay+NOVA_C≤n<N:
Figure BDA0001490492070000395
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000396
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000397
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,NOVA_C表示下混模式C对应的过渡处理长度。其中,NOVA_C取值可根据具体场景需要设定。NOVA_C例如可等于3/N或者NOVA_C可为小于N的其它值。
下面针对下混模式D到下混模式D对应的编码模式的场景进行举例说明。
举例来说,例如当前帧的编码模式为下混模式D到下混模式D对应的编码模式,那么,在一些可能实施方式中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
Figure BDA0001490492070000398
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号;其中,所述n表示样点序号。所述M2D表示所述当前帧的下混模式D对应的下混矩阵。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
Figure BDA0001490492070000401
其中,所述n表示样点序号,所述
Figure BDA0001490492070000402
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000403
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000404
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000405
表示所述当前帧的次要声道解码信号。所述
Figure BDA0001490492070000406
表示所述当前帧的下混模式D对应的上混矩阵。
又例如,当前帧的编码模式为下混模式D到下混模式D对应的编码模式,那么,在另一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000407
if N-delay_com≤n<N:
Figure BDA0001490492070000408
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号;
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000409
if N-upmixing_delay≤n<N:
Figure BDA00014904920700004010
其中,所述n表示样点序号,所述
Figure BDA00014904920700004011
表示所述当前帧的左声道重建信号,所述
Figure BDA00014904920700004012
表示所述当前帧的右声道重建信号,所述
Figure BDA00014904920700004013
表示所述当前帧的主要声道解码信号,所述
Figure BDA00014904920700004014
表示所述当前帧的次要声道解码信号;
其中,所述upmixing_delay表示解码时延补偿。
所述delay_com表示编码时延补偿。
其中,N表示帧长;例如n=0,1,…,N-1。
所述M1D表示所述前一帧的下混模式D对应的下混矩阵。所述M2D表示所述当前帧的下混模式D对应的下混矩阵。所述
Figure BDA00014904920700004015
表示所述前一帧的下混模式D对应的上混矩阵。所述
Figure BDA00014904920700004016
表示所述前一帧的下混模式D对应的下混矩阵。
又例如,当前帧的编码模式为下混模式D到下混模式D对应的编码模式,那么,在另一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000411
if N-delay_com≤n<N-delay_com+NOVA_D:
Figure BDA0001490492070000412
if N-delay_com+NOVA_D≤n<N:
Figure BDA0001490492070000413
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000414
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000415
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000416
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_D:
Figure BDA0001490492070000417
if N-upmixing_delay+NOVA_D≤n<N:
Figure BDA0001490492070000418
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000419
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA00014904920700004110
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,NOVA_D表示下混模式D对应的过渡处理长度。其中,NOVA_D取值可根据具体场景需要设定。NOVA_D例如可等于3/N或者NOVA_D可为小于N的其它值。
下面针对当前帧和前一帧的下混模式不同的一些编解码情况进行举例说明。例如,在所述当前帧和前一帧的下混模式不同的情况下,那么编码装置可根据所述当前帧的编码模式对所述当前帧的左右声道信号进行分段时域上混处理。例如,在所述当前帧和前一帧的下混模式不同的情况下,那么解码编码装置可根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行分段时域上混处理。
下面先针对下混模式A到下混模式B对应的编码模式的场景进行举例。
具体例如,当前帧的编码模式为下混模式A到下混模式B对应的编码模式,那么,在一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000421
if N-delay_com≤n<N-delay_com+NOVA_AB:
Figure BDA0001490492070000422
if N-delay_com+NOVA_AB≤n<N:
Figure BDA0001490492070000423
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000424
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000425
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000426
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_AB:
Figure BDA0001490492070000431
if N-upmixing_delay+NOVA_AB≤n<N:
Figure BDA0001490492070000432
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000433
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000434
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述n表示样点序号,所述
Figure BDA0001490492070000435
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000436
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000437
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000438
表示所述当前帧的次要声道解码信号。
其中,NOVA_AB表示下混模式A切换到下混模式B对应的过渡处理长度。NOVA_AB取值可根据具体场景需要设定。NOVA_AB例如可等于3/N或者NOVA_AB可为小于N的其它值。
其中,N表示帧长;例如n=0,1,…,N-1。
其中,所述delay_com表示编码时延补偿。所述upmixing_delay表示解码时延补偿。
所述M1A表示所述前一帧的下混模式A对应的下混矩阵。所述M2B表示所述当前帧的下混模式B对应的下混矩阵。所述
Figure BDA0001490492070000439
表示所述前一帧的下混模式A对应的上混矩阵。所述
Figure BDA00014904920700004310
表示所述当前帧的下混模式B对应的上混矩阵。
下面针对下混模式A到下混模式C对应的编码模式的场景进行举例。
具体例如,当前帧的编码模式为下混模式A到下混模式C对应的编码模式,那么,在一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA00014904920700004311
if N-delay_com≤n<N-delay_com+NOVA_AC:
Figure BDA00014904920700004312
if N-delay_com+NOVA_AC≤n<N:
Figure BDA00014904920700004313
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000441
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000442
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000443
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_AC:
Figure BDA0001490492070000444
if N-upmixing_delay+NOVA_AC≤n<N:
Figure BDA0001490492070000445
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000446
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000447
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述n表示样点序号,所述
Figure BDA0001490492070000448
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000449
表示所述当前帧的右声道重建信号,所述
Figure BDA00014904920700004410
表示所述当前帧的主要声道解码信号,所述
Figure BDA00014904920700004411
表示所述当前帧的次要声道解码信号。
其中,NOVA_AC表示下混模式A切换到下混模式C对应的过渡处理长度。NOVA_AC取值可根据具体场景需要设定。NOVA_AC例如可等于3/N或者NOVA_AC可为小于N的其它值。
其中,N表示帧长;例如n=0,1,…,N-1。
其中,所述delay_com表示编码时延补偿。所述upmixing_delay表示解码时延补偿。
所述M1A表示所述前一帧的下混模式A对应的下混矩阵。所述M2C表示所述当前帧的下混模式C对应的下混矩阵。所述
Figure BDA00014904920700004412
表示所述前一帧的下混模式A对应的上混矩阵。所述
Figure BDA00014904920700004413
表示所述当前帧的下混模式C对应的上混矩阵。
下面针对下混模式B到下混模式A对应的编码模式的场景进行举例。
具体例如,当前帧的编码模式为下混模式B到下混模式A对应的编码模式,那么,在一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000451
if N-delay_com≤n<N-delay_com+NOVA_BA:
Figure BDA0001490492070000452
if N-delay_com+NOVA_BA≤n<N:
Figure BDA0001490492070000453
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000454
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000455
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000456
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_BA:
Figure BDA0001490492070000457
if N-upmixing_delay+NOVA_BA≤n<N:
Figure BDA0001490492070000458
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000459
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000461
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述n表示样点序号,所述
Figure BDA0001490492070000462
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000463
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000464
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000465
表示所述当前帧的次要声道解码信号。
其中,NOVA_BA表示下混模式B切换到下混模式A对应的过渡处理长度。NOVA_BA取值可根据具体场景需要设定。NOVA_BA例如可等于3/N或者NOVA_BA可为小于N的其它值。
其中,N表示帧长;例如n=0,1,…,N-1。
其中,所述delay_com表示编码时延补偿。所述upmixing_delay表示解码时延补偿。
所述M1B表示所述前一帧的下混模式B对应的下混矩阵。所述M2A表示所述当前帧的下混模式A对应的下混矩阵。所述
Figure BDA0001490492070000466
表示所述前一帧的下混模式B对应的上混矩阵。所述
Figure BDA0001490492070000467
表示所述当前帧的下混模式A对应的上混矩阵。
下面针对下混模式B到下混模式D对应的编码模式的场景进行举例。
具体例如,当前帧的编码模式为下混模式B到下混模式D对应的编码模式,那么,在一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000468
if N-delay_com≤n<N-delay_com+NOVA_BD:
Figure BDA0001490492070000469
if N-delay_com+NOVA_BD≤n<N:
Figure BDA00014904920700004610
其中,fade_in(n)表示淡入因子。例如
Figure BDA00014904920700004611
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA00014904920700004612
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000471
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_BD:
Figure BDA0001490492070000472
if N-upmixing_delay+NOVA_BD≤n<N:
Figure BDA0001490492070000473
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000474
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000475
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述n表示样点序号,所述
Figure BDA0001490492070000476
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000477
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000478
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000479
表示所述当前帧的次要声道解码信号。
其中,NOVA_BD表示下混模式B切换到下混模式D对应的过渡处理长度。NOVA_BD取值可根据具体场景需要设定。NOVA_BD例如可等于3/N或者NOVA_BD可为小于N的其它值。
其中,N表示帧长;例如n=0,1,…,N-1。
其中,所述delay_com表示编码时延补偿。所述upmixing_delay表示解码时延补偿。
所述M1B表示所述前一帧的下混模式B对应的下混矩阵。所述M2D表示所述当前帧的下混模式D对应的下混矩阵。所述
Figure BDA00014904920700004710
表示所述前一帧的下混模式B对应的上混矩阵。所述
Figure BDA00014904920700004711
表示所述当前帧的下混模式D对应的上混矩阵。
下面针对下混模式C到下混模式A对应的编码模式的场景进行举例。
具体例如,当前帧的编码模式为下混模式C到下混模式A对应的编码模式,那么,在一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA00014904920700004712
if N-delay_com≤n<N-delay_com+NOVA_CA:
Figure BDA0001490492070000481
if N-delay_com+NOVA_CA≤n<N:
Figure BDA0001490492070000482
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000483
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000484
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000485
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_CA:
Figure BDA0001490492070000486
if N-upmixing_delay+NOVA_CA≤n<N:
Figure BDA0001490492070000487
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000488
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000489
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述n表示样点序号,所述
Figure BDA00014904920700004810
表示所述当前帧的左声道重建信号,所述
Figure BDA00014904920700004811
表示所述当前帧的右声道重建信号,所述
Figure BDA00014904920700004812
表示所述当前帧的主要声道解码信号,所述
Figure BDA00014904920700004813
表示所述当前帧的次要声道解码信号。
其中,NOVA_CA表示下混模式C切换到下混模式A对应的过渡处理长度。NOVA_CA取值可根据具体场景需要设定。NOVA_CA例如可等于3/N或者NOVA_CA可为小于N的其它值。
其中,所述n表示样点序号,N表示帧长。
其中,所述delay_com表示编码时延补偿。所述upmixing_delay表示解码时延补偿。
所述M1C表示所述前一帧的下混模式C对应的下混矩阵。所述M2A表示所述当前帧的下混模式A对应的下混矩阵。所述
Figure BDA0001490492070000491
表示所述前一帧的下混模式C对应的上混矩阵。所述
Figure BDA0001490492070000492
表示所述当前帧的下混模式A对应的上混矩阵。
下面针对下混模式C到下混模式D对应的编码模式的场景进行举例。
具体例如,当前帧的编码模式为下混模式C到下混模式D对应的编码模式,那么,在一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000493
if N-delay_com≤n<N-delay_com+NOVA_CD:
Figure BDA0001490492070000494
if N-delay_com+NOVA_CD≤n<N:
Figure BDA0001490492070000495
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000496
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000497
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000498
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_CD:
Figure BDA0001490492070000501
if N-upmixing_delay+NOVA_CD≤n<N:
Figure BDA0001490492070000502
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000503
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000504
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述n表示样点序号,所述
Figure BDA0001490492070000505
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000506
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000507
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000508
表示所述当前帧的次要声道解码信号。
其中,NOVA_CD表示下混模式C切换到下混模式D对应的过渡处理长度。NOVA_CD取值可根据具体场景需要设定。NOVA_CD例如可等于3/N或者NOVA_CD可为小于N的其它值。
其中,N表示帧长;例如n=0,1,…,N-1。
其中,所述delay_com表示编码时延补偿。所述upmixing_delay表示解码时延补偿。
所述M1C表示所述前一帧的下混模式C对应的下混矩阵。所述M2D表示所述当前帧的下混模式D对应的下混矩阵。所述
Figure BDA0001490492070000509
表示所述前一帧的下混模式C对应的上混矩阵。所述
Figure BDA00014904920700005010
表示所述当前帧的下混模式D对应的上混矩阵。
下面针对下混模式D到下混模式C对应的编码模式的场景进行举例。
具体例如,当前帧的编码模式为下混模式D到下混模式C对应的编码模式,那么,在一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA00014904920700005011
if N-delay_com≤n<N-delay_com+NOVA_DC:
Figure BDA00014904920700005012
if N-delay_com+NOVA_DC≤n<N:
Figure BDA00014904920700005013
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000511
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000512
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000513
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_DC:
Figure BDA0001490492070000514
if N-upmixing_delay+NOVA_DC≤n<N:
Figure BDA0001490492070000515
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000516
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000517
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述n表示样点序号,所述
Figure BDA0001490492070000518
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000519
表示所述当前帧的右声道重建信号,所述
Figure BDA00014904920700005110
表示所述当前帧的主要声道解码信号,所述
Figure BDA00014904920700005111
表示所述当前帧的次要声道解码信号。
其中,NOVA_DC表示下混模式D切换到下混模式C对应的过渡处理长度。NOVA_DC取值可根据具体场景需要设定。NOVA_DC例如可等于3/N或者NOVA_DC可为小于N的其它值。
其中,所述n表示样点序号,N表示帧长。
其中,所述delay_com表示编码时延补偿。所述upmixing_delay表示解码时延补偿。
所述M1D表示所述前一帧的下混模式D对应的下混矩阵。所述M2C表示所述当前帧的下混模式C对应的下混矩阵。所述
Figure BDA00014904920700005112
表示所述前一帧的下混模式D对应的上混矩阵。所述
Figure BDA00014904920700005113
表示所述当前帧的下混模式C对应的上混矩阵。
下面针对下混模式D到下混模式B对应的编码模式的场景进行举例。
具体例如,当前帧的编码模式为下混模式D到下混模式B对应的编码模式,那么,在一些可能的实施方式之中,在根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号的情况下,
if 0≤n<N-delay_com:
Figure BDA0001490492070000521
if N-delay_com≤n<N-delay_com+NOVA_DB:
Figure BDA0001490492070000522
if N-delay_com+NOVA_DB≤n<N:
Figure BDA0001490492070000523
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000524
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000525
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号,所述Y(n)表示经时域下混处理而得到的所述当前帧的主要声道信号,所述X(n)表示经时域下混处理而得到的所述当前帧的次要声道信号。
相应的,在对应的解码场景中,在根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号的情况下,
if 0≤n<N-upmixing_delay:
Figure BDA0001490492070000526
if N-upmixing_delay≤n<N-upmixing_delay+NOVA_DB:
Figure BDA0001490492070000527
if N-upmixing_delay+NOVA_DB≤n<N:
Figure BDA0001490492070000528
其中,fade_in(n)表示淡入因子。例如
Figure BDA0001490492070000529
当然fade_in(n)也可以是基于n的其它函数关系的淡入因子。
fade_out(n)表示淡出因子。例如
Figure BDA0001490492070000531
当然fade_out(n)也可以是基于n的其它函数关系的淡出因子。
其中,所述n表示样点序号,所述
Figure BDA0001490492070000532
表示所述当前帧的左声道重建信号,所述
Figure BDA0001490492070000533
表示所述当前帧的右声道重建信号,所述
Figure BDA0001490492070000534
表示所述当前帧的主要声道解码信号,所述
Figure BDA0001490492070000535
表示所述当前帧的次要声道解码信号。
其中,NOVA_DB表示下混模式D切换到下混模式B对应的过渡处理长度。NOVA_DB取值可根据具体场景需要设定。NOVA_DB例如可等于3/N或者NOVA_DB可为小于N的其它值。
其中,N表示帧长;例如n=0,1,…,N-1。
其中,所述delay_com表示编码时延补偿。所述upmixing_delay表示解码时延补偿。
所述M1D表示所述前一帧的下混模式D对应的下混矩阵。所述M2B表示所述当前帧的下混模式B对应的下混矩阵。所述
Figure BDA0001490492070000536
表示所述前一帧的下混模式D对应的上混矩阵。所述
Figure BDA0001490492070000537
表示所述当前帧的下混模式B对应的上混矩阵。
可以理解,上述举例的编解码场景中,不同下混模式对应的过渡处理长度可以互不相同,部分相同或者全部相同。例如NOVA_A、NOVA_B、NOVA_C、NOVA_D、NOVA_DB和NOVA_DC可以互不相同,部分相同或者全部相同,其它情况以此类推。
其中,上述举例场景中,当前帧的左右声道信号具体可以是当前帧的原始左右声道信号(原始左右声道信号是未经时域预处理的左右声道信号,例如可以是采样得到左右声道信号),或者可是当前帧的经时域预处理的左右声道信号;或者可以是当前帧的经时延对齐处理的左右声道信号。
具体例如,
Figure BDA0001490492070000538
Figure BDA0001490492070000539
Figure BDA00014904920700005310
其中,xL(n)表示所述当前帧的原始左声道信号,xR(n)表示所述当前帧的原始右声道信号;所述xL_HP(n)表示所述当前帧的经时域预处理的左声道信号,所述xR_HP(n)表示所述当前帧的经时域预处理的右声道信号;所述x′L(n)表示所述当前帧的经时延对齐处理的左声道信号,所述x′R(n)表示所述当前帧的经时延对齐处理的右声道信号。
上述场景举例中示例性的给出了不同编码模式下的时域上混和时域下混处理方式,当然在实际应用中还可采用类似上述举例的其它方式进行时域上混处理和下混处理,本申请实施例并不限于上述举例的那些时域上混和时域下混处理方式。
参见图6,图6是本申请实施例提供的一种音频编码模式确定方法的流程示意图。一种音频编码模式确定方法的相关步骤可由编码装置来实施,例如可包括如下步骤:
601、确定当前帧的声道组合方案。
其中,编码装置确定当前帧的声道组合方案的具体实施方式可参考其它实施例的相关描述,此处不在赘述。
602、根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式。
其中,编码装置根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式的具体实施方式可参考其它实施例的相关描述,此处不在赘述。
可以理解,上述编码场景中,需确定当前帧的声道组合方案,这就表示当前帧的声道组合方案存在多种可能,相对于只有唯一一种声道组合方案的传统方案而言,多种可能的声道组合方案和多种可能场景之间有利于获得更好的兼容匹配效果。
可以理解,上述编码场景中,需根据根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,这就表示当前帧的编码模式存在多种可能,相对于只有唯一一种编码模式的传统方案而言,多种可能的编码模式、下混模式和多种可能场景之间有利于获得更好的兼容匹配效果。
参见图7,图7是本申请实施例提供的一种音频解码模式确定方法的流程示意图。一种音频解码模式确定方法的相关步骤可由解码装置来实施,例如可包括如下步骤:
701、根据码流进行解码以确定所述当前帧的下混模式。
例如根据码流进行解码以得到码流中包含的所述当前帧的下混模式标识(当前帧的下混模式标识指示出当前帧的下混模式),基于得到的所述当前帧的下混模式标识确定所述当前帧的下混模式。
702、根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式。
其中,根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式的具体实施方式可参考其它实施例的相关描述,此处不在赘述。
可以理解,上述解码场景中,需根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式,这就表示当前帧的编码模式存在多种可能,相对于只有唯一一种编码模式的传统方案而言,多种可能的编码模式、下混模式和多种可能场景之间有利于获得更好的兼容匹配效果。
下面对当前帧/前一帧的一些立体声参数进行介绍。
在本申请的一些实施例中,当前帧的立体声参数(例如声道组合比例因子和/或声道间时延差)可为固定值,也可基于当前帧的声道组合方案(例如相关性信号声道组合方案或者非相关性信号声道组合方案)来确定。
参见图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表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子的修正值。
又例如,根据所述当前帧的声道组合方案确定所述当前帧的时域立体声参数包括:根据所述当前帧的左声道信号和右声道信号获得所述当前帧的参考声道信号;计算所述当前帧的左声道信号与参考声道信号之间的幅度相关性参数;计算所述当前帧的右声道信号与参考声道信号之间的幅度相关性参数;根据所述当前帧的左右声道信号与参考声道信号之间的幅度相关性参数,计算所述当前帧的左右声道信号之间的幅度相关性差异参数;根据所述当前帧的左右声道信号之间的幅度相关性差异参数,计算所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
其中,根据所述当前帧的左右声道信号之间的幅度相关性差异参数,计算所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子,例如可包括:根据所述当前帧的左右声道信号之间的幅度相关性差异参数,计算所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子初始值;对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子初始值进行修正,以得到所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。可以理解,当无需对所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子初始值进行修正时,那么,所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子,等于所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子初始值。
在一些可能的实施方式中,
Figure BDA0001490492070000561
Figure BDA0001490492070000562
其中,
Figure BDA0001490492070000571
其中,所述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]之间;将映射处理后的左右声道信号之间的幅度相关性差异参数转换为声道组合比例因子。
在一些可能的实施方式中,对所述当前帧的左右声道之间的幅度相关性差异参数进行映射处理包括:对所述当前帧的左右声道信号之间的幅度相关性差异参数进行限幅处理;对经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数进行映射处理。
其中,限幅处理的方式可以是多种多样的,具体例如:
Figure BDA0001490492070000581
其中,RATIO_MAX表示经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的最大值,RATIO_MIN表示经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数的最小值,RATIO_MAX>RATIO_MIN。
其中,映射处理的方式可以是多种多样的,具体例如:
Figure BDA0001490492070000582
Figure BDA0001490492070000583
B1=MAP_MAX-RATIO_MAX*A1,或B1=MAP_HIGH-RATIO_HIGH*A1
Figure BDA0001490492070000584
B2=MAP_LOW-RATIO_LOW*A2,或B2=MAP_MIN-RATIO_MIN*A2
Figure BDA0001490492070000585
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。
又例如,
Figure BDA0001490492070000586
其中,diff_lt_corr_limit表示经限幅处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数;diff_lt_corr_map表示经映射处理后的所述当前帧的左右声道信号之间的幅度相关性差异参数。
其中,
Figure BDA0001490492070000591
其中,所述RATIO_MAX表示所述当前帧的左右声道信号之间的幅度相关性差异参数的最大幅度,所述-RATIO_MAX表示所述当前帧的左右声道信号之间的幅度相关性差异参数的最小幅度。
在一些可能的实施方式中,
Figure BDA0001490492070000592
其中,所述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表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子的最终编码索引,其中,
Figure BDA0001490492070000601
为非相关性信号声道组合方案对应的声道组合比例因子的修正因子。其中,所述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的无限脉冲响应滤波器(英文:Infinite Impulse Response,缩写:IIR)滤波器,也可采用其他类型的滤波器。
例如采样率为16KHz且对应截止频率为20Hz的高通滤波器的传递函数可为:
Figure BDA0001490492070000611
其中,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满足:
Figure BDA0001490492070000621
其中,当前帧右声道信号的帧能量rms_R满足:
Figure BDA0001490492070000622
其中,x′L(n)表示当前帧经时延对齐处理的左声道信号。
其中,x′R(n)表示当前帧经时延对齐处理的右声道信号。
然后,根据当前帧左声道的帧能量和右声道的帧能量,计算当前帧相关性信号声道组合方案对应的声道组合比例因子。其中,计算得到的当前帧相关性信号声道组合方案对应的声道组合比例因子ratio_init满足:
Figure BDA0001490492070000623
然后,对计算得到的当前帧相关性信号声道组合方案对应的声道组合比例因子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满足:
Figure BDA0001490492070000631
其中,上述ratio_initqua表示当前帧的相关性信号声道组合方案对应的声道组合比例因子的初始值,上述ratio_modqua表示当前帧的相关性信号声道组合方案对应的声道组合比例因子的修正值,上述tdm_SM_modi_flag表示当前帧的声道组合比例因子修正标识。
其中,确定的相关性信号声道组合方案对应的声道组合比例因子对应的编码索引ratio_idx满足:
Figure BDA0001490492070000641
其中,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满足:
Figure BDA0001490492070000651
其中,当前帧右声道信号的帧能量rms_R满足:
Figure BDA0001490492070000652
其中,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)满足:
Figure BDA0001490492070000653
其中,x′L(n)为当前帧经时延对齐处理的左声道信号,其中,x′R(n)为当前帧经时延对齐处理的右声道信号。
9083、分别计算当前帧经时延对齐处理的左右声道信号与参考声道信号之间的幅度相关性参数。
例如,当前帧经时延对齐处理的左声道信号与参考声道信号之间的幅度相关性参数corr_LM例如满足:
Figure BDA0001490492070000654
例如当前帧经时延对齐处理的右声道信号与参考声道信号之间的幅度相关性参数corr_RM例如满足:
Figure BDA0001490492070000661
其中,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满足:
Figure BDA0001490492070000671
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满足:
Figure BDA0001490492070000681
其中,
Figure BDA0001490492070000682
B1=MAP_MAX-RATIO_MAX*A1,或者B1=MAP_HIGH-RATIO_HIGH*A1
Figure BDA0001490492070000683
B2=MAP_LOW-RATIO_LOW*A2,或者B2=MAP_MIN-RATIO_MIN*A2
Figure BDA0001490492070000684
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满足:
Figure BDA0001490492070000685
其中,diff_lt_corr_limit表示经过限幅处理后的左右声道之间的幅度相关性差异参数。
其中,
Figure BDA0001490492070000686
其中,RATIO_MAX表示左右声道之间的幅度相关性差异参数的最大幅度,-RATIO_MAX表示左右声道之间的幅度相关性差异参数的最小幅度。其中,RATIO_MAX可以为预先设定的经验值,RATIO_MAX例如可为1.5、3.0或其他大于0的实数。
90852、将映射处理后的左右声道之间的幅度相关性差异参数转换为声道组合比例因子。
声道组合比例因子ratio_SM满足:
Figure BDA0001490492070000691
其中,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为前一帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引,
Figure BDA0001490492070000701
为非相关性信号声道组合方案对应的声道组合比例因子的修正因子。
Figure BDA0001490492070000702
的取值可为经验值,例如
Figure BDA0001490492070000703
可等于0.8。
则当前帧非相关性信号声道组合方案对应的声道组合比例因子满足:
ratio_SM=ratio_tabl[ratio_idx_SM]
还有一种方法是:将未量化的非相关性信号声道组合方案对应的声道组合比例因子,作为当前帧非相关性信号声道组合方案对应的声道组合比例因子,即当前帧非相关性信号声道组合方案对应的声道组合比例因子的ratio_SM满足:
Figure BDA0001490492070000704
此外,第四种方法是:根据前一帧的非相关性信号声道组合方案对应的声道组合比例因子,对未量化的当前帧非相关性信号声道组合方案对应的声道组合比例因子进行修正,将修正后的非相关性信号声道组合方案对应的声道组合比例因子,作为当前帧非相关性信号声道组合方案对应的声道组合比例因子,并对其进行量化编码,得到当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引。
除以上述方法,还可以有很多种方法来将左右声道之间的幅度相关性差异参数转换为声道组合比例因子并进行编码量化,同样也有很多不同的方法来确定当前帧非相关性信号声道组合方案对应的声道组合比例因子及其编码索引,本申请对此不作限定。
909、根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式。
其中,当前帧的声道组合方案标识可记作tdm_SM_flag。
其中,前一帧的声道组合方案标识可记作tdm_last_SM_flag。
其中,其中,当前帧的下混模式标识可记作tdm_DM_flag。
其中,前一帧的下混模式标识可记作tdm_last_DM_flag。
类似的,可以使用stereo_tdm_coder_type来表示当前帧的编码模式。
具体例如,stereo_tdm_coder_type=0表示当前帧的编码模式为下混模式A到下混模式A对应的编码模式;stereo_tdm_coder_type=1表示当前帧的编码模式为下混模式A切换到下混模式B对应的编码模式;stereo_tdm_coder_type=2表示当前帧的编码模式为下混模式A切换到下混模式C对应的编码模式。
又具体例如,stereo_tdm_coder_type=3表示当前帧的编码模式为下混模式B到下混模式B对应的编码模式。stereo_tdm_coder_type=4表示当前帧的编码模式为下混模式B切换到下混模式A对应的编码模式。stereo_tdm_coder_type=5表示当前帧的编码模式为下混模式B切换到下混模式D对应的编码模式。
又具体例如,stereo_tdm_coder_type=6表示当前帧的编码模式为下混模式C到下混模式C对应的编码模式。stereo_tdm_coder_type=7表示当前帧的编码模式为下混模式C切换到下混模式A对应的编码模式。stereo_tdm_coder_type=8表示当前帧的编码模式为下混模式C切换到下混模式D对应的编码模式。
又具体例如,stereo_tdm_coder_type=9表示当前帧的编码模式为下混模式D到下混模式D对应的编码模式。stereo_tdm_coder_type=10表示当前帧的编码模式为下混模式D切换到下混模式B对应的编码模式。stereo_tdm_coder_type=11表示当前帧的编码模式为下混模式D切换到下混模式C对应的编码模式。
其中,根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式的具体实施方式可以参考其它实施例的相关描述,此处不再赘述。
910、在确定当前帧的编码模式stereo_tdm_coder_type之后,编码装置根据当前帧的编码模式对当前帧的左右声道信号进行时域下混处理以得到当前帧的主次声道信号。
其中,不同编码模式进行时域下混处理的实施方式,可参考上述实施例中的相关举例描述,此处不再赘述。
911、编码装置对主要声道信号和次要声道信号分别进行编码,得到主要声道编码信号和次要声道编码信号。
具体地,可以先根据前一帧的主要声道信号和/或次要声道信号编码中得到的参数信息以及主要声道信号编码和次要声道信号编码的总比特数,对主要声道信号编码和次要声道信号编码进行比特分配。然后根据比特分配的结果,分别对主要声道信号和次要声道信号进行编码,得到主要声道编码的编码索引、次要声道编码的编码索引。主要声道编码和次要声道编码,可以采用任何一种单声道音频编码技术,这里不再赘述。
912、编码装置根据声道组合方案标识选择相应的声道组合比例因子编码索引写入码流,并将主要声道编码信号、次要声道编码信号以及当前帧的下混模式标识tdm_DM_flag写入码流。
具体例如,若当前帧的声道组合方案标识tdm_SM_flag对应了相关性信号声道组合方案,则将当前帧相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx写入码流;若当前帧的声道组合方案标识tdm_SM_flag对应了非相关性信号声道组合方案,则将当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx_SM写入码流。
例如,tdm_SM_flag=0,则将当前帧相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx写入码流;tdm_SM_flag=1,则将当前帧非相关性信号声道组合方案对应的声道组合比例因子的编码索引ratio_idx_SM写入码流。
并且,将主要声道编码信号、次要声道编码信号以及当前帧的下混模式标识tdm_DM_flag等写入比特流。可以理解的是,写码流操作无先后顺序。
相应的,下面针对时域立体声的解码场景进行举例说明。
参见图10,下面还提供一种音频解码方法,音频解码方法的相关步骤可由解码装置来具体实施,具体可包括:
1001、根据码流进行解码以得到当前帧的主次声道解码信号。
1002、根据码流进行解码以得到当前帧的时域立体声参数。
其中,当前帧的时域立体声参数包括当前帧的声道组合比例因子(码流包含的是当前帧的声道组合比例因子的编码索引,基于当前帧的声道组合比例因子的编码索引进行解码可以得到当前帧的声道组合比例因子),还可包括当前帧的声道间时间差(例如,码流包含的是当前帧的声道间时间差的编码索引,基于当前帧的声道间时间差的编码索引进行解码可以得到当前帧的声道间时间差;或者码流包含的是当前帧的声道间时间差的绝对值得编码索引,基于当前帧的声道间时间差的绝对值的编码索引进行解码可以得到当前帧的声道间时间差的绝对值)等。
1003、基于码流得到所述码流中包含的当前帧的下混模式标识确定所述当前帧的下混模式。
1004、基于所述当前帧的下混模式和前一帧的下混模式确定当前帧的编码模式。
例如当前帧的下混模式标识tdm_DM_flag为(00),则表示当前帧的下混模式为下混模式A;当前帧的下混模式标识tdm_DM_flag为(11),则表示当前帧的下混模式为下混模式B;当前帧的下混模式标识tdm_DM_flag为(01),则表示当前帧的下混模式为下混模式C;当前帧的下混模式标识tdm_DM_flag为(10),则表示当前帧的下混模式为下混模式D。
可以理解,步骤1001、步骤1002、步骤1003-1004的执行没有必然的先后顺序。
1005、根据确定的当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号。
其中,不同编码模式进行时域上混处理的相关实施方式可参考上述实施例中的相关举例描述,此处不再赘述。
其中,时域上混处理所使用的上混矩阵基于得到的当前帧的声道组合比例因子构建。
其中,当前帧的左右声道重建信号可作为所述当前帧的左右声道解码信号。
或者,进一步的,还可基于当前帧的声道间时间差对当前帧的左右声道重建信号进行时延调整,得到当前帧经时延调整的左右声道重建信号,当前帧经时延调整的左右声道重建信号可作为当前帧的左右声道解码信号。或者,进一步的,还可对当前帧经时延调整的左右声道重建信号进行时域后处理,其中,当前帧经时域后处理的左右声道重建信号可作为所述当前帧的左右声道解码信号。
上述详细阐述了本申请实施例的方法,下面提供了本申请实施例的装置。
参见图11-A,本申请实施例还提供一种装置1100,可包括:
相互耦合的处理器1110和存储器1120。所述存储器1110存储有计算机程序;所述处理器1120调用所述存储器存储的计算机程序,用于执行本申请实施例提供的任意一种方法的部分或全部步骤。
存储器1120包括但不限于是随机存储记忆体(英文:Random Access Memory,简称:RAM)、只读存储器(英文:Read-Only Memory,简称:ROM)、可擦除可编程只读存储器(英文:Erasable Programmable Read Only Memory,简称:EPROM)、或便携式只读存储器(英文:Compact Disc Read-Only Memory,简称:CD-ROM),该存储器402用于相关指令及数据。
当然,装置1100还可包括用于接收和发送数据的收发器1130。
处理器1110可以是一个或多个中央处理器(英文:Central Processing Unit,简称:CPU),在处理器1110是一个CPU的情况下,该CPU可以是单核CPU,也可以是多核CPU。处理器1110具体可以是数字信号处理器。
在实现过程中,上述方法的各步骤可通过处理器1110中的硬件的集成逻辑电路或者软件形式的指令完成。上述处理器1110可以是通用处理器、数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。处理器1110可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。
软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等等本领域成熟的存储介质之中。该存储介质位于存储器1120,例如处理器1110可读取存储器1120中的信息,结合其硬件完成上述方法的步骤。
进一步的,装置1100还可包括收发器1130,收发器1130例如可用于相关数据(例如指令或声道信号或码流)的收发。
举例来说,装置1100可以执行上述图2、图3、图6、图7、图8、图10、图9-A-图9-D任意一附图所示实施例中对应的方法的部分或全部步骤。具体例如,当装置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-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (58)

1.一种音频编码方法,其特征在于,包括:
确定当前帧的声道组合方案;
根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式;
根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号;
对得到的所述当前帧的主次声道信号进行编码;
其中,所述当前帧的声道组合方案为多种声道组合方案中的其中一种;所述多种声道组合方案包括非相关性信号声道组合方案和相关性信号声道组合方案;
其中,所述前一帧的下混模式为多种下混模式中的其中一种,其中,所述多种下混模式包括:下混模式A、下混模式B、下混模式C和下混模式D;其中,所述下混模式A和所述下混模式D为相关性信号下混模式;所述下混模式B和所述下混模式C为非相关性信号下混模式。
2.根据权利要求1所述的方法,其特征在于;所述相关性信号声道组合方案为类正相信号对应的声道组合方案;所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。
3.根据权利要求1所述的方法,其特征在于,
所述前一帧的下混模式A、所述前一帧的下混模式B、所述前一帧的下混模式C和所述前一帧的下混模式D对应的下混矩阵互不相同。
4.根据权利要求3所述的方法,其特征在于,所述根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,包括:根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式。
5.根据权利要求4所述的方法,其特征在于,所述当前帧的下混模式切换代价值为根据所述当前帧的下混模式切换代价函数进行计算的计算结果;其中,所述下混模式切换代价函数基于如下参数的至少一种来构建:所述当前帧的至少一种时域立体声参数、所述前一帧的至少一种时域立体声参数和所述当前帧的左右声道信号;
或者,
当前帧的下混模式切换代价值为当前帧的声道组合比例因子。
6.根据权利要求5所述的方法,其特征在于,所述下混模式切换代价函数为如下切换代价函数的其中一种:下混模式A切换到下混模式B的下混模式切换代价函数、下混模式A切换到下混模式C的下混模式切换代价函数、下混模式D切换到下混模式B的下混模式切换代价函数、下混模式D切换到下混模式C的下混模式切换代价函数、下混模式B切换到下混模式A的下混模式切换代价函数、下混模式B切换到下混模式D的下混模式切换代价函数、下混模式C切换到下混模式A的下混模式切换代价函数、下混模式C切换到下混模式D的下混模式切换代价函数。
7.根据权利要求6所述的方法,其特征在于,所述下混模式A切换到下混模式B的下混模式切换代价函数为:
Figure FDA0003061642940000011
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_AB表示下混模式A切换到下混模式B的下混模式切换代价函数值;其中,所述start_sample_A表示下混模式A切换到下混模式B的模式切换代价函数的计算起始样点,end_sample_A为表示下混模式A切换到下混模式B的模式切换代价函数的计算结束样点,所述start_sample_A为大于0且小于N-1的整数,所述end_sample_A为大于0且小于N-1的整数,所述start_sample_A小于所述end_sample_A;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
8.根据权利要求6所述的方法,其特征在于,所述下混模式A切换到下混模式C的下混模式切换代价函数为:
Figure FDA0003061642940000021
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_AC表示下混模式A切换到下混模式C的下混模式切换代价函数值;其中,所述start_sample_A表示下混模式A切换到下混模式C的模式切换代价函数的计算起始样点,end_sample_A为表示下混模式A切换到下混模式C的模式切换代价函数的计算结束样点,所述start_sample_A为大于0且小于N-1的整数,所述end_sample_A为大于0且小于N-1的整数,所述start_sample_A小于所述end_sample_A;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
9.根据权利要求6所述的方法,其特征在于,所述下混模式B切换到下混模式A的下混模式切换代价函数为:
Figure FDA0003061642940000022
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_BA表示下混模式B切换到下混模式A的下混模式切换代价函数值;其中,所述start_sample_B表示下混模式B切换到下混模式A的模式切换代价函数的计算起始样点,end_sample_B为表示下混模式B切换到下混模式A的模式切换代价函数的计算结束样点,所述start_sample_B为大于0且小于N-1的整数,所述end_sample_B为大于0且小于N-1的整数,所述start_sample_B小于所述end_sample_B;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
10.根据权利要求6所述的方法,其特征在于,所述下混模式B切换到下混模式D的下混模式切换代价函数为:
Figure FDA0003061642940000031
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_BD表示下混模式B切换到下混模式D的下混模式切换代价函数值;其中,所述start_sample_B表示下混模式B切换到下混模式D的模式切换代价函数的计算起始样点,end_sample_B为表示下混模式B切换到下混模式D的模式切换代价函数的计算结束样点,所述start_sample_B为大于0且小于N-1的整数,所述end_sample_B为大于0且小于N-1的整数,所述start_sample_B小于所述end_sample_B;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
11.根据权利要求6所述的方法,其特征在于,所述下混模式C切换到下混模式D的下混模式切换代价函数为:
Figure FDA0003061642940000032
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_CD表示下混模式C切换到下混模式D的下混模式切换代价函数值;其中,所述start_sample_C表示下混模式C切换到下混模式D的模式切换代价函数的计算起始样点,end_sample_C为表示下混模式C切换到下混模式D的模式切换代价函数的计算结束样点,所述start_sample_C为大于0且小于N-1的整数,所述end_sample_C为大于0且小于N-1的整数,所述start_sample_C小于所述end_sample_C;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
12.根据权利要求6所述的方法,其特征在于,所述下混模式C切换到下混模式A的下混模式切换代价函数为:
Figure FDA0003061642940000041
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_CA表示下混模式C切换到下混模式A的下混模式切换代价函数值;其中,所述start_sample_C表示下混模式C切换到下混模式A的模式切换代价函数的计算起始样点,end_sample_C为表示下混模式C切换到下混模式A的模式切换代价函数的计算结束样点,所述start_sample_C为大于0且小于N-1的整数,所述end_sample_C为大于0且小于N-1的整数,所述start_sample_C小于所述end_sample_C;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
13.根据权利要求6所述的方法,其特征在于,所述下混模式D切换到下混模式C的下混模式切换代价函数为:
Figure FDA0003061642940000042
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_DC表示下混模式D切换到下混模式C的下混模式切换代价函数值;其中,所述start_sample_D表示下混模式D切换到下混模式C的模式切换代价函数的计算起始样点,end_sample_D为表示下混模式D切换到下混模式C的模式切换代价函数的计算结束样点,所述start_sample_D为大于0且小于N-1的整数,所述end_sample_D为大于0且小于N-1的整数,所述start_sample_D小于所述end_sample_D;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
14.根据权利要求6所述的方法,其特征在于,所述下混模式D切换到下混模式B的下混模式切换代价函数为:
Figure FDA0003061642940000051
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_DB表示下混模式D切换到下混模式B的下混模式切换代价函数值;其中,所述start_sample_D表示下混模式D切换到下混模式B的模式切换代价函数的计算起始样点,end_sample_D为表示下混模式D切换到下混模式B的模式切换代价函数的计算结束样点,所述start_sample_D为大于0且小于N-1的整数,所述end_sample_D为大于0且小于N-1的整数,所述start_sample_D小于所述end_sample_D;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
15.根据权利要求3所述的方法,其特征在于,所述根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式A,确定所述当前帧的编码模式为从下混模式A到下混模式A对应的编码模式;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为非相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式B,确定所述当前帧的编码模式为从下混模式B到下混模式B对应的编码模式;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为非相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式C到下混模式C对应的编码模式;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式D到下混模式D对应的编码模式。
16.根据权利要求4至14任意一项所述的方法,其特征在于,所述根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式,包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第一下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第一下混模式切换条件为当前帧的下混模式A切换到下混模式B的切换代价函数值大于或等于下混模式A切换到下混模式C的切换代价函数值;
或者,
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第二下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第二下混模式切换条件为当前帧的下混模式A切换到下混模式B的切换代价函数值小于或等于下混模式A切换到下混模式C的切换代价函数值;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第三下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式B切换到下混模式A对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第三下混模式切换条件为当前帧的下混模式B切换到下混模式A的切换代价函数值小于或等于下混模式B切换到下混模式D的切换代价函数值;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第四下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式B切换到下混模式D对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第四下混模式切换条件为当前帧的下混模式B切换到下混模式A的切换代价函数值大于或等于下混模式B切换到下混模式D的切换代价函数值;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第五下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式C切换到下混模式D对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第五下混模式切换条件为当前帧的下混模式C切换到下混模式A的切换代价函数值大于或等于下混模式C切换到下混模式D的切换代价函数值;
或者
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第六下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式C切换到下混模式A对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第六下混模式切换条件为当前帧的下混模式C切换到下混模式A的切换代价函数值小于或等于下混模式C切换到下混模式D的切换代价函数值;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第七下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式D切换到下混模式B对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第七下混模式切换条件为当前帧的下混模式D切换到下混模式B的切换代价函数值小于或等于下混模式D切换到下混模式C的切换代价函数值;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第八下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式D切换到下混模式C对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第八下混模式切换条件为当前帧的下混模式D切换到下混模式B的切换代价函数值大于或等于下混模式D切换到下混模式C的切换代价函数值。
17.根据权利要求4至5任意一项所述的方法,其特征在于,所述根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式,包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第九下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第九下混模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S1;
或者,
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第十下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十下混模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S1;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十一下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式B切换到下混模式A对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,并且所述第十一下混模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S2;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十二下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式B切换到下混模式D对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十二下混模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S2;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十三下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式C切换到下混模式D对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十三下混模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S3;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十四下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式C切换到下混模式A对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十四下混模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S3;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十五下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式D切换到下混模式B对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十五下混模式切换条件为当前帧的声道组合比例因子小于或或等于声道组合比例因子阈值S4;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十六下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式D切换到下混模式C对应的编码模式;其中,当前帧的下混模式切换代价函数值为当前帧的声道组合比例因子,且所述第十六下混模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S4。
18.根据权利要求3至15任意一项所述的方法,其特征在于,
Figure FDA0003061642940000081
或者
Figure FDA0003061642940000082
其中,所述M2A表示当前帧的下混模式A对应的下混矩阵;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
19.根据权利要求3至15任意一项所述的方法,其特征在于,
Figure FDA0003061642940000091
Figure FDA0003061642940000092
其中,所述M2B表示当前帧的下混模式B对应的下混矩阵;
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
20.根据权利要求3至15任意一项所述的方法,其特征在于,
Figure FDA0003061642940000093
Figure FDA0003061642940000094
其中,所述M2C表示当前帧的下混模式C对应的下混矩阵;
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
21.根据权利要求3至15任意一项所述的方法,其特征在于,
Figure FDA0003061642940000095
Figure FDA0003061642940000096
其中,所述M2D表示当前帧的下混模式D对应的下混矩阵;
其中,α1=ratio;α2=1-ratio;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
22.一种音频解码方法,其特征在于,包括:
根据码流进行解码以得到当前帧的主次声道解码信号;
根据码流进行解码以确定所述当前帧的下混模式;
根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式;
根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号;
其中,所述前一帧的下混模式为如下多种下混模式中的其中一种:下混模式A、下混模式B、下混模式C和下混模式D;
所述前当帧的下混模式为如下多种下混模式中的其中一种:下混模式A、下混模式B、下混模式C和下混模式D;
其中,所述下混模式A和所述下混模式D为相关性信号下混模式;所述下混模式B和所述下混模式C为非相关性信号下混模式。
23.根据权利要求22所述的方法,其特征在于,
所述前一帧的下混模式A、所述前一帧的下混模式B、所述前一帧的下混模式C和所述前一帧的下混模式D对应的上混矩阵互不相同;
其中,所述当前帧的下混模式A、所述当前帧的下混模式B、所述当前帧的下混模式C和所述当前帧的下混模式D对应的上混矩阵互不相同。
24.根据权利要求23所述的方法,其特征在于,所述根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式,包括:
若前一帧的下混模式为下混模式A,所述当前帧的下混模式A为下混模式A,确定所述当前帧的编码模式为从下混模式A到下混模式A对应的编码模式;
或者,
若前一帧的下混模式为下混模式A,所述当前帧的为下混模式B,确定所述当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;
或者,
若前一帧的下混模式为下混模式A,所述当前帧的为下混模式C,确定所述当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式B,确定所述当前帧的编码模式为从下混模式B到下混模式B对应的编码模式;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式A,确定所述当前帧的编码模式为从下混模式B到下混模式A对应的编码模式;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式D,确定所述当前帧的编码模式为从下混模式B到下混模式D对应的编码模式;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式C到下混模式C对应的编码模式;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式A,确定所述当前帧的编码模式为从下混模式C到下混模式A对应的编码模式;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式C到下混模式D对应的编码模式;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式D到下混模式D对应的编码模式;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式D到下混模式C对应的编码模式;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式B,确定所述当前帧的编码模式为从下混模式D到下混模式B对应的编码模式。
25.根据权利要求23至24任意一项所述的方法,其特征在于,
Figure FDA0003061642940000111
或者
Figure FDA0003061642940000112
其中,所述
Figure FDA0003061642940000113
表示当前帧的下混模式A对应的上混矩阵;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
26.根据权利要求23至24任意一项所述的方法,其特征在于,
Figure FDA0003061642940000114
Figure FDA0003061642940000115
其中,所述
Figure FDA0003061642940000116
表示当前帧的下混模式B对应的上混矩阵;
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
27.根据权利要求23至24任意一项所述的方法,其特征在于,
Figure FDA0003061642940000117
Figure FDA0003061642940000118
其中,所述
Figure FDA0003061642940000119
表示当前帧的下混模式C对应的上混矩阵;
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信声道组合方案对应的声道组合比例因子。
28.根据权利要求23至24任意一项所述的方法,其特征在于,
Figure FDA0003061642940000121
Figure FDA0003061642940000122
其中,所述
Figure FDA0003061642940000123
表示当前帧的下混模式D对应的上混矩阵;
其中,α1=ratio;α2=1-ratio;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
29.一种音频编码装置,其特征在于,包括:相互耦合的处理器和存储器,其中,所述存储器存储有计算机程序;
所述处理器调用所述存储器存储的计算机程序,以用于执行如下步骤:
确定当前帧的声道组合方案;
根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式;
根据所述当前帧的编码模式对所述当前帧的左右声道信号进行时域下混处理以得到所述当前帧的主次声道信号;
对得到的所述当前帧的主次声道信号进行编码;
其中,所述当前帧的声道组合方案为多种声道组合方案中的其中一种;所述多种声道组合方案包括非相关性信号声道组合方案和相关性信号声道组合方案;
其中,所述前一帧的下混模式为多种下混模式中的其中一种,其中,所述多种下混模式包括:下混模式A、下混模式B、下混模式C和下混模式D;其中,所述下混模式A和所述下混模式D为相关性信号下混模式;所述下混模式B和所述下混模式C为非相关性信号下混模式。
30.根据权利要求29所述的装置,其特征在于,所述相关性信号声道组合方案为类正相信号对应的声道组合方案;所述非相关性信号声道组合方案为类反相信号对应的声道组合方案。
31.根据权利要求29所述的装置,其特征在于,所述前一帧的下混模式A、所述前一帧的下混模式B、所述前一帧的下混模式C和所述前一帧的下混模式D对应的下混矩阵互不相同。
32.根据权利要求31所述的装置,其特征在于,所述根据前一帧的下混模式和所述当前帧的声道组合方案确定所述当前帧的编码模式,包括:根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式。
33.根据权利要求32所述的装置,其特征在于,所述当前帧的下混模式切换代价值为根据所述当前帧的下混模式切换代价函数进行计算的计算结果;其中,所述下混模式切换代价函数基于如下参数的至少一种来构建:所述当前帧的至少一种时域立体声参数、所述前一帧的至少一种时域立体声参数和所述当前帧的左右声道信号;
或者,
当前帧的下混模式切换代价值为当前帧的声道组合比例因子。
34.根据权利要求33所述的装置,其特征在于,所述下混模式切换代价函数为如下切换代价函数的其中一种:下混模式A切换到下混模式B的下混模式切换代价函数、下混模式A切换到下混模式C的下混模式切换代价函数、下混模式D切换到下混模式B的下混模式切换代价函数、下混模式D切换到下混模式C的下混模式切换代价函数、下混模式B切换到下混模式A的下混模式切换代价函数、下混模式B切换到下混模式D的下混模式切换代价函数、下混模式C切换到下混模式A的下混模式切换代价函数、下混模式C切换到下混模式D的下混模式切换代价函数。
35.根据权利要求34所述的装置,其特征在于,所述下混模式A切换到下混模式B的下混模式切换代价函数为:
Figure FDA0003061642940000131
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_AB表示下混模式A切换到下混模式B的下混模式切换代价函数值;其中,所述start_sample_A表示下混模式A切换到下混模式B的模式切换代价函数的计算起始样点,end_sample_A为表示下混模式A切换到下混模式B的模式切换代价函数的计算结束样点,所述start_sample_A为大于0且小于N-1的整数,所述end_sample_A为大于0且小于N-1的整数,所述start_sample_A小于所述end_sample_A;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
36.根据权利要求34所述的装置,其特征在于,所述下混模式A切换到下混模式C的下混模式切换代价函数为:
Figure FDA0003061642940000132
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_AC表示下混模式A切换到下混模式C的下混模式切换代价函数值;其中,所述start_sample_A表示下混模式A切换到下混模式C的模式切换代价函数的计算起始样点,end_sample_A为表示下混模式A切换到下混模式C的模式切换代价函数的计算结束样点,所述start_sample_A为大于0且小于N-1的整数,所述end_sample_A为大于0且小于N-1的整数,所述start_sample_A小于所述end_sample_A;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
37.根据权利要求34所述的装置,其特征在于,所述下混模式B切换到下混模式A的下混模式切换代价函数为:
Figure FDA0003061642940000141
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_BA表示下混模式B切换到下混模式A的下混模式切换代价函数值;其中,所述start_sample_B表示下混模式B切换到下混模式A的模式切换代价函数的计算起始样点,end_sample_B为表示下混模式B切换到下混模式A的模式切换代价函数的计算结束样点,所述start_sample_B为大于0且小于N-1的整数,所述end_sample_B为大于0且小于N-1的整数,所述start_sample_B小于所述end_sample_B;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
38.根据权利要求34所述的装置,其特征在于,所述下混模式B切换到下混模式D的下混模式切换代价函数为:
Figure FDA0003061642940000142
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_BD表示下混模式B切换到下混模式D的下混模式切换代价函数值;其中,所述start_sample_B表示下混模式B切换到下混模式D的模式切换代价函数的计算起始样点,end_sample_B为表示下混模式B切换到下混模式D的模式切换代价函数的计算结束样点,所述start_sample_B为大于0且小于N-1的整数,所述end_sample_B为大于0且小于N-1的整数,所述start_sample_B小于所述end_sample_B;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
39.根据权利要求34所述的装置,其特征在于,所述下混模式C切换到下混模式D的下混模式切换代价函数为:
Figure FDA0003061642940000151
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_CD表示下混模式C切换到下混模式D的下混模式切换代价函数值;其中,所述start_sample_C表示下混模式C切换到下混模式D的模式切换代价函数的计算起始样点,end_sample_C为表示下混模式C切换到下混模式D的模式切换代价函数的计算结束样点,所述start_sample_C为大于0且小于N-1的整数,所述end_sample_C为大于0且小于N-1的整数,所述start_sample_C小于所述end_sample_C;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
40.根据权利要求34所述的装置,其特征在于,所述下混模式C切换到下混模式A的下混模式切换代价函数为:
Figure FDA0003061642940000152
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_CA表示下混模式C切换到下混模式A的下混模式切换代价函数值;其中,所述start_sample_C表示下混模式C切换到下混模式A的模式切换代价函数的计算起始样点,end_sample_C为表示下混模式C切换到下混模式A的模式切换代价函数的计算结束样点,所述start_sample_C为大于0且小于N-1的整数,所述end_sample_C为大于0且小于N-1的整数,所述start_sample_C小于所述end_sample_C;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio,其中,所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio_SM;所述tdm_last_ratio_SM表示前一帧的非相关性信号声道组合方案对应的声道组合比例因子。
41.根据权利要求34所述的装置,其特征在于,所述下混模式D切换到下混模式C的下混模式切换代价函数为:
Figure FDA0003061642940000161
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_DC表示下混模式D切换到下混模式C的下混模式切换代价函数值;其中,所述start_sample_D表示下混模式D切换到下混模式C的模式切换代价函数的计算起始样点,end_sample_D为表示下混模式D切换到下混模式C的模式切换代价函数的计算结束样点,所述start_sample_D为大于0且小于N-1的整数,所述end_sample_D为大于0且小于N-1的整数,所述start_sample_D小于所述end_sample_D;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
42.根据权利要求34所述的装置,其特征在于,所述下混模式D切换到下混模式B的下混模式切换代价函数为:
Figure FDA0003061642940000162
α2_pre=1-α1_pre,
α2=1-α1
其中,所述Cost_DB表示下混模式D切换到下混模式B的下混模式切换代价函数值;其中,所述start_sample_D表示下混模式D切换到下混模式B的模式切换代价函数的计算起始样点,end_sample_D为表示下混模式D切换到下混模式B的模式切换代价函数的计算结束样点,所述start_sample_D为大于0且小于N-1的整数,所述end_sample_D为大于0且小于N-1的整数,所述start_sample_D小于所述end_sample_D;
其中,所述n表示样点序号,所述N为帧长;
其中,所述XL(n)表示所述当前帧的左声道信号,所述XR(n)表示所述当前帧的右声道信号;
其中,α1=ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子;
其中,α1_pre=tdm_last_ratio;所述tdm_last_ratio表示前一帧的相关性信号声道组合方案对应的声道组合比例因子。
43.根据权利要求31所述的装置,其特征在于,所述根据前一帧的声道组合方案和所述当前帧的声道组合方案确定所述当前帧的编码模式,包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式A,确定所述当前帧的编码模式为从下混模式A到下混模式A对应的编码模式;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为非相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式B,确定所述当前帧的编码模式为从下混模式B到下混模式B对应的编码模式;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为非相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式C到下混模式C对应的编码模式;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为相关性信号声道组合方案,则确定所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式D到下混模式D对应的编码模式。
44.根据权利要求32至42任意一项所述的装置,其特征在于,所述根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式,包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第一下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第一下混模式切换条件为当前帧的下混模式A切换到下混模式B的切换代价函数值大于或等于下混模式A切换到下混模式C的切换代价函数值;
或者,
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第二下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第二下混模式切换条件为当前帧的下混模式A切换到下混模式B的切换代价函数值小于或等于下混模式A切换到下混模式C的切换代价函数值;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第三下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式B切换到下混模式A对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第三下混模式切换条件为当前帧的下混模式B切换到下混模式A的切换代价函数值小于或等于下混模式B切换到下混模式D的切换代价函数值;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第四下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式B切换到下混模式D对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第下混四模式切换条件为当前帧的下混模式B切换到下混模式A的切换代价函数值大于或等于下混模式B切换到下混模式D的切换代价函数值;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第五下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式C切换到下混模式D对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第五下混模式切换条件为当前帧的下混模式C切换到下混模式A的切换代价函数值大于或等于下混模式C切换到下混模式D的切换代价函数值;
或者
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第六下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式C切换到下混模式A对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第六下混模式切换条件为当前帧的下混模式C切换到下混模式A的切换代价函数值小于或等于下混模式C切换到下混模式D的切换代价函数值;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第七下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式D切换到下混模式B对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第七下混模式切换条件为当前帧的下混模式D切换到下混模式B的切换代价函数值小于或等于下混模式D切换到下混模式C的切换代价函数值;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第八下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式D切换到下混模式C对应的编码模式;其中,下混模式切换代价值为下混模式切换代价函数值,所述第八下混模式切换条件为当前帧的下混模式D切换到下混模式B的切换代价函数值大于或等于下混模式D切换到下混模式C的切换代价函数值。
45.根据权利要求32至33任意一项所述的装置,其特征在于,所述根据前一帧的下混模式、所述当前帧的下混模式切换代价值和所述当前帧的声道组合方案确定所述当前帧的编码模式,包括:
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第九下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第九下混模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S1;
或者,
若前一帧的下混模式为下混模式A,所述当前帧的声道组合方案为非相关性信号声道组合方案,且所述当前帧的下混模式切换代价值满足第十下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十下混模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S1;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十一下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式B切换到下混模式A对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,并且所述第十一下混模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S2;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十二下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式B切换到下混模式D对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十二下混模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S2;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十三下混模式切换条件,则确定所述当前帧的下混模式为下混模式D,当前帧的编码模式为从下混模式C切换到下混模式D对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十三下混模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S3;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的声道组合方案为相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十四下混模式切换条件,则确定所述当前帧的下混模式为下混模式A,当前帧的编码模式为从下混模式C切换到下混模式A对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十四下混模式切换条件为当前帧的声道组合比例因子小于或等于声道组合比例因子阈值S3;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十五下混模式切换条件,则确定所述当前帧的下混模式为下混模式B,当前帧的编码模式为从下混模式D切换到下混模式B对应的编码模式;其中,当前帧的下混模式切换代价值为当前帧的声道组合比例因子,且所述第十五下混模式切换条件为当前帧的声道组合比例因子小于或或等于声道组合比例因子阈值S4;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的声道组合方案为非相关性信号声道组合方案,并且所述当前帧的下混模式切换代价值满足第十六下混模式切换条件,则确定所述当前帧的下混模式为下混模式C,当前帧的编码模式为从下混模式D切换到下混模式C对应的编码模式;其中,当前帧的下混模式切换代价函数值为当前帧的声道组合比例因子,且所述第十六下混模式切换条件为当前帧的声道组合比例因子大于或等于声道组合比例因子阈值S4。
46.根据权利要求31至43任意一项所述的装置,其特征在于,
Figure FDA0003061642940000201
或者
Figure FDA0003061642940000202
其中,所述M2A表示当前帧的下混模式A对应的下混矩阵;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
47.根据权利要求31至43任意一项所述的装置,其特征在于,
Figure FDA0003061642940000203
Figure FDA0003061642940000204
其中,所述M2B表示当前帧的下混模式B对应的下混矩阵;
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
48.根据权利要求31至43任意一项所述的装置,其特征在于,
Figure FDA0003061642940000205
Figure FDA0003061642940000206
其中,所述M2C表示当前帧的下混模式C对应的下混矩阵;
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
49.根据权利要求31至43任意一项所述的装置,其特征在于,
Figure FDA0003061642940000207
Figure FDA0003061642940000208
其中,所述M2D表示当前帧的下混模式D对应的下混矩阵;
其中,α1=ratio;α2=1-ratio;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
50.一种音频解码装置,其特征在于,包括:相互耦合的处理器和存储器,其中,所述存储器存储有计算机程序;
所述处理器调用所述存储器存储的计算机程序,以用于执行如下步骤:
根据码流进行解码以得到当前帧的主次声道解码信号;
根据码流进行解码以得到所述当前帧的下混模式;
根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式;
根据所述当前帧的编码模式对所述当前帧的主次声道解码信号进行时域上混处理以得到所述当前帧的左右声道重建信号;
其中,所述前一帧的下混模式为如下多种下混模式中的其中一种:下混模式A、下混模式B、下混模式C和下混模式D;
所述前当帧的下混模式为如下多种下混模式中的其中一种:下混模式A、下混模式B、下混模式C和下混模式D;
其中,所述下混模式A和所述下混模式D为相关性信号下混模式;所述下混模式B和所述下混模式C为非相关性信号下混模式。
51.根据权利要求50所述的装置,其特征在于,
所述前一帧的下混模式A、所述前一帧的下混模式B、所述前一帧的下混模式C和所述前一帧的下混模式D对应的上混矩阵互不相同;
其中,所述当前帧的下混模式A、所述当前帧的下混模式B、所述当前帧的下混模式C和所述当前帧的下混模式D对应的上混矩阵互不相同。
52.根据权利要求51所述的装置,其特征在于,所述根据前一帧的下混模式和所述当前帧的下混模式确定所述当前帧的编码模式,包括:若前一帧的下混模式为下混模式A,所述当前帧的下混模式A为下混模式A,确定所述当前帧的编码模式为从下混模式A到下混模式A对应的编码模式;
或者,
若前一帧的下混模式为下混模式A,所述当前帧的为下混模式B,确定所述当前帧的编码模式为从下混模式A切换到下混模式B对应的编码模式;
或者,
若前一帧的下混模式为下混模式A,所述当前帧的为下混模式C,确定所述当前帧的编码模式为从下混模式A切换到下混模式C对应的编码模式;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式B,确定所述当前帧的编码模式为从下混模式B到下混模式B对应的编码模式;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式A,确定所述当前帧的编码模式为从下混模式B到下混模式A对应的编码模式;
或者,
若前一帧的下混模式为下混模式B,所述当前帧的为下混模式D,确定所述当前帧的编码模式为从下混模式B到下混模式D对应的编码模式;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式C到下混模式C对应的编码模式;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式A,确定所述当前帧的编码模式为从下混模式C到下混模式A对应的编码模式;
或者,
若前一帧的下混模式为下混模式C,所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式C到下混模式D对应的编码模式;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式D,确定所述当前帧的编码模式为从下混模式D到下混模式D对应的编码模式;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式C,确定所述当前帧的编码模式为从下混模式D到下混模式C对应的编码模式;
或者,
若前一帧的下混模式为下混模式D,所述当前帧的下混模式为下混模式B,确定所述当前帧的编码模式为从下混模式D到下混模式B对应的编码模式。
53.根据权利要求51至52任意一项所述的装置,其特征在于,
Figure FDA0003061642940000221
或者
Figure FDA0003061642940000222
其中,所述
Figure FDA0003061642940000223
表示当前帧的下混模式A对应的上混矩阵;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
54.根据权利要求51至52任意一项所述的装置,其特征在于,
Figure FDA0003061642940000224
Figure FDA0003061642940000225
其中,所述
Figure FDA0003061642940000226
表示当前帧的下混模式B对应的上混矩阵;
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
55.根据权利要求51至52任意一项所述的装置,其特征在于,
Figure FDA0003061642940000227
Figure FDA0003061642940000231
其中,所述
Figure FDA0003061642940000232
表示当前帧的下混模式C对应的上混矩阵;
其中,α1=ratio_SM;α2=1-ratio_SM;所述ratio_SM表示所述当前帧的非相关性信号声道组合方案对应的声道组合比例因子。
56.根据权利要求51至52任意一项所述的装置,其特征在于,
Figure FDA0003061642940000233
Figure FDA0003061642940000234
其中,所述
Figure FDA0003061642940000235
表示当前帧的下混模式D对应的上混矩阵;
其中,α1=ratio;α2=1-ratio;所述ratio表示所述当前帧的相关性信号声道组合方案对应的声道组合比例因子。
57.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储了程序代码,所述程序代码包括用于执行权利要求1-21任意一项所述方法的指令。
58.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储了程序代码,所述程序代码包括用于执行权利要求22-28任意一项所述方法的指令。
CN201711244330.5A 2017-11-30 2017-11-30 音频编解码方法和相关产品 Active CN109859766B (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
CN201711244330.5A CN109859766B (zh) 2017-11-30 2017-11-30 音频编解码方法和相关产品
TW107126918A TWI705432B (zh) 2017-11-30 2018-08-02 音訊編解碼方法、音頻編解碼裝置及電腦可讀存儲介質
PCT/CN2018/118301 WO2019105436A1 (zh) 2017-11-30 2018-11-29 音频编解码方法和相关产品
BR112020010850-2A BR112020010850A2 (pt) 2017-11-30 2018-11-29 método de codificação e decodificação de áudio e produto relacionado
KR1020207017982A KR102437451B1 (ko) 2017-11-30 2018-11-29 오디오 인코딩 및 디코딩 방법 및 관련 제품
JP2020529337A JP7088450B2 (ja) 2017-11-30 2018-11-29 オーディオエンコーディング及びデコーディング方法並びに関連する製品
EP18884568.9A EP3703050B1 (en) 2017-11-30 2018-11-29 Audio encoding method and related product
US16/887,878 US11393482B2 (en) 2017-11-30 2020-05-29 Audio encoding and decoding method and related product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711244330.5A CN109859766B (zh) 2017-11-30 2017-11-30 音频编解码方法和相关产品

Publications (2)

Publication Number Publication Date
CN109859766A CN109859766A (zh) 2019-06-07
CN109859766B true CN109859766B (zh) 2021-08-20

Family

ID=66663812

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711244330.5A Active CN109859766B (zh) 2017-11-30 2017-11-30 音频编解码方法和相关产品

Country Status (8)

Country Link
US (1) US11393482B2 (zh)
EP (1) EP3703050B1 (zh)
JP (1) JP7088450B2 (zh)
KR (1) KR102437451B1 (zh)
CN (1) CN109859766B (zh)
BR (1) BR112020010850A2 (zh)
TW (1) TWI705432B (zh)
WO (1) WO2019105436A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112021026584A2 (pt) * 2019-07-10 2022-02-15 Nec Corp Aparelho e método de incorporação de alto-falante
CN112751792B (zh) * 2019-10-31 2022-06-10 华为技术有限公司 一种信道估计方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101630509A (zh) * 2008-07-14 2010-01-20 华为技术有限公司 一种编解码方法、装置及系统
CN102428513A (zh) * 2009-03-18 2012-04-25 三星电子株式会社 多声道信号的编码/解码装置及方法
CN104240712A (zh) * 2014-09-30 2014-12-24 武汉大学深圳研究院 一种三维音频多声道分组聚类编码方法及系统
US20150332684A1 (en) * 2010-01-06 2015-11-19 Lg Electronics Inc. Apparatus For Processing An Audio Signal And Method Thereof
WO2017049397A1 (en) * 2015-09-25 2017-03-30 Voiceage Corporation Method and system using a long-term correlation difference between left and right channels for time domain down mixing a stereo sound signal into primary and secondary channels

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE0402652D0 (sv) * 2004-11-02 2004-11-02 Coding Tech Ab Methods for improved performance of prediction based multi- channel reconstruction
US7830921B2 (en) * 2005-07-11 2010-11-09 Lg Electronics Inc. Apparatus and method of encoding and decoding audio signal
JP4787331B2 (ja) * 2006-01-19 2011-10-05 エルジー エレクトロニクス インコーポレイティド メディア信号の処理方法及び装置
TWI342718B (en) * 2006-03-24 2011-05-21 Coding Tech Ab Decoder and method for deriving headphone down mix signal, receiver, binaural decoder, audio player, receiving method, audio playing method, and computer program
US8355921B2 (en) * 2008-06-13 2013-01-15 Nokia Corporation Method, apparatus and computer program product for providing improved audio processing
EP2169664A3 (en) * 2008-09-25 2010-04-07 LG Electronics Inc. A method and an apparatus for processing a signal
KR101580240B1 (ko) * 2012-02-17 2016-01-04 후아웨이 테크놀러지 컴퍼니 리미티드 다채널 오디오 신호를 인코딩하는 파라메트릭 인코더
US10210871B2 (en) * 2016-03-18 2019-02-19 Qualcomm Incorporated Audio processing for temporally mismatched signals
CN109389987B (zh) * 2017-08-10 2022-05-10 华为技术有限公司 音频编解码模式确定方法和相关产品

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101630509A (zh) * 2008-07-14 2010-01-20 华为技术有限公司 一种编解码方法、装置及系统
CN102428513A (zh) * 2009-03-18 2012-04-25 三星电子株式会社 多声道信号的编码/解码装置及方法
US20150332684A1 (en) * 2010-01-06 2015-11-19 Lg Electronics Inc. Apparatus For Processing An Audio Signal And Method Thereof
CN104240712A (zh) * 2014-09-30 2014-12-24 武汉大学深圳研究院 一种三维音频多声道分组聚类编码方法及系统
WO2017049397A1 (en) * 2015-09-25 2017-03-30 Voiceage Corporation Method and system using a long-term correlation difference between left and right channels for time domain down mixing a stereo sound signal into primary and secondary channels

Also Published As

Publication number Publication date
BR112020010850A2 (pt) 2020-11-10
EP3703050A4 (en) 2020-12-30
WO2019105436A1 (zh) 2019-06-06
EP3703050A1 (en) 2020-09-02
KR102437451B1 (ko) 2022-08-30
TWI705432B (zh) 2020-09-21
JP7088450B2 (ja) 2022-06-21
US11393482B2 (en) 2022-07-19
KR20200090856A (ko) 2020-07-29
EP3703050B1 (en) 2024-01-03
JP2021504759A (ja) 2021-02-15
CN109859766A (zh) 2019-06-07
TW201926318A (zh) 2019-07-01
US20200294513A1 (en) 2020-09-17

Similar Documents

Publication Publication Date Title
CN109389987B (zh) 音频编解码模式确定方法和相关产品
CN109389984B (zh) 时域立体声编解码方法和相关产品
CN109859766B (zh) 音频编解码方法和相关产品
CN109389985B (zh) 时域立体声编解码方法和相关产品
JP7309813B2 (ja) 時間領域ステレオパラメータ符号化方法および関連製品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant