音频信号编码方法、解码方法、编码设备以及解码设备

文档序号:193369 发布日期:2021-11-02 浏览:30次 >En<

阅读说明:本技术 音频信号编码方法、解码方法、编码设备以及解码设备 (Audio signal encoding method, decoding method, encoding apparatus, and decoding apparatus ) 是由 夏丙寅 李佳蔚 王喆 于 2020-04-15 设计创作,主要内容包括:本申请提供一种音频信号编码方法、解码方法、编码设备以及解码设备,用于实现更高质量的音频编解码,提高用户体验。该方法包括:获取音频信号的当前帧,当前帧包括高频带信号和低频带信号;根据高频带信号、低频带信号和频带扩展的配置信息得到当前帧的频带扩展的参数;获取频率区域信息,频率区域信息用于指示高频带信号中需要进行音调成分检测的第一频率范围;在第一频率范围进行音调成分检测以获取高频带信号的音调成分的信息;对频带扩展的参数和音调成分的信息进行码流复用,以得到载荷码流。(The application provides an audio signal encoding method, an audio signal decoding method, an audio signal encoding device and an audio signal decoding device, which are used for realizing audio encoding and decoding with higher quality and improving user experience. The method comprises the following steps: acquiring a current frame of an audio signal, wherein the current frame comprises a high-frequency band signal and a low-frequency band signal; obtaining the parameters of the frequency band expansion of the current frame according to the high-frequency band signal, the low-frequency band signal and the configuration information of the frequency band expansion; acquiring frequency region information, wherein the frequency region information is used for indicating a first frequency range in which tone component detection is required in a high-frequency band signal; performing pitch component detection in a first frequency range to obtain information of a pitch component of the high-band signal; and multiplexing the parameters of the frequency band expansion and the information of the tone components to obtain a load code stream.)

音频信号编码方法、解码方法、编码设备以及解码设备

技术领域

本申请涉及通信领域,尤其涉及一种音频信号编码方法、解码方法、编码设备以及解码设备。

背景技术

随着社会的进步和技术的不断发展,用户对音频服务的需求越来越高。如何在有限编码比特率的情况下为用户提供更高质量的服务,或者利用更低的编码比特率为用户提供相同质量的服务一直以来都是音频编解码研究的重点。

通常,在对音频数据进行编码的过程中,是将音频数据中的高频部分和低频部分分别进行处理。为了降低编码比特率,往往进一步利用不同频带信号间的相关性进行编码。例如,利用低频带信号,通过频谱复制或者频带扩展等方法,产生高频带信号。然而,高频带的频谱中往往存在一些与低频带的频谱不相似的音调成分,而现有方案并不能对这些不相似的音调成分进行处理,这就导致实际的编码数据的编码质量较低。因此,如何得到高质量的编码数据,成为亟待解决的问题。

发明内容

本申请提供一种音频信号编码方法、解码方法、编码设备以及解码设备,用于实现更高质量的音频编解码,提高用户体验。

第一方面,本申请提供一种音频信号编码方法,包括:获取音频信号的当前帧,当前帧包括高频带信号和低频带信号;根据高频带信号、低频带信号和预设的频带扩展的配置信息得到当前帧的频带扩展的参数;获取频率区域信息,频率区域信息用于指示高频带信号中需要进行音调成分检测的第一频率范围;在第一频率范围进行音调成分检测以获取高频带信号的音调成分的信息;对频带扩展的参数和音调成分的信息进行码流复用,以得到载荷码流。

因此,本申请实施方式中,可以根据频率区域信息所指示的频率范围进行音调成分的检测,该频率范围是根据频带扩展的配置信息和音频信号的采样频率确定的,从而使检测得到的音调成分的信息可以覆盖更多的高频带信号与低频带信号之间音调成分不相似的频率范围,并根据覆盖更多频率范围的音调成分的信息进行编码,从而提高编码质量。

在一种可能的实施方式中,第一方面提供的方法还可以包括:对频率区域信息进行码流复用,得到配置码流。因此,本申请实施方式中,可以将频率区域信息通过配置码流发送至解码设备,从而使解码设备可以根据配置码流中所包括的频率区域信息指示的频率范围进行解码,从而可以对高频带信号和低频带信号中不相似的音调成分的信息进行解码,进一步提高解码质量。

在一种可能的实施方式中,获取频率区域信息,可以包括:根据音频信号的采样频率以及配置信息确定频率区域信息。本申请实施方式中,音频信号有一帧或者多帧,可以在对每一帧进行编码时确定对应的频率区域信息,也可以是多帧使用相同的频率区域信息,提供了多种实施方式,具体可以根据实际应用场景进行调整。

在一种可能的实施方式中,频率区域信息可以包括以下至少一种:第一数量、标识信息、关系信息或者频率区域变化数量,第一数量为第一频率范围内的频率区域的数量,标识信息用于指示第一频率范围与配置信息指示的频带扩展对应的第二频率范围是否相同,关系信息用于在第一频率范围与第二频率范围不相同时,指示第一频率范围与第二频率范围之间的大小关系,频率区域变化数量为在第一频率范围与第二频率范围不相同时,第一频率范围与第二频率范围之间存在差异的频率区域的数量。因此,可以根据该频率区域信息,准确地确定需要进行音调成分检测的频率范围。

在一种可能的实施方式中,频带扩展的配置信息包括频带扩展上限和/或第二数量,第二数量为第二频率范围内的频率区域的数量;上述方法还可以包括:根据当前帧的编码速率、音频信号的通道数量、音频信号的采样频率、频带扩展上限或者第二数量中的一个或多个,确定第一数量。因此,本申请实施方式中,可以根据当前帧的编码速率、音频信号的通道数量、采样频率、频带扩展上限或者第二数量中的一个或多个,准确地确定需要进行音调成分检测的频率区域的数量。

在一种可能的实施方式中,频带扩展上限包括以下一个或多个:第二频率范围内的最高频率、最高频点序号、最高频带序号或最高频率区域序号。

在一种可能的实施方式中,音频信号的通道数量为至少一个;上述的根据当前帧的编码速率、音频信号的通道数量、采样频率、频带扩展上限或者第二数量中的一个或多个,确定第一数量,可以包括:根据当前帧的编码速率和通道数量,确定当前帧中当前通道的第一判断标识,当前帧的编码速率是当前帧的编码速率;根据第一判断标识,结合第二数量,确定当前通道的第一数量;或者,根据采样频率和频带扩展上限,确定当前帧中当前通道的第二判断标识;根据第二判断标识,结合第二数量,确定当前通道的第一数量;或者,根据当前帧的编码速率和通道数量,确定当前帧中当前通道的第一判断标识,以及根据采样频率和频带扩展上限,确定当前帧中当前通道的第二判断标识;根据第一判断标识和第二判断标识,结合第二数量,确定当前帧中当前通道的第一数量。

因此,本申请实施方式中,可以通过多种方式结合第二数量确定第一数量,从而准确地确定出需要进行音调成分检测的频率区域的数量。

在一种可能的实施方式中,根据当前帧的编码速率和通道数量,确定当前帧中当前通道的第一判断标识,可以包括:根据当前帧的编码速率和通道数量得到当前帧中的每个通道的平均编码速率;根据平均编码速率和第一阈值,得到当前通道的第一判断标识。

本申请实施方式中,可以根据平均编码速率来得到当前通道的第一判断标识,从而通过第一判断标识来表示平均编码速率是否大于第一阈值,使后续得到的第一数量更准确。

在一种可能的实施方式中,上述的根据当前帧的编码速率和通道数量,确定当前帧中当前通道的第一判断标识,还可以包括:根据当前帧的编码速率和通道数量确定当前通道的实际编码速率;根据当前通道的实际编码速率和第二阈值,得到当前通道的第一判断标识。

本申请实施方式中,可以为每个通道分配实际编码速率,从而通过第一判断标识来表示当前通道的实际编码速率是否大于第二阈值,使后续得到的第一数量更准确。

在一种可能的实施方式中,上述的根据采样频率和频带扩展上限,确定当前帧中当前通道的第二判断标识,可以包括:当频带扩展上限包括最高频率时,比较频带扩展上限包括的最高频率与音频信号的最高频率是否相同,确定当前帧中当前通道的第二判断标识;或者,当频带扩展上限包括最高频带序号时,比较频带扩展上限包括的最高频带序号与音频信号的最高频带序号是否相同,确定当前帧中当前通道的第二判断标识,音频信号的最高频带序号由采样频率确定。

本申请实施方式中,可以通过频带扩展上限包括的最高频率与音频信号的最高频率进行比较,来确定第二判断标识,或者,对频带扩展上限所包括的最高频点序号、最高频带序号或最高频率区域序号等和音频信号对应的最高频点序号、最高频带序号或最高频率区域序号等进行比较,确定音频信号的最高频率是否超过频带扩展的频率上限,从而得到更准确的第一数量。

在一种可能的实施方式中,上述的确定当前帧中当前通道的第一数量,可以包括:若第一判断标识和第二判断标识都符合预设条件,则在频带扩展对应的第二数量基础上增加一个或多个频率区域,作为当前通道的第一数量;或若第一判断标识或第二判断标识不满足预设条件,则将频带扩展对应的第二数量作为当前通道的第一数量。

因此,本申请实施方式中,当第一判断标识和第二判断标识都符合预设条件时,表示需要检测音调成分的频率范围超过了频带扩展对应的频率范围,需要增加频率区域的数量,从而使进行音调成分检测的频率区域的数量可以覆盖频带扩展对应的频率范围,从而使最终得到的音调成分的信息可以覆盖音调信号的当前帧中的所有音调成分的信息,提高编码质量。而当第一判断标识或者第二判断标识不符合预设条件,则可以对当前帧中的频带扩展对应的频率范围进行音调检测,也可以完全覆盖当前帧中的所有音调成分的信息,提高编码质量。

在一种可能的实施方式中,第一频率范围的下限与配置信息指示的进行频带扩展的第二频率范围的下限相同;当频率区域信息包括第一数量小于或等于频带扩展对应的第二数量时,第一频率范围内频率区域的分布与配置信息中指示的第二频率范围内的频率区域的分布相同;当第一数量大于第二数量时,第一频率范围的频率上限大于第二频率范围的频率上限,第一频率范围与第二频率范围重合部分的频率区域的分布与第二频率范围内的频率区域的分布相同,第一频率范围中与第二频率范围的不重合部分内的频率区域的分布为根据预设方式确定的。

因此,本申请实施方式中,第一频率范围的下限与频带扩展的第二频率范围的下限相同,后续可以通过对比第一频率范围内的频率区域的数量,和第二频率范围内的频率区域的数量,确定第一频率范围内的频率区域的划分方式,从而准确地确定第一频率范围所包括的频率区域。

在一种可能的实施方式中,第一频率范围与第二频率范围的不重合部分内的频率区域满足以下条件:第一频率范围中与第二频率范围的不重合部分内的频率区域的宽度小于或等于预设值,且第一频率范围与第二频率范围的不重合部分内的频率区域的频率上限小于或等于音频信号的最高频率。因此,本申请实施方式中,可以限定了对于第一频率范围中与第二频率范围的不重合部分的划分方式,即宽度不超过预设值,且频率区域的频率上限小于或等于音频信号的最高频率,从而可以实现更合理的频率区域的划分。

在一种可能的实施方式中,本申请实施方式对频率范围进行了划分,可以将第一频率范围划分为一个或者多个频率区域,每个频率区域又可以划分为一个或者多个频带。并且,可以对频率范围内的频带进行排序,每个频带具有不同的序号,从而可以通过对比频带的序号,来对比频率的大小。

在一种可能的实施方式中,第一频率范围内的频率区域的数量为预设数量。因此,本申请实施方式中,也可以将需要进行音调成分检测的频率区域的数量设定为预设数量,从而可以直接降低工作量。

可选地,当第一频率范围内的频率区域的数量为预设数量时,该预设数量可以写入配置码流中,也可以不写入配置码流中。

在一种可能的实施方式中,音调成分的信息中可以包括音调成分的位置数量参数、以及音调成分的幅度参数或能量参数。

在一种可能的实施方式中,音调成分信息还可以包括高频带信号的噪声基底参数。

第二方面,本申请提供一种解码方法,包括:获取载荷码流;对载荷码流进行码流解复用,以得到音频信号的当前帧的频带扩展的参数和音调成分的信息;根据频带扩展的参数得到当前帧的高频带信号;根据音调成分的信息和频率区域信息进行重建,得到重建音调信号,频率区域信息用于指示当前帧中需要进行音调成分重建的第一频率范围;根据高频带信号和重建音调信号,得到当前帧的解码信号。

本申请实施方式中,可以根据频率区域信息确定需要进行音调成分重建的频率范围,该频率范围是根据频带扩展的配置信息和音频信号的采样频率确定的,从而可以根据该频率区域信息对高频带信号和低频带信号之间不相似的成分的音调成分进行音调成分重建,提高解码质量。

在一种可能的实施方式中,方法还可以包括:获取配置码流;根据配置码流获取频率区域信息。因此,本申请实施方式中,可以根据配置码流中所包括的频率区域信息指示的频率范围进行解码,从而可以对高频带信号和低频带信号中不相似的音调成分的信息进行解码,提高解码质量。

在一种可能的实施方式中,频率区域信息可以包括以下至少一种:第一数量、标识信息、关系信息或者频率区域变化数量,第一数量为第一频率范围内的频率区域的数量,标识信息用于指示第一频率范围与频带扩展对应的第二频率范围是否相同,关系信息用于在第一频率范围与第二频率范围不相同时,指示第一频率范围与第二频率范围之间的大小关系,频率区域变化数量为在第一频率范围与第二频率范围不相同时,第一频率范围与第二频率范围之间存在差异的频率区域的数量。

在一种可能的实施方式中,根据音调成分的信息和频率区域信息进行重建,得到重建音调信号,包括:根据频率区域信息,确定需要进行音调成分重建的频率区域的数量为第一数量;根据第一数量,确定第一频率范围内进行音调成分重建的各个频率区域;在第一频率范围内,根据音调成分的信息对音调成分进行重建,得到重建音调信号。

因此,在本申请实施方式中,可以基于频率区域信息指示的频率范围进行音调成分重建,从而可以对高频带信号和低频带信号中不相似的音调成分的信息进行解码,提高解码质量。

在一种可能的实施方式中,第一频率范围的下限与配置信息指示的进行频带扩展的第二频率范围的下限相同,上述的根据第一数量,确定第一频率范围内进行音调成分重建的各个频率区域,可以包括:若第一数量小于或等于第二数量,则根据第二频率范围内的频率区域的分布确定第一频率范围内的频率区域的分布,第二数量为第二频率范围内的频率区域的数量;若第一数量大于第二数量,则确定第一频率范围的频率上限大于第二频率范围的频率上限,根据第二频率范围内的频率区域的分布确定第一频率范围与第二频率范围重合部分内的频率区域的分布,以及按照预设方式确定第一频率范围与第二频率范围的不重合部分内的频率区域的分布,得到第一频率范围内的各个频率区域的分布。本申请实施方式中,第一频率范围的下限与频带扩展的第二频率范围的下限相同,后续可以通过对比第一频率范围内的频率区域的数量,和第二频率范围内的频率区域的数量,确定第一频率范围内的频率区域的划分方式,从而准确地确定第一频率范围所包括的频率区域。

在一种可能的实施方式中,第一频率范围与第二频率范围的不重合部分内的频率区域满足以下条件:第一频率范围与第二频率范围的不重合部分内的频率区域的宽度小于或等于预设值,且第一频率范围与第二频率范围的不重合部分内的频率区域的频率上限小于或等于音频信号的最高频率。因此,本申请实施方式中,可以限定了对于第一频率范围中与第二频率范围的不重合部分的划分方式,即宽度不超过预设值,且频率区域的频率上限小于或等于音频信号的最高频率,从而可以实现更合理的频率区域的划分。

第三方面,本申请提供一种编码设备,包括:

音频获取模块,用于获取音频信号的当前帧,当前帧包括高频带信号和低频带信号;

参数获取模块,用于根据高频带信号、低频带信号和预设的频带扩展的配置信息得到当前帧的频带扩展的参数;

频率获取模块,用于获取频率区域信息,频率区域信息用于指示高频带信号中需要进行音调成分检测的第一频率范围;

音调成分编码模块,用于在第一频率范围进行音调成分检测以获取高频带信号的音调成分的信息;

码流复用模块,用于对频带扩展的参数和音调成分的信息进行码流复用,以得到载荷码流。

第三方面及第三方面任一种可能的实施方式产生的有益效果可参照第一方面及第一方面任一种可能实施方式的描述。

在一种可能的实施方式中,编码设备还可以包括:

码流复用模块,还用于对频率区域信息进行码流复用,得到配置码流。

在一种可能的实施方式中,频率获取模块,具体用于根据音频信号的采样频率以及频带扩展的配置信息确定频率区域信息。

在一种可能的实施方式中,频率区域信息包括以下至少一种:第一数量、标识信息、关系信息或者频率区域变化数量,第一数量为第一频率范围内的频率区域的数量,标识信息用于指示第一频率范围与频带扩展对应的第二频率范围是否相同,关系信息用于在第一频率范围与第二频率范围不相同时,指示第一频率范围与第二频率范围之间的大小关系,频率区域变化数量为在第一频率范围与第二频率范围不相同时,第一频率范围与第二频率范围之间存在差异的频率区域的数量。

在一种可能的实施方式中,频率区域信息至少包括第一数量,频带扩展的配置信息包括频带扩展上限和/或第二数量,第二数量为第二频率范围内的频率区域的数量;

频率获取模块,具体用于根据当前帧的编码速率、音频信号的通道数量、采样频率、频带扩展上限或者第二数量中的一个或多个,确定第一数量。

在一种可能的实施方式中,频带扩展上限包括以下一个或多个:第二频率范围内的最高频率、最高频点序号、最高频带序号或最高频率区域序号。

在一种可能的实施方式中,音频信号的通道数量为至少一个;

频率获取模块,具体用于:

根据当前帧的编码速率和通道数量,确定当前帧中当前通道的第一判断标识,当前帧的编码速率是当前帧的编码速率;根据第一判断标识,结合第二数量,确定当前通道的第一数量;

或者,

根据采样频率和频带扩展上限,确定当前帧中当前通道的第二判断标识;根据第二判断标识,结合第二数量,确定当前通道的第一数量;

或者,

根据当前帧的编码速率和通道数量,确定当前帧中当前通道的第一判断标识,以及根据采样频率和频带扩展上限,确定当前帧中当前通道的第二判断标识;根据第一判断标识和第二判断标识,结合第二数量,确定当前帧中当前通道的第一数量。

在一种可能的实施方式中,频率获取模块,具体用于:根据当前帧的编码速率和通道数量得到当前帧中的每个通道的平均编码速率;根据平均编码速率和第一阈值,得到当前通道的第一判断标识。

在一种可能的实施方式中,频率获取模块,具体可以用于:根据当前帧的编码速率和通道数量确定当前通道的实际编码速率;根据当前通道的实际编码速率和第二阈值,得到当前通道的第一判断标识。

在一种可能的实施方式中,频率获取模块,具体可以用于:当频带扩展上限包括最高频率时,比较频带扩展上限包括的最高频率与音频信号的最高频率是否相同,确定当前帧中当前通道的第二判断标识;或者,当频带扩展上限包括最高频带序号时,比较频带扩展上限包括的最高频带序号与音频信号的最高频带序号是否相同,确定当前帧中当前通道的第二判断标识,音频信号的最高频带序号由采样频率确定。

在一种可能的实施方式中,频率获取模块,具体可以用于:

若第一判断标识和第二判断标识都符合预设条件,则在频带扩展对应的第二数量基础上增加一个或多个频率区域,作为当前通道的第一数量;或

若第一判断标识或第二判断标识不满足预设条件,则将频带扩展对应的第二数量作为当前通道的第一数量。

在一种可能的实施方式中,第一频率范围的下限与配置信息指示的进行频带扩展的第二频率范围的下限相同;当频率区域信息包括第一数量小于或等于频带扩展对应的第二数量时,第一频率范围内频率区域的分布与第二频率范围内的频率区域的分布;当第一数量大于第二数量时,第一频率范围的频率上限大于第二频率范围的频率上限,第一频率范围与第二频率范围重合部分的频率区域的分布与第二频率范围内的频率区域的分布相同,第一频率范围与第二频率范围的不重合部分内的频率区域的分布为根据预设方式确定的。

在一种可能的实施方式中,第一频率范围与第二频率范围的不重合部分内的频率区域的宽度小于预设值,且第一频率范围与第二频率范围的不重合部分内的频率区域的频率上限小于或等于音频信号的最高频率。

在一种可能的实施方式中,高频带信号对应的频率范围包括至少一个频率区域,其中,一个频率区域包括至少一个频带。

在一种可能的实施方式中,第一频率范围内的频率区域的数量为预设数量。

在一种可能的实施方式中,音调成分信息包括音调成分的位置数量参数、以及音调成分的幅度参数或能量参数。

在一种可能的实施方式中,音调成分信息还包括高频带信号的噪声基底参数。

第四方面,本申请提供一种解码设备,包括:

获取模块,用于获取载荷码流;

解复用模块,用于对载荷码流进行码流解复用,以得到音频信号的当前帧的频带扩展的参数和音调成分的信息;

频带扩展解码模块,用于根据频带扩展的参数得到当前帧的高频带信号;

重建模块,用于根据音调成分的信息和频率区域信息进行重建,得到重建音调信号,频率区域信息用于指示当前帧中需要进行音调成分重建的第一频率范围;

信号解码模块,用于根据高频带信号和重建音调信号,得到当前帧的解码信号。

第四方面及第四方面任一种可能的实施方式产生的有益效果可参照第二方面及第二方面任一种可能实施方式的描述。

在一种可能的实施方式中,获取模块,还可以用于:获取配置码流;根据配置码流获取频率区域信息。

在一种可能的实施方式中,频率区域信息包括以下至少一种:第一数量、标识信息、关系信息或者频率区域变化数量,第一数量为第一频率范围内的频率区域的数量,标识信息用于指示第一频率范围与频带扩展对应的第二频率范围是否相同,关系信息用于在第一频率范围与第二频率范围不相同时,指示第一频率范围与第二频率范围之间的大小关系,频率区域变化数量为在第一频率范围与第二频率范围不相同时,第一频率范围与第二频率范围之间存在差异的频率区域的数量。

在一种可能的实施方式中,重建模块,具体可以用于:根据频率区域信息,确定需要进行音调成分重建的频率区域的数量为第一数量;根据第一数量,确定第一频率范围进行音调成分重建的各个频率区域;在第一频率范围内,根据音调成分的信息对音调成分进行重建,得到重建音调信号。

在一种可能的实施方式中,第一频率范围的下限与配置信息指示的进行频带扩展的第二频率范围的下限相同,获取模块,具体可以用于:若第一数量小于或等于第二数量,则按照第二频率范围内的频率区域的分布确定第一频率范围与第二频率范围的重合部分内的频率区域,第二数量为第二频率范围内的频率区域的数量;若第一数量大于第二数量,则确定第一频率范围的频率上限大于第二频率范围的频率上限,根据第二频率范围内的频率区域的分布确定第一频率范围与第二频率范围重合部分内的频率区域的分布,以及根据预设方式确定第一频率范围与第二频率范围的不重合部分内的频率区域的分布,从而得到第一频率范围内的各个频率区域的分布。

在一种可能的实施方式中,第一频率范围与第二频率范围的不重合部分内划分的频率区域满足以下条件:第一频率范围与第二频率范围的不重合部分内划分的频率区域的宽度小于预设值,且第一频率范围与第二频率范围的不重合部分内划分的频率区域的频率上限小于或等于音频信号的最高频率。

在一种可能的实施方式中,音调成分信息包括音调成分的位置数量参数、以及音调成分的幅度参数或能量参数。

在一种可能的实施方式中,音调成分信息还包括高频带信号的噪声基底参数。

第五方面,本申请提供一种编码设备,包括:处理器和存储器,其中,处理器和存储器通过线路互联,处理器调用存储器中的程序代码用于执行上述第一方面任一项所示的音频信号编码方法中与处理相关的功能。

第六方面,本申请提供一种解码设备,包括:处理器和存储器,其中,处理器和存储器通过线路互联,处理器调用存储器中的程序代码执行上述第二方面任二项所示的解码方法中与处理相关的功能。

第七方面,本申请提供一种通信系统,包括:编码设备和解码设备,编码设备用于执行上述第一方面任一项所示的音频信号编码方法,解码设备用于执行上述第二方面任二项所示的解码方法。

第八方面,本申请实施例提供了一种数字处理芯片,芯片包括处理器和存储器,存储器和处理器通过线路互联,存储器中存储有指令,处理器用于执行如上述第一方面或第一方面任一可选实施方式,或者,第二方面或第二方面任一可选实施方式中与处理相关的功能。

第九方面,本申请实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任一可选实施方式,或者,第二方面或第二方面任一可选实施方式中的方法。

第十方面,本申请实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面或第一方面任一可选实施方式,或者,第二方面或第二方面任一可选实施方式中的方法。

第十一方面,本申请提供一种网络设备,该网络设备可以应用于编码设备或解码设备等设备中,网络设备与存储器耦合,用于读取并执行所述存储器中存储的指令,使得所述网络设备实现本申请第一方面至第二方面中任一方面的任一实施方式提供的方法的步骤。在一种可能的设计中,该端口检测装置为芯片或片上系统。

附图说明

图1为本申请提供的一种通信系统的架构示意图;

图2为本申请提供的另一种通信系统的结构示意图;

图3为本申请提供的一种编解码设备的结构示意图;

图4为本申请提供的另一种编解码设备的结构示意图;

图5为本申请提供的一种音频信号编码方法的流程示意图;

图6A为本申请实施例提供的一种频率区域划分方式示意图;

图6B为本申请实施例提供的另一种频率区域划分方式示意图;

图6C为本申请实施例提供的另一种频率区域划分方式示意图;

图7为本申请提供的一种解码方法的流程示意图;

图8为本申请提供的一种编码设备的结构示意图;

图9为本申请提供的一种解码设备的结构示意图;

图10为本申请提供的另一种编码设备的结构示意图;

图11为本申请提供的另一种解码设备的结构示意图。

具体实施方式

本申请提供一种音频信号编码方法、解码方法、编码设备以及解码设备,用于实现更高质量的音频编解码,提高用户体验。

首先,本申请提供的音频信号编码方法和解码方法可以应用于各种存在数据传输的系统。

示例性地,参阅图1,本申请提供的一种通信系统的架构示意图。

其中,该通信系统中可以包括多个设备,如终端或服务器等,该多个设备之间可以通过网络连接。

该网络可以是有线的通信网络,也可以是无线的通信网络,例如:第五代移动通信技术(5th-Generation,5G)系统,长期演进(long term evolution,LTE)系统、全球移动通信系统(global system for mobile communication,GSM)或码分多址(code divisionmultiple access,CDMA)网络、宽带码分多址(wideband code division multipleaccess,WCDMA)网络等,还可以无线保真(wireless fidelity,WiFi)、广域网等其他通信网络或通信系统。

该终端设备的数量可以是一个,也可以是多个,如图1中所示的终端1、终端2或终端3等。具体地,该通信系统中的终端可以包括头戴显示设备(Head Mount Display,HMD)、该头戴显示设备可以是VR盒子与终端的组合,VR一体机,个人计算机(personal computer,PC)VR,增强现实(augmented reality,AR)设备,混合现实(mixed reality,MR)设备等,该终端设备还可以包括蜂窝电话(cellular phone)、智能电话(smart phone)、个人数字助理(personal digital assistant,PDA)、平板型电脑、膝上型电脑(laptop computer)、个人电脑(personal computer,PC),或部署在用户侧的计算设备等。

服务器的数量可以是一个也可以是多个,当通信系统中存在多个服务器时,该多个服务器可以是分布式服务器,也可以是集中式服务器,具体可以根据实际应用场景进行调整,本申请对此不作限定。

具体地,前述终端或者服务器等,即可以作为编码设备,也可以作为解码设备。可以理解为,前述的终端或者服务器,即可以执行本申请提供的音频信号编码方法,也可以执行本申请体用的解码方法。当然,编码设备和解码设备也可以是互相独立的设备,例如可以是其中一个终端作为编码设备,另一个终端作为解码设备。

更具体地,参阅图2,下面以两个终端为例,对本申请提供的通信系统进行更详细的说明。

其中,终端1和终端2都可以包括音频采集模块、多声道编码器、信道编码器、信道解码器、多声道解码器以及音频回放模块。

下面以终端1执行音频信号编码方法,终端2执行解码方法为例进行简要的示例性说明,具体执行的步骤可以参阅以下图4或图5中的描述。

其中,终端1的音频采集模块可以获取到音频信号,该音频采集模块可以包括传感器、麦克风、摄像机、录音器等设备,或者该音频采集模块也可以直接接收到其他设备发送的音频信号。

若该音频信号为多声道信号,则通过多声道编码器对该音频信号进行编码,然后将多声道编码器编码得到的信号通过信道编码器进行编码,得到编码码流。

然后将编码码流传输至通信网络中的网络设备1,由网络设备1通过数字信道传输至网络设备2,然后由网络设备2将该编码码流传输至终端2。其中,网络设备1或者网络设备2可以是通信网络中的转发设备,如路由器或交换机等设备。

终端2接收到编码码流之后,通过信道解码器对编码码流进行信道解码,得到信道解码后的信号。

然后由多声道解码器对信道解码后的信号进行多声道解码,得到音频信号。音频回放模块可以回放该音频信号。其中,音频回放模块可以包括扬声器或者耳机等设备。

此外,也可以由终端2的音频采集模块采集音频信号,经由多声道编码器和信道编码器得到编码码流,并将该编码码流经通信网络发送至终端1。随后经由终端1的信道解码器和多声道解码器进行解码,得到音频信号,并通过终端1的音频回放模块播放音频。

在另一种场景中,通信系统中的编码设备可以是不具有音频采集和音频回放功能的转发设备。示例性地,如图3所示,本申请提供的一种编码设备的结构示意图。其中,该编码设备可以包括信道解码器301、音频解码器302、多声道编码器303和信道编码器304。当接收到编码码流时,可以通过信道解码器301进行信道解码,得到信道解码信号。然后由音频解码器302对信道解码信号进行音频解码,得到音频信号。随后经由多声道编码器303对音频信号进行多声道编码,得到多声道编码信号,最后由信道编码器304对多声道编码信号进行信道编码,得到更新后的编码码流,并将该更新后的编码码流发送至其他设备,完成对编码码流的转发。

在不同的场景中,所使用的编码器和解码器的类型也可能不相同。示例性地,如图4所示,在接收到编码码流并通过信道解码器401解码得到信道解码信号之后,通过多声道解码器402对该信道解码信号进行多声道解码,恢复出音频信号。然后通过音频编码器403对该音频信号进行编码,并通过信道编码器404对音频编码器403编码后的数据进行信道编码,得到更新后的编码码流。

此外,前述对多声道音频信号的场景进行了介绍,前述的多声道也可以替换为立体声信号、双通道信号等等,以立体声信号为例,前述的多声道音频信号可以替换为立体声信号,多声道编码器可以替换为立体声编码器,或者多声道解码器也可以替换为立体声解码器等。

下面以一个具体的场景为例,对音频信号的编码过程进行介绍。三维音频由于能够带给用户更好的浸入式体验,成为音频服务发展的新趋势,三维音频可以理解为包括了多声道的音频。实现三维音频服务,需要进行压缩编码的原始音频信号格式可以分为:基于声道的音频信号格式,基于对象的音频信号格式,基于场景的音频信号格式,以及任意三种音频信号格式的混合信号格式。对于前述各个格式的音频信号,音频编码器需要进行压缩编码的音频信号包括了多路信号,也可以理解为多个通道。通常情况下,音频编码器利用通道间的相关性将多路信号进行下混,得到下混信号和多通道编码参数。通常情况下,下混信号所包括的通道数远小于输入的音频信号的通道数量,例如,可以将多通道信号下混为立体声信号。然后,利用对下混信号进行编码。还可以选择将立体声信号进一步下混为单声道信号和立体声编码参数,对瞎混后的单声道信号进行编码。编码下混信号和多通道编码参数所用的比特数远小于独立编码多通道输入信号,因此可以降低编码器的工作量,以及编码后得到的编码码流的数据量,提高传输效率。

此外,为了降低编码比特率,往往进一步利用不同频带信号间的相关性进行编码。编码设备对低频带信号和低频带信号与高频带之间的相关性数据进行编码,以便用较少的比特数对高频带信号进行编码,从而降低整个编码器的编码比特率。例如,在第三代合作伙伴项目(3rd generation partnership project,3GPP)中的增强语音服务(Enhance VoiceServices,EVS)编解码器,或者动态图像专家组(moving picture experts group,MPEG)编解码器等在编码过程中,利用了不同频带信号间的相关性,采用频带扩展技术或者频谱复制技术,对高频带信号进行编码。但在实际的音频信号中,高频带的频谱中往往存在一些与低频带的频谱不相似的音调成分,若未对该不相似的音调成分进行编码以及重建,则可能导致对音视频的编解码质量不高。

因此,本申请提供一种音频信号编码方法和解码方法,用于提高音频信号的编解码质量,即使在带的频谱中存在与低频带的频谱不相似的音调成分的场景中,也可以得到高质量的编码码流,从而使解码端可以解码得到高质量的音频信号,提高用户体验。

下面分别对本申请提供的音频信号编码方法和解码方法进行详细说明。

首先,对本申请提供的音频信号编码方法进行介绍。参阅图5,本申请提供的一种音频信号编码方法的流程示意图,如下所述。

501、获取音频信号的当前帧。

其中,当前帧可以是音频信号中的任意一个帧,当前帧中可以包括高频带信号和低频带信号,高频带信号的频率高于低频带信号的频率。其中,高频带信号和低频带信号的划分可以通过频带阈值确定,高于该频带阈值的信号为高频带信号,低于该频带阈值的信号为低频带信号,对于频带阈值的确定可以根据传输带宽以及编码器或者解码器的处理能力来确定,本申请对此不作限定。

其中,高频带信号和低频带信号是相对而言的,例如低于某个频率(即频带阈值)的信号为低频带信号,但是高于该频率的信号为高频带信号(该频率对应的信号既可以划到低频带信号,也可以划到高频带信号)。该频率根据当前帧的带宽不同会有不同。例如,在当前帧为0-8khz的宽带信号时,该频率可以为4khz;在当前帧为0-16khz的超宽带信号时,该频率可以为8khz。

需要说明的是,本申请实施例中的音频信号中可以包括多个帧,例如当前帧可以特指音频信号中的某一个帧,本申请实施例中以音频信号的当前帧的编解码进行示例说明,音频信号中当前帧的前一帧或者后一帧都可以根据该当前帧音频信号的编解码方式进行相应的编解码,对于音频信号中当前帧的前一帧或者后一帧的编解码过程不再逐一说明。另外,本申请实施例中的音频信号可以是单声道音频信号,或者,也可以为立体声信号(也可以为多声道信号)。其中,立体声信号可以是原始的立体声信号,也可以是多声道信号中包括的两路信号(左声道信号和右声道信号)组成的立体声信号,还可以是由多声道信号中包含的至少三路信号产生的两路信号组成的立体声信号,本申请实施例中对此并不限定。

还需要说明的是,本申请实施方式中,音频信号可以是多通道(multi-channel)信号,也可以是单通道信号。当音频信号为多通道信号时,可以对每个通道的信号进行编码,在本申请实施方式中,仅以其中一个通道(以下称为当前通道)的信号的编码过程为例进行示例性说明,在实际应用中,对于音频信号中的每个通道都可以执行以下步骤502-506,本申请对重复的步骤不再赘述。应理解,本申请所提及的声道也可以替换为通道,例如前述的多声道也可以替换为多通道,为便于理解,以下实施方式中称为通道。

502、根据高频带信号、低频带信号和预设的频带扩展的配置信息得到当前帧的频带扩展的参数。

其中,在对高频带信号和低频带信号进行编码的过程中,可以将高频带划分为多个频率区域。频带扩展的参数可以是以频率区域为单位确定的,也就是说各个频率区域都有自己的频带扩展的参数。

具体地,频带扩展的参数在不同的场景中可能包括了不同的参数,具体可以根据实际应用场景确定频带扩展的参数具体包括的参数。例如,在时域带宽扩展的场景中,该频带扩展的参数可以包括高频带线性预测编码(linear predictive coding,LPC)参数、高频带增益或滤波参数等。在频域带宽扩展的场景中,该频带扩展的参数还可以包括时域包络或频域包络等参数。

频带扩展的配置信息可以是预先配置的信息,具体可以根据编码器或者解码器的数据处理能力确定。在一种可能的实施方式中,频带扩展的配置信息可以包括频带扩展上限或者第二数量等,该第二数量为进行频带扩展的频率区域的数量。具体地,频带扩展对应的第二频率范围可以通过频带扩展上限或者第二数量指示的,例如,第二频率范围的频率下限通常可以是固定的,如前述步骤501中的频带阈值,可以通过频带扩展上限指示第二频率范围的频率上限,从而可以根据确定的频率下限和频率上限来确定第二频率范围。又例如,若配置信息中包括第二数量,通常第二频率范围的频率下限通常可以是固定的,如前述步骤501中的频带阈值,则可以通过预设的表格,查询到第二频率对应的频率区域的边界,从而确定第二频率范围。

具体地,频带扩展的配置信息中包括的频带扩展上限可以包括但不限于以下一个或多个:第二频率范围内的最高频率的值、最高频点序号、最高频带序号或最高频率区域序号。其中,第二频率范围内的最高频点序号为第二频率范围内频率最高的频点的序号,最高频带序号为第二频率范围内频率最高的频带的序号,最高频率区域序号为第二频率范围内频率最高的频率区域的序号。其中,前述的最高频点序号、最高频带序号和最高频率区域序号,可以是随着频率的值的增加而增加的,例如,频率较低频点的序号小于频率较高的频点的序号,频率较低的频带的序号小于频率较高的频带的序号,频率较低的频率区域的序号小于频率较高的频率区域的序号。需要说明的是,对于频点、频带或者频率区域的编号,可以是根据预设的顺序进行编号,也可以是为每个频点、频带或者频率区域分配固定的编号,具体可以根据实际应用场景进行调整,本申请对此不作限定。

此外,根据高频带信号、低频带信号和频带扩展的配置信息,除了可以得到当前帧的频带扩展的参数之外,还可以获取到高频带信号或者低频带信号的编码参数,例如,可以获取高频带信号或者低频带信号的时域噪声整形参数、频域噪声整形参数或频谱量化参数等,其中,时域噪声整形参数和频域噪声整形参数用于对待编码的频谱系数进行预处理,可以提高频谱系数的量化编码效率,频谱量化参数为量化后的频谱系数和对应的增益参数等。

503、获取频率区域信息

其中,频率区域信息用于指示当前帧的高频带信号中的第一频率范围。

本申请实施方式中,将需要进行音调成分检测的频率范围称为第一频率范围,将配置信息指示的频带扩展对应的频率范围称为第二频率范围,且第一频率范围的频率下限和第二频率范围的频率下限相同,以下不再赘述。

在一种可能的实施方式中,频率区域信息包括以下一种或多种:第一数量、标识信息、关系信息或者频率区域变化数量等等。

该第一数量为第一频率范围内的频率区域的数量。

需要说明的是,在本申请中,可以将频率范围划分为频率区域(tile);每个频率区域又可以按照预设的频带划分方式划分为至少一个频带,一个频带可以理解为一个尺度因子带(scale factor band,SFB)。例如,可以以1KHz为单位划分频率区域,然后在每个频率区域内,以200Hz为单位划分频带。可以理解的是,不同频率区域的对应的频率宽度可以是相同的,也可以是不同的;不同频带对应的频率宽度可以是相同的,也可以是不同的。

标识信息用于指示第一频率范围与频带扩展对应的第二频率范围是否相同。例如,当该标识信息包括0时,表示第一频率范围与第二频率范围不相同,该标识信息包括1时,表示第一频率范围与第二频率范围相同。

关系信息用于指示第一频率范围与第二频率范围之间的大小关系。例如,可以用2比特来指示第一频率范围与第二频率范围之间的大小关系,如相同、增加或者减少等关系。例如,当关系信息包括00时,表示第一频率范围与第二频率范围相等,当关系信息包括01时,表示第一频率范围大于第二频率范围;当关系信息包括10时,表示第一频率范围小于第二频率范围等。

频率区域变化数量为第一频率范围与第二频率范围之间存在差异的频率区域的数量。例如,频率区域变化数量的范围可以是[-N,N],N表示第一频率范围比第二频率范围多N个频率区域,-N表示第一频率范围比第二频率范围少N个频率区域。

通常,在实际应用场景中,频率区域信息中至少包括第一数量,可选地,频率区域信息中还包括但不限于标识信息、关系信息或者频率区域变化数量等中的一个或多个。

此外,通过频率区域信息指示第一频率范围,可以理解为:当频率区域信息中包括第一数量时,可以通过查询预设的表格,确定第一数量的频率区域中每个频率区域的边界,即每个频率区域所覆盖的频率范围,从而得到第一频率范围。其中,第一数量个的频率区域中的第一个频率区域的下边界就是进行频带扩展的第二频率范围的下边界。可以理解的是,在第一数量个频率区域在频域上是连续的时候,也可以仅根据其中的第一个频率区域的下边界以及最后一个频率区域的上边界来确定所述第一频率范围。

此外,当频率区域信息中包括标识信息时,若该标识信息指示第一频率范围和第二频率范围相同,则可以将第二频率范围作为第一频率范围。若标识信息指示第一频率范围和第二频率范围不相同,则可以通过关系信息确定第一频率范围和第二频率范围之间的大小关系,例如,第一频率范围大于第二频率范围,或者第二频率范围大于第一频率范围等。当然,若标识信息指示第一频率范围和第二频率范围相同,频率区域信息也可以包括关系信息,此时该关系信息也可以指示第一频率范围和第二频率范围相同。当根据标识信息或者关系信息确定第一频率范围和第二频率范围不相同时,可以根据关系信息确定第一频率范围和第二频率范围的大小关系,然后根据频率区域变化数量,确定第一频率范围和第二频率范围之间不同的频率范围内的频率区域的数量,然后根据预设方式,如查表、按照预设带宽规划等方式,确定第一频率范围具体的范围。例如,若第一频率范围和第二频率范围不相同,则可以根据关系频率信息确定第一频率范围和第二频率范围中哪个频率范围更大,如若第一频率范围大于第二频率范围,则可以根据第一频率范围和第二频率范围不重合的部分的频率区域的数量,查询预设的表格,或者,按照预设的带宽进行划分,从而得到第一频率范围和第二频率范围不重合的部分的频率区域的边界,从而确定出第一频率范围所覆盖的准确的频率范围。

具体地,获取频率区域信息的方式有多种,下面分别进行介绍。

方式一、根据音频信号的采样频率以及预设的频带扩展的配置信息确定频率区域信息。

其中,频率区域信息至少包括第一数量,音频信号的通道数量为至少一个,下面以该至少一个通道中的当前通道为例,对步骤503进行示例性说明。步骤503具体可以包括:根据当前帧的编码速率、音频信号的通道数量、采样频率、频带扩展上限或者第二数量中的一个或多个,确定当前通道的第一数量。

具体地,可以根据当前通道的第一判断标识确定第一数量,也可以根据第二判断标识确定第一数量,还可以根据当前通道的第一判断标识和第二判断标识确定第一数量。在此之前,可以根据当前帧的编码速率和通道数量,确定当前帧中的每个通道的第一判断标识,其中包括当前通道的第一判断标识,或者,根据采样频率和频带扩展上限,确定第二判断标识。其中,当前帧的编码速率为当前帧中的所有通道的总编码速率。

更具体地,获取到当前通道的第一判断标识的具体方式可以包括但不限于以下一种或多种:

1、根据当前帧的编码速率和通道数量得到当前帧中的每个通道的平均编码速率;对比平均编码速率和第一阈值,得到当前通道的第一判断标识。例如,可以使用当前帧的编码速率除以通道数,即可得到每个通道的平均编码速率。对比该平均编码速率和第一阈值,并根据对比结果得到当前通道的第一判断标识。例如,当平均编码速率高于24kbps(即24000比特每秒)(即第一阈值,也可以是其他值,如32kbps或128kbps等)时,当前通道的第一判断标识的值确定为1,当平均编码速率不高于24kbps时,当前通道的第一判断标识确定为0。

2、根据当前帧的编码速率和通道数量确定当前帧中的每个通道的实际编码速率;对比每个通道实际编码速率和第二阈值,得到每个通道的第一判断标识。可以理解为,可以根据当前帧的总编码速率,为每个通道分配实际编码速率。对比每个通道的实际编码速率与第二阈值,即可得到每个通道的第一判断标识。其中,确定每个通道的实际编码速率的方式可以包括多种方式,例如,可以随机为每个通道分配编码速率,也可以按照每个通道的数据大小为每个通道分配编码速率,通道的数据量越大,分配到的编码速率也就越大,或者,还可以按照固定的方式为每个通道分配编码速率等等,具体的分配方式可以按照实际应用场景进行调整。例如,当前音频信号可用的总的编码速率(即当前帧的编码速率)为256kbps,且该音频信号为具有三个通道,如通道1、通道2和通道3,则可以为该三个通道分配编码速率,如为通道1分配192kbps,为通道2分配44kbps,为通道3分配20kbps等。然后,对比每个通道实际编码速率和64kbps(即第二阈值),当当前通道的实际编码速率高于64kbps时,该当前通道的第一判断标识的值确定为1,当当前通道的实际编码速率不高于64kbps时,则当前通道的第一判断标识确定为0,得到的通道1的第一判断标识的值为1,通道2和通道3的第一判断标识的值为0。

更具体地,获取到当前通道的第二判断标识的具体方式可以包括:当频带扩展上限包括最高频率的值时,比较频带扩展上限包括的最高频率的值与音频信号的最高频率的值是否相同,确定第二判断标识,音频信号的最高频率通常是采样频率的一半,当然,采样频率也可以设定为大于最高频率的2倍;或者,当频带扩展上限包括最高频带序号时,比较频带扩展上限所包括的最高频带序号与音频信号的最高频带序号是否相同,确定第二判断标识,音频信号的最高频带序号由采样频率确定,该音频信号的最高频带序号可以是音频信号的最高频率所在的频带的序号。此外,还可以比较频带扩展上限所包括的最高频点序号和音频信号的最高频点序号是否相同,或者比较频带扩展上限所包括的最高频率区域序号和音频信号的最高频率区域序号是否相同等,来确定第二判断标识等。

此外,当频带扩展上限所包括的数据与获取到的音频信号的最高频率的数据的类型不相同,则可以将频带扩展上限所包括的数据和获取到的音频信号的最高频率的数据转换为相同的类型,之后再对相同类型的数据进行对比,得到第二判断标识。例如,当频带扩展上限中包括最高频频率的值,而获取到音频信号的最高频点序号,则可以确定音频信号的最高频点序号对应的最高频率的值,对比频带扩展上限中包括最高频率的值和确定的音频信号的对应的最高频率的值,从而得到第二判断标识。

确定第二判断标识的具体方式例如,若频带扩展上限包括的最高频率的值等于音频信号的最高频率,则第二判断标识的值可以是0,否则第二判断标识的值为1。又例如,对频带扩展上限对应的频带序号与音频信号的最高频带序号进行比较,当频带扩展上限包括的最高频带序号与音频信号的最高频带序号相等时,第二判断标识的值可以是0,否则第二判断标识的值为1。通常,频带扩展上限对应的最高频率不超过音频信号的最高频率。

进一步地,确定第一数量的具体方式可以包括:

若当前通道的第一判断标识和第二判断标识都符合预设条件,则在第二数量的基础上增加一个或者多个频率区域,作为当前通道的第一数量,增加的频率区域的具体数量可以根据实际应用场景进行调整。具体地,该预设条件可以是:满足当前通道的平均编码速率大于第一阈值,或当前通道的实际编码速率大于第二阈值其中之一,并且,满足频带扩展上限所包括的最高频带序号不等于音频信号的最高频带序号,或频带扩展上限所包括的最高频带序号不等于音频信号的最高频带序号,或频带扩展上限所包括的最高频点序号不等于音频信号的最高频点序号的其中之一。

例如,可以根据音频信号的最高频率和频带扩展上限之间的差值确定增加的频率区域的数量,将音频信号的最高频率和频带扩展上限之间的差值划分为一个或者多个频率区域,从而使第一频率范围的频率上限高于频带扩展上限对应的最高频率,从而可以检测到高频带信号中更多的音调成分的信息。具体例如,前述的预设条件可以是第一判断标识和第二判断标识都为1,若当前通道的第一判断标识和第二判断标识均为1,则在第二数量的基础上增加一个或者多个频率区域,作为当前通道的第一数量。其中,增加的所述一个或多个频率区域可以根据预先设置的划分方式对第一频率范围高于频带扩展上限的部分进行划分得到的。

若第一判断标识和第二判断标识中至少有一个不满足预设条件,则将第二数量作为第一数量。可以理解为,当音频信号的最高频率在第二频率范围内时,可以直接将第二频率范围作为第一频率范围,并对第一频率范围进行音调成分检测,也可以实现对高频带信号中的音调成分的更全面的检测。

为便于理解,下面以具体的应用场景为例对确定当前通道的第一数量的确定方式进行示例性说明。

通常,是否在第二数量的基础上增加附加频率区域(tile)得到当前通道的第一数量,可以由以下两个条件共同确定:

1、在音频信号的整体编码速率较低时,附加tile引入的比特消耗可能对编码效果产生负面影响,可能减低编码效率或者编码质量。因此,可以首先根据每个通道(channel)的编码速率选择是否需要增加一个附加tile。设编码器总速率为bitrate_tot,channel数量为n_channels,则每个channel的比特数为bitrate_ch=bitrate_tot/n_channels。或者,bitrate_ch也可以是根据bitrate_tot对每个channel分别分配得到。将bitrate_ch与预设的第一阈值比较,若超过第一阈值则设置标志flag_addTile(即第一判断标识)=1,否则设定flag_addTile=0。

2、可以比较频带扩展处理,例如智能间隙填充(IGF,Intelligent Gap Filling,)截止SFB序号和总SFB数量,判断IGF对应的频率范围是否可以覆盖音频信号的全频带,若不能覆盖音频信号的全频带,则增加一个或多个tile。

结合前述两个条件的确定是否增加tile的方式如下:

其中igfStopSfb为IGF截止SFB序号,nr_of_sfb_long为总SFB数量,flag_addTile为第一判断标志,num_tiles为IGF频带中的tile数量,num_tiles_detect为进行音调成分检测的tile数量。

在一种可能的实施方式中,第一频率范围内的频率区域的数量还可以是预设数量。具体地,该预设数量可以是由用户确定,也可以是根据经验值确定,具体可以根据实际应用场景进行调整。

可选地,当第一频率范围内的频率区域的数量为预设数量时,该预设数量可以写入配置码流中,也可以不写入配置码流中。例如,编码设备和解码设备之间可以默认频率区域的数量为第二频率范围内所所包括的频率区域的数量加N,N可以是预先设定的正整数。

此外,除了获取当前通道的第一数量之外,还可以获取当前通道的其他的信息,如标识信息、关系信息或者频率区域变化数量等。例如,可以对比第一频率范围和第二频率范围是否相同,从而得到标识信息;可以对比第一频率范围与第二频率范围之间的大小关系,从而得到关系信息;可以对比第一数量和第二数量之间的差值,从而得到频率区域变化数量等。

方式二、获取前一帧或者音频信号的第一帧所使用的频率区域信息作为当前帧的频率区域信息。

其中,频率区域信息可以是在对当前帧的前一帧进行编码时通过前述的方式一获取得到,在获取到当前帧时,即可直接读取该频率区域信息;频率区域信息也可以是在对音频信号的第一帧进行编码时通过方式一获取的,例如,音频信号中所包括的所有帧都可以使用相同的频率区域信息进行编码,从而降低编码设备的工作量,提高编码效率。

因此,本申请实施方式中,可以通过多种方式获取到频率区域信息,可以实时动态地通过方式一确定每一帧所使用的频率区域信息,使频率区域信息所指示的频率范围可以适应性地覆盖每一帧中高频带信号与低频带信号音调成分不相似的频率范围,提高编码质量;也可以多帧共用相同的频率区域信息,降低计算频率区域信息的工作量,提高编码质量以及编码效率。因此,本申请提供的音频信号编码方法可以灵活地适应更多的场景。

此外,除了确定需要进行音调成分检测的频率区域的第一数量之外,还可以根据频率区域信息确定需要进行音调成分检测的各个频率区域的边界,即第一频率区域边界,从而可以更准确地确定第一频率范围。可以理解为,在确定第一频率范围内的频率区域的数量之后,还需要确定第一频率范围内的各个频率区域的划分方式。

具体地,第一频率范围的下限与配置信息指示的进行频带扩展的第二频率范围的下限相同;当第一数量小于或等于第二数量时,第一频率范围内的频率区域的分布与配置信息中指示的第二频率范围内的频率区域的分布相同,即第一频率范围内的频率区域的划分方式与第二频率范围内的频率区域的划分方式相同。当第一数量大于第二数量时,第一频率范围的频率上限大于第二频率范围的频率上限,即第一频率范围覆盖且大于第二频率范围,第一频率范围与第二频率范围重合部分的频率区域的分布与第二频率范围内的频率区域的分布相同,即第一频率范围与第二频率范围重合部分的频率区域的划分方式与第二频率范围内的频率区域的划分方式相同,第一频率范围与第二频率范围的不重合部分内的频率区域的分布式根据预设方式确定的,即第一频率范围与第二频率范围的不重合部分内的频率区域使根据预设方式划分。

可以理解的是,通常频带扩展的频率区域的划分方式为预先配置的,即配置信息中可以包括第二频率范围内的各个频率区域的划分,当第一数量小于或者等于频带扩展对应的第二数量时,可以按照第二频率范围内的频率区域划分方式对第一频率范围进行划分,从而得到第一频率范围内的各个频率区域。例如,若第二频率范围内的频率区域以1KHz为单位进行划分,则也可以以1KHz为单位对第一频率范围进行划分,得到第一频率范围内的一个或多个频率区域。当第一数量大于频带扩展对应的第二数量时,可以确定第一频率范围的频率上限大于第二频率范围的上限,第一频率范围可以完全覆盖并大于第二频率范围,第一频率范围中与第二频率范围重合的部分可以按照第二频率范围内的频率区域划分方式进行划分,第一频率范围中与第二频率范围不重合的部分,即第一数量与第二数量的差值对应的频率区域,可以按照预设的方式进行划分,从而准确地确定出需要进行音调成分检测的第一频率范围所包括的各个频率区域的边界。该预设方式可以包括按照预设的宽度、频率区域的频率上限等。

示例性地,为便于理解,第一数量小于或者等于第二数量的场景可以参阅图6A,其中,第一频率范围内的频率区域的划分方式与第二频率范围内的频率区域划分方式相同。第一数量大于第二数量的场景可以参阅图6B,其中,第一频率范围中与第二频率范围重合的部分的频率区域划分方式与第二频率范围内的频率区域划分方式相同,而对于第一频率范围相对于第二频率范围多出的一个或多个频率区域,即第一数量和第二数量之间的差值对应的频率区域的划分,则可以按照预设方式进行划分,即对于第一频率范围和第二频率范围不重合部分,其频率区域的划分方式可以与重合部分的频域划分方式相同或者不相同。例如,可以将不重合的部分划分为一个或者多个频率区域,当然,也可以将不重合的部分划分至重合部分的最后一个频率区域中,如图6C所示。

其中,若将不重合的部分划分为一个或者多个频率区域,其划分的频率区域需要满足的条件可以包括:该频率区域的频率上限小于或等于音频信号的最高频率,通常是该频率区域的频率上限小于或等于音频信号的最高频率,且频率区域的宽度小于或等于预设值。

可以理解的是,前述的频率区域信息中所包括的频率区域变化数量,即为第一频率范围和第二频率范围不重合部分所包括的频率区域的数量。

在一种具体的场景中,可以对频率区域中的频带进行编号,则不重合部分内的频率区域的频率上限对应的频带序号小于或等于音频信号的最高频率对应的频带序号,且不重合部分内的频率区域的宽度小于或等于预设值,音频信号的最高频率对应的频带序号由采样频率和频带划分方式确定。

应理解,对于相邻的两个频率区域,频率较低的频率区域的频率上限,为频率较高的频率区域的下限。

因此,在本申请实施方式中,确定了第一频率范围内的频率区域的数量,以及各个频率区域的划分方式,从而使得后续在进行音调成分检测时,可以按照频率区域进行检测,得到更全面的音调成分检测。例如,可以以频率区域为单位进行音调成分检测,或者,以频率区域内的频带为单位进行音调成分检测等。

可以理解为,在确定第一频率范围所包括的频率区域的第一数量之后,还确定第一频率范围所包括的各个频率区域的边界。具体地,确定第一频率范围所包括的各个频率区域的边界方式可以包括:若第一数量小于或等于第二数量,则按照第二频率范围内的各个频率区域的边界确定第一频率范围所包括的各个频率区域的边界。若第一数量大于第二数量,则对于第一频率范围中与第二频率范围重合的部分,可以按照第二频率范围内的各个频率区域的边界确定第一频率范围所包括的各个频率区域的边界,对于第一频率范围中与第二频率范围不重合的部分,可以按照预设划分方式划分频率区域,并确定该频率区域的边界。

具体地,确定第一频率范围内的各个频率区域的边界的方式可以包括:若第一数量小于或等于第二数量,则将频带扩展对应的第二频率范围内各个频率区域的边界作为第一频率范围内的各个频率区域的边界;若第一数量大于第二数量,则将第二频率范围内各个频率区域的边界,作为第一频率范围内的至少一个低频区域的边界,并根据预设方式确定至少一个高频区域的边界,低频区域为第一频率范围中,频率上限低于频带扩展上限的频率区域,高频区域为第一频率范围中,频率下限高于或等于频带扩展上限的频率区域。

其中,以至少一个高频区域中的第一频率区域为例进行示例性说明,根据预设方式确定至少一个高频区域的边界具体可以包括:将与第一频率区域相邻,且频率低于第一频率区域的频率区域的频率上限作为第一频率区域的频率下限,根据预设方式确定第一频率区域的频率上限,第一频率区域包括于至少一个高频区域中;其中,第一频率区域的频率上限小于或等于音频信号的最高频率,且第一频率区域的宽度小于或等于预设值;或者,第一频率区域的频率上限对应的频带序号小于或等于音频信号的最高频率对应的频带序号,且第一频率区域的宽度小于或等于预设值,音频信号的最高频率对应的频带序号由采样频率和预设的频带划分方式确定。

下面以具体的应用场景为例对确定第一频率范围内的各个频率区域的方式进行示例性说明。

通常,在确定了需要进行音调成分检测的tile数量之后,还需要先根据进行音调成分检测的tile数量确定音调成分检测的tile边界。tile边界可以是边界的SFB序号,也可以是边界的频率,也可以两者均包括。

为提高音调成分检测和编码效率,新增tile无需覆盖从IGF截止频率到Fs/2的整个剩余高频带,因此可以限定新增tile的最大宽度为128个频点,即频率区域的宽度小于或等于预设值。其中,Fs为采样频率。

示例性地,新增tile的宽度的确定方式、以及tile分带表和tile-sfb对应表的更新方式如下:

其中,igfStopSfb为IGF的截止SFB序号,sfbIdx为SFB序号,tileWidth_new为新增tile的宽度,nr_of_sfb_long为总SFB数量,sfb_offset为SFB边界,第i个SFB的下限是sfb_offset[i],上限是sfb_offset[i+1],tile_sfb_wrap代表的是tile和sfb的对应关系,第i个tile的起始SFB序号是tile_sfb_wrap[i],终止SFB序号是tile_sfb_wrap[i+1]-1。

因此,本申请实施方式中,可以确定第一频率范围内的各个频率区域的边界,从而可以更准确地进行音调成分检测。

504、在第一频率范围进行音调检测以获取高频带信号的音调成分的信息。

其中,在确定了频率区域信息所指示第一频率范围之后,对该第一频率范围进行音调成分检测,得到高频带信号的音调成分信息。

具体地,该音调成分信息可以包括音调成分的位置数量参数、以及所述音调成分的幅度参数或能量参数。或者,音调成分的信息还包括高频带信号的噪声基底参数。其中,位置数量参数表示由同一个参数表示音调成分的位置和音调成分的数量。在另一种实施方式中,音调成分信息可以包括音调成分的位置参数、音调成分的数量参数以及所述音调成分的幅度参数或能量参数;在这种情况下,音调成分的位置和数量采用不同的参数表示。

更具体地,频率区域信息中所指示的第一频率范围可以包括一个或者多个频率区域(tile),一个频率区域可以包括一个或者多个频带,一个频带可以包括一个或多个子带。步骤504具体可以包括:根据高频带信号中第一数量的频率区域中的当前频率区域的高频带信号,确定当前频率区域的音调成分的位置数量参数和当前频率区域的音调成分的幅度参数或能量参数等。

除了以频率区域为单位进行音调成分检测之外,还可以以频带为单位,或者以子带为单位进行音调成分的检测,此处不再赘述。

在确定当前频率区域的音调成分的信息之前,可以确定当前区域中是否包括音调成分,在当前频率区域内包括音调成分时,才根据当前频率区域的高频带信号,确定当前频率区域的音调成分的位置数量参数和当前频率区域的音调成分的幅度参数或能量参数。从而仅获取具有音调成分的频率区域的参数,从而提高编码效率。

相应地,当前帧的音调成分的信息还包括音调成分指示信息,音调成分指示信息用于指示当前频率区域内是否包括音调成分。使得音频解码器可以根据该指示信息进行解码,提高解码效率。

其中,在一个实施方式中,根据当前频率区域的高频带信号,确定当前频率区域的音调成分的信息,可以包括:根据至少一个频率区域中的当前频率区域的高频带信号在当前频率区域内进行峰值搜索,以获得当前区域的峰值数量信息、峰值位置信息以及峰值幅度信息中的至少一种;根据当前频率区域的峰值数量信息、峰值位置信息以及峰值幅度信息中的至少一种,确定当前频率区域的音调成分的位置数量参数和当前频率区域的音调成分的幅度参数或能量参数。

其中,进行峰值搜索的高频带信号可以是频域信号,也可以是时域信号。

具体地,在一个实施方式中,峰值搜索具体可以根据当前频率区域的功率谱、能量谱或幅度谱中的至少一种进行。

其中,在一个实施方式中,根据当前频率区域的峰值数量信息、峰值位置信息以及峰值幅度信息中的至少一种,确定当前频率区域的音调成分的位置数量参数和当前频率区域的音调成分的幅度参数或能量参数,可以包括:根据当前频率区域的峰值数量信息、峰值位置信息以及峰值幅度信息中的至少一种,确定当前频率区域的音调成分的位置信息,数量信息以及幅度信息;根据当前频率区域的音调成分的位置信息,数量信息以及幅度信息确定当前频率区域的音调成分的位置数量参数和当前频率区域的音调成分的幅度参数或能量参数。

505、对频带扩展的参数和音调成分的信息进行码流复用,以得到载荷码流。

其中,在得到频带扩展的参数和高频带信号的音调成分的信息之后,可以对频带扩展的参数和音调成分的信息进行码流复用,以得到载荷码流。

具体地,在进行码流复用时,除了对频带扩展的参数和音调成分的信息进行码流复用之外,还可以结合低频带信号或者高频带信号的其他信息进行码流复用,如结合低频带的编码参数、时域噪声整形参数、频域噪声整形参数或频谱量化参数等进行码流复用,从而得到高质量的载荷码流。

具体地,在进行码流复用时,可以通过信号类型信息来指示某一个频率区域或者某一个频带是否存在音调成分,若不存在音调成分,则可以在码流中写入指示某一个频率区域或者频带不存在音调成分的信号类型信息,从而指示某一个频率区域或者频带不存在音调成分,提高解码效率;若存在音调成分,则需要将音调成分的信息写入码流中,同时还将指示哪些频率区域存在音调成分的信号类型信息写入码流中,以及将频带扩展的参数或者时域噪声整形参数、频域噪声整形参数或频谱量化参数等写入码流中,提高编码质量。

506、对频率区域信息进行码流复用,得到配置码流。

其中,在得到频率区域信息之后,可以对频率区域信息进行码流复用,得到配置码流。

具体地,可以将频率区域信息写入配置码流中,以使解码设备可以根据配置码流中所包括的频率区域信息对音频信号进行解码,从而可以对频率区域信息指示的频率范围的音调成分进行重建,得到高质量的解码数据。

需要说明的是,本申请实施例中的步骤506为可选步骤,可以在对音频信号的第一帧进行码流复用时,即可执行步骤506,而无需再对每一帧进行码流复用时执行本步骤506,即音频信号中的多帧可以共用相同的频率区域信息,从而降低占用的资源,提高编码效率。当然,也可以在对每一帧进行编码时,执行步骤506,本申请对此并不作限定。

可以理解的是,载荷码流中可以携带音频信号的各个帧的具体信息,配置码流中可以携带音频信号中各个帧共用的配置信息。载荷码流和配置码流可以是相互独立的码流,也可以包括于同一码流中,即载荷码流和配置码流可以是同一码流中的不同部分,具体可以根据实际应用场景进行调整,本申请对此并不作限定。

因此,本申请实施方式中,可以根据频率区域信息所指示的频率范围进行音调成分的检测,从而使检测得到的音调成分的信息可以覆盖更多的高频带信号与低频带信号之间音调成分不相似的频率范围,从而提高编码质量。

前述对本申请提供的音频编码的方法进行了详细介绍,下面对本申请提供的解码方法进行详细阐述。

参阅图7,本申请提供的一种解码方法的流程示意图,如下所述。

701、获取载荷码流。

其中,该载荷码流可以参阅前述步骤505中的相关描述,此处不再赘述。

702、对载荷码流进行码流解复用,以得到音频信号的当前帧的频带扩展的参数和音调成分的信息。

其中,在获取到载荷码流之后,对该码流进行码流解复用,以得到音频信号的当前帧的频带扩展参数和音调成分信息。

具体地,音调成分的信息可以包括音调成分的位置数量参数、以及所述音调成分的幅度参数或能量参数。其中,位置数量参数表示由同一个参数表示音调成分的位置和音调成分的数量。在另一种实施方式中,音调成分的信息包括音调成分的位置参数、音调成分的数量参数以及所述音调成分的幅度参数或能量参数;在这种情况下,音调成分的位置和数量采用不同的参数表示。

在一种可能的实施方式中,高频带信号对应的频率范围中包括至少一个频率区域,一个频率区域包括至少一个频带,一个频带包括至少一个子带;相应地,音调成分的信息包括当前帧的高频带信号的音调成分的位置数量参数包括至少一个频率区域各自的音调成分的位置数量参数,当前帧的高频信号的音调成分的幅度参数或能量参数包括至少一个频率区域各自的音调成分的幅度参数或能量参数,可以理解为,音调成分的信息可以是以频率区域为单位的,当然,也可以是以频带为单位或者以子带为单位等,具体可以根据实际应用场景进行调整。

在一种可能的实施方式中,对载荷码流进行码流解复用,以得到音频信号的当前帧的音调成分的信息包括:获取至少一个频率区域的当前频率区域或者当前频带的音调成分的位置数量参数;根据当前频率区域或者当前频带的音调成分的位置数量参数从载荷码流中解析当前频率区域或者当前频带的音调成分的幅度参数或能量参数。

此外,对载荷码流进行码流解复用,除了可以得到音频信号的当前帧的频带扩展的参数和音调成分的信息之外,还可以获取到低频带信号相关的参数,如:低频带编码参数、时域噪声整形参数、频域噪声整形参数、频谱量化参数等。

需要说明的是,本申请实施方式中,音频信号可以是多通道信号,也可以是单通道信号。当音频信号为多通道信号时,可以对每个通道的信号的载荷码流进行解复用以及信号重建等,在本申请实施方式中,仅以其中一个通道(以下称为当前通道)的信号的编码过程为例进行示例性说明,在实际应用中,对于音频信号中的每个通道都可以执行步骤702-707,本申请对重复的步骤不再赘述。

703、根据频带扩展的参数得到当前帧的高频带信号。

其中,该频带扩展的参数可以参阅前述步骤502中的相关描述,此处不再赘述。

具体地,在时域扩展的场景中,可以根据频带扩展的参数,如高频带LPC参数、高频带增益或滤波参数等进行时域扩展,得到高频带信号。又或者,在频域扩展的场景中,可以根据时域包络或频域包络等参数,进行频域扩展,得到高频带信号。

此外,还可以根据对码流解复用得到的低频带的编码参数进行解码,得到低频带信号。在根据频带扩展的参数进行频带扩展时,还可以结合低频带信号对高频带信号进行恢复,得到更准确的高频带信号。可以理解为,在对载荷码流进行解复用之后,可以得到低频带信号与高频带信号之间的相关的信息,在得到低频带信号之后,可以根据低频带信号和低频带信号与高频带之间的相关的信息,对高频带信号进行恢复,从而得到高频带信号。

704、获取配置码流。

其中,可以接收编码设备发送的配置码流,该配置码流中可以包括编码设备进行编码时的部分配置参数。该配置码流可以参阅前述步骤506中的相关描述,此处不再赘述。

705、根据配置码流获取频率区域信息。

其中,在得到配置码流之后,即可对配置码流进行解复用,得到频率区域信息。

该频率区域信息可以参阅前述步骤503中的相关描述,此处不再赘述。

需要说明的是,本申请中的步骤704-705为可选步骤,可以是在接收到音频信号的某一帧对应的码流时执行步骤704-705,即多帧可以共用频率区域信息,也可以是在接收到音频信号的每一帧对应的码流都执行步骤704-705,具体可以根据实际应用场景进行调整。

此外,编码设备也可以将频带扩展的配置信息通过配置码流发送至解码设备,也可以是编码设备和解码设备共用预设的配置信息,具体可以根据实际应用场景进行调整。

706、根据音调成分的信息和频率区域信息进行重建,得到重建音调信号。

在获取到频率区域信息之后,根据音调成分信息对频率区域信息指示的频率范围进行重建,得到重建音调信号。

本申请以下实施方式中,将需要进行音调成分重建的频率范围称为第一频率范围,将频带扩展对应的频率范围称为第二频率范围,且第一频率范围的频率下限和第二频率范围的频率下限相同,以下不再赘述。

其中,第一频率范围可以划分为一个或多个频率区域,一个频率区域可以包括一个或多个频带。根据音调成分的信息和频率区域信息进行重建,具体可以包括:根据频率区域信息,确定需要进行音调成分重建的频率区域的数量为第一数量;根据第一数量,确定第一频率范围内进行音调成分重建的各个频率区域;在第一频率范围内,根据音调成分的信息对音调成分进行重建,得到重建音调信号。

更具体地,根据第一数量,确定第一频率范围内进行音调成分重建的各个频率区域,可以包括:若第一数量小于或等于第二频率范围内的频率区域的第二数量,则根据第二频率范围内的频率区域的分布确定第一频率范围内的频率区域的分布,即按照第二频率范围内的频率区域的划分方式确定第一频率范围内的各个频率区域;若第一数量大于第二数量,则根据第二频率范围内的频率区域的分布确定第一频率范围与第二频率范围重合部分内的频率区域的分布,并根据预设方式确定第一频率范围与第二频率范围不重合部分内的频率区域的分布,从而得到第一频率范围内的各个频率区域的分布。可以理解为,若第一数量大于第二数量,可以按照第二频率范围内的频率划分方式对第一频率范围与第二频率范围重合部分进行划分,以及按照预设方式对第一频率范围与第二频率范围的不重合部分进行划分,得到需要进行音调成分重建的第一频率范围内的各个频率区域。从而可以结合第二频率范围内的第二数量,来准确地确定需要进行音调成分重建的频率范围内的频率区域的数量。

可选地,对于第一频率范围中与第二频率范围不重合的部分内的频率区域可以满足以下条件:该频率区域的频率上限小于或等于音频信号的最高频率,通常是该频率区域的频率上限小于或等于采样频率的一半,频率区域的宽度小于或等于预设值。

其中,应理解,可以通过配置码流获取到频带扩展的配置信息,或者,也可以从本地获取频带扩展的配置信息,通过该配置信息确定进行频带扩展的第二频率范围,以及该第二频率范围内的频率区域的分布或划分方式等,从而根据该配置信息指示的第二频率范围内的频率区域的分布确定第一频率范围内的频率区域的分布。

在进行音调成分重建时,可以以频率区域为单位进行重建,也可以以频带为单位进行重建。参阅前述步骤503中的相关描述,需要进行音调成分重建的tile的数量可以是num_tiles_detect。

下面以频率区域为单位进行音调成分的重建为例进行示例性说明。重建后得到的重建音调信号可以是时域信号,也可以是频域信号。

具体地,音调成分的信息中可以包括音调成分的位置参数、数量参数、幅度参数等,音调成分的数量参数表证了音调成分的数量。一个位置上的音调成分的重建方法,具体的可以是:

(1)计算音调成分的位置。

具体地可以是:根据音调成分的位置参数计算音调成分位置。

tone_pos=tile[p]+(sfb+0.5)*tone_res[p]

其中,tile[p]为第p个频率区域的起始频点,sfb为频率区域内存在音调成分的子带序号,tone_res[p]为第p个频率区域的频域分辨率(即第p个频率区域中的子带宽度信息)。频率区域内存在音调成分的子带序号即为音调成分的位置参数。0.5表示存在音调成份的子带中音调成分的位置位于子带的中心。当然重建的音调成分也可以位于子带的其他位置。

(2)计算音调成分的幅度。

具体地可以是:根据音调成分的幅度参数计算音调成分的幅度。

具体地,可以是:

tone_val=pow(2.0,0.25*tone_val_q[p][tone_idx]–4.0)

其中,tone_val_q[p][tone_idx]表示第p个频率区域内的第tone_idx个位置参数对应的幅度参数,tone_val表示第p个频率区域内第tone_idx个位置参数对应的频点的幅度值。

tone_idx的取值范围属于[0,tone_cnt[p]-1],tone_cnt[p]为第p个频率区域中音调成分的数量。

(3)根据音调成分的位置和音调成分的幅度进行重建,得到重建音频信号。

音调成分的位置tone_pos对应的频域信号,满足:

pSpectralData[tone_pos]=tone_val

其中,pSpectralData[tone_pos]表示音调成分的位置tone_pos对应的频域信号,tone_val表示第p个频率区域内第tone_idx个位置参数对应的频点的幅度值。tone_pos表示第p个频率区域内第tone_idx个位置参数对应的音调成分的位置。

707、根据高频带信号和重建音调信号,得到当前帧的解码信号。

其中,除了根据高频带信号和重建音调信号得到当前帧的解码信号之外,还可以结合低频带信号,得到更完整的当前帧的解码信号。

具体地,在得到重建音调信号之后,结合高频带信号进行音调成分恢复,从而得到当前帧中的高频带部分的具体细节以及音调成分,并结合低频带信号对当前帧进行恢复,从而得到包含了完整的音调成分的当前帧。

因此,本申请实施方式中,解码设备在对音调成分进行恢复时,可以结合编码设备提供的频率区域信息,对第一频率范围内的音调成分进行恢复,从而使得到的当前帧包括了更完整的音调成分,即使在高频带的频谱中往往存在与低频带的频谱不相似的音调成分的场景中,也可以使解码得到的当前帧具有更丰富的音调成分,提高解码质量,从而提高用户体验。

前述对本申请提供的音频信号编码方法和解码方法进行了详细介绍,下面基于前述提供的方法,对本申请提供的装置进行详细介绍。

首先,本申请提供一种编码设备,用于执行上述图5所示的音频信号编码方法。请参阅图8,本申请提供的一种编码设备的结构示意图,如下所述。

该编码设备可以包括:

音频获取模块801,用于获取音频信号的当前帧,当前帧包括高频带信号和低频带信号;

参数获取模块802,用于根据高频带信号、低频带信号和预设的频带扩展的配置信息得到当前帧的频带扩展的参数;

频率获取模块803,用于获取频率区域信息,频率区域信息用于指示高频带信号中需要进行音调成分检测的第一频率范围;

音调成分编码模块804,用于在第一频率范围进行音调成分检测以获取高频带信号的音调成分的信息;

码流复用模块805,用于对频带扩展的参数和音调成分的信息进行码流复用,以得到载荷码流。

在一种可能的实施方式中,编码设备还可以包括:

码流复用模块805,还用于对频率区域信息进行码流复用,得到配置码流。

在一种可能的实施方式中,频率获取模块803,具体用于根据音频信号的采样频率以及频带扩展的配置信息确定频率区域信息。

在一种可能的实施方式中,频率区域信息包括以下至少一种:第一数量、标识信息、关系信息或者频率区域变化数量,第一数量为第一频率范围内的频率区域的数量,标识信息用于指示第一频率范围与频带扩展对应的第二频率范围是否相同,关系信息用于在第一频率范围与第二频率范围不相同时,指示第一频率范围与第二频率范围之间的大小关系,频率区域变化数量为在第一频率范围与第二频率范围不相同时,第一频率范围与第二频率范围之间存在差异的频率区域的数量。

在一种可能的实施方式中,频率区域信息至少包括第一数量,频带扩展的配置信息包括频带扩展上限和/或第二数量,第二数量为第二频率范围内的频率区域的数量;

频率获取模块803,具体用于根据当前帧的编码速率、音频信号的通道数量、采样频率、频带扩展上限或者第二数量中的一个或多个,确定第一数量。

在一种可能的实施方式中,频带扩展上限包括以下一个或多个:第二频率范围内的最高频率、最高频点序号、最高频带序号或最高频率区域序号。

在一种可能的实施方式中,音频信号的通道数量为至少一个;

频率获取模块803,具体用于:

根据当前帧的编码速率和通道数量,确定当前帧中当前通道的第一判断标识,当前帧的编码速率是当前帧的编码速率;根据第一判断标识,结合第二数量,确定当前通道的第一数量;

或者,

根据采样频率和频带扩展上限,确定当前帧中当前通道的第二判断标识;根据第二判断标识,结合第二数量,确定当前通道的第一数量;

或者,

根据当前帧的编码速率和通道数量,确定当前帧中当前通道的第一判断标识,以及根据采样频率和频带扩展上限,确定当前帧中当前通道的第二判断标识;根据第一判断标识和第二判断标识,结合第二数量,确定当前帧中当前通道的第一数量。

在一种可能的实施方式中,频率获取模块803,具体用于:根据当前帧的编码速率和通道数量得到当前帧中的每个通道的平均编码速率;根据平均编码速率和第一阈值,得到当前通道的第一判断标识。

在一种可能的实施方式中,频率获取模块803,具体可以用于:根据当前帧的编码速率和通道数量确定当前通道的实际编码速率;根据当前通道的实际编码速率和第二阈值,得到当前通道的第一判断标识。

在一种可能的实施方式中,频率获取模块803,具体可以用于:当频带扩展上限包括最高频率时,比较频带扩展上限包括的最高频率与音频信号的最高频率是否相同,确定当前帧中当前通道的第二判断标识;或者,当频带扩展上限包括最高频带序号时,比较频带扩展上限包括的最高频带序号与音频信号的最高频带序号是否相同,确定当前帧中当前通道的第二判断标识,音频信号的最高频带序号由采样频率确定。

在一种可能的实施方式中,频率获取模块803,具体可以用于:

若第一判断标识和第二判断标识都符合预设条件,则在频带扩展对应的第二数量基础上增加一个或多个频率区域,作为当前通道的第一数量;或

若第一判断标识或第二判断标识不满足预设条件,则将频带扩展对应的第二数量作为当前通道的第一数量。

在一种可能的实施方式中,第一频率范围的下限与配置信息指示的进行频带扩展的第二频率范围的下限相同;当频率区域信息包括第一数量小于或等于频带扩展对应的第二数量时,第一频率范围内频率区域的分布与第二频率范围内的频率区域的分布相同;当第一数量大于第二数量时,第一频率范围的频率上限大于第二频率范围的频率上限,第一频率范围与第二频率范围重合部分的频率区域的分布与第二频率范围内的频率区域的分布相同,第一频率范围与第二频率范围的不重合部分内的频率区域的分布是按照预设方式确定的。

在一种可能的实施方式中,第一频率范围与第二频率范围的不重合部分内的频率区域满足以下条件:第一频率范围与第二频率范围的不重合部分内的频率区域的宽度小于预设值,且第一频率范围与第二频率范围的不重合部分内的频率区域的频率上限小于或等于音频信号的最高频率。

在一种可能的实施方式中,高频带信号对应的频率范围包括至少一个频率区域,其中,一个频率区域包括至少一个频带。

在一种可能的实施方式中,第一频率范围内的频率区域的数量为预设数量。

在一种可能的实施方式中,音调成分信息包括音调成分的位置数量参数、以及音调成分的幅度参数或能量参数。

在一种可能的实施方式中,音调成分信息还包括高频带信号的噪声基底参数。

其次,本申请提供一种解码设备,用于执行上述图7所示的解码方法。参阅图9,本申请提供的一种解码设备的结构示意图,如下所述。

该解码设备可以包括:

获取模块901,用于获取载荷码流;

解复用模块902,用于对载荷码流进行码流解复用,以得到音频信号的当前帧的频带扩展的参数和音调成分的信息;

频带扩展解码模块903,用于根据频带扩展的参数得到当前帧的高频带信号;

重建模块904,用于根据音调成分的信息和频率区域信息进行重建,得到重建音调信号,频率区域信息用于指示当前帧中需要进行音调成分重建的第一频率范围;

信号解码模块905,用于根据高频带信号和重建音调信号,得到当前帧的解码信号。

在一种可能的实施方式中,获取模块901,还可以用于:获取配置码流;根据配置码流获取频率区域信息。

在一种可能的实施方式中,频率区域信息包括以下至少一种:第一数量、标识信息、关系信息或者频率区域变化数量,第一数量为第一频率范围内的频率区域的数量,标识信息用于指示第一频率范围与频带扩展对应的第二频率范围是否相同,关系信息用于在第一频率范围与第二频率范围不相同时,指示第一频率范围与第二频率范围之间的大小关系,频率区域变化数量为在第一频率范围与第二频率范围不相同时,第一频率范围与第二频率范围之间存在差异的频率区域的数量。

在一种可能的实施方式中,重建模块904,具体可以用于:根据频率区域信息,确定需要进行音调成分重建的频率区域的数量为第一数量;根据第一数量,确定第一频率范围进行音调成分重建的各个频率区域;在第一频率范围内,根据音调成分的信息对音调成分进行重建,得到重建音调信号。

在一种可能的实施方式中,第一频率范围的下限与配置信息指示的进行频带扩展的第二频率范围的下限相同,获取模块,具体可以用于:若第一数量小于或等于第二数量,则根据第二频率范围内的频率区域的分布确定第一频率范围内的各个频率区域的分布,第二数量为第二频率范围内的频率区域的数量;若第一数量大于第二数量,则确定第一频率范围的频率上限大于第二频率范围的频率上限,根据第二频率范围内的频率区域的分布确定第一频率范围与第二频率范围重合部分内的频率区域的分布,以及根据预设方式确定第一频率范围与第二频率范围的不重合部分内的频率区域的分布,得到第一频率范围内的各个频率区域。

在一种可能的实施方式中,第一频率范围与第二频率范围的不重合部分内的频率区域满足以下条件:第一频率范围与第二频率范围的不重合部分内划分的频率区域的宽度小于预设值,且第一频率范围与第二频率范围的不重合部分内划分的频率区域的频率上限小于或等于音频信号的最高频率。

在一种可能的实施方式中,音调成分信息包括音调成分的位置数量参数、以及音调成分的幅度参数或能量参数。

在一种可能的实施方式中,音调成分信息还包括高频带信号的噪声基底参数。

参阅图10,本申请提供的另一种编码设备的结构示意图。该编码设备1000可以包括处理器1001、存储器1002和收发器1003。该处理器1001、存储器1002和收发器1003通过线路互联。其中,存储器1002中存储有程序指令和数据。

存储器1002中存储了前述图5对应的实施方式中,由编码设备执行的步骤对应的程序指令以及数据。

处理器1001,用于执行前述图5中任一实施例所示的由编码设备执行的步骤,例如,可以执行前述图5中的步骤501-505等。

收发器1003可以用于进行数据的接收和发送,例如,可以用于执行前述图5中的步骤506。

一种实现方式中,编码设备1000可以包括相对于图10更多或更少的部件,本申请对此仅仅是示例性说明,并不作限定。

参阅图11,本申请提供的另一种解码设备的结构示意图。该解码设备1100可以包括处理器1101、存储器1102和收发器1103。该处理器1101、存储器1102和收发器1103通过线路互联。其中,存储器1102中存储有程序指令和数据。

存储器1102中存储了前述图7对应的实施方式中,由解码设备执行的步骤对应的程序指令以及数据。

处理器1101,用于执行前述图7中任一实施例所示的由解码设备执行的步骤,例如,可以执行前述图7中的步骤702、703、705-707等。

收发器1103可以用于进行数据的接收和发送,例如,可以用于执行前述图7中的步骤701或704。

一种实现方式中,解码设备1100可以包括相对于图11更多或更少的部件,本申请对此仅仅是示例性说明,并不作限定。

本申请还提供了一种通信系统,该通信系统可以包括:编码设备以及解码设备。

该编码设备可以前述图8或图10所示的编码设备,可以用于执行前述图5中所示的任一实施方式中由编码设备执行的步骤。

该解码设备可以前述图9或图11所示的解码设备,可以用于执行前述图7中所示的任一实施方式中由解码设备执行的步骤。

本申请提供了一种网络设备,该网络设备可以应用于编码设备或者解码设备等设备中,网络设备与存储器耦合,用于读取并执行所述存储器中存储的指令,使得所述网络设备实现前述图5-7中任一实施方式中由编码设备或者解码设备行的方法的步骤。在一种可能的设计中,该网络设备为芯片或片上系统。

本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持编码设备或者解码设备实现上述方面中所涉及的功能,例如,例如发送或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。

在另一种可能的设计中,当该芯片系统为编码设备或者解码设备等内的芯片时,芯片包括:处理单元和通信单元,所述处理单元例如可以是处理器,所述通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行存储单元存储的计算机执行指令,以使该编码设备或者解码设备等内的芯片执行上述图5-7中任一项实施例中编码设备或者解码设备执行的方法的步骤。可选地,所述存储单元为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是所述OLT或ONU等内的位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。

本申请实施例还提供了一种处理器,用于与存储器耦合,用于执行上述各实施例中任一实施例中涉及编码设备或者解码设备的方法和功能。

本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现上述任一方法实施例中与编码设备或者解码设备相关的方法流程。对应的,该计算机可以为上述编码设备或者解码设备。

应理解,本申请以上实施例中的芯片系统、编码设备或者解码设备等中提及的处理器,或者本申请上述实施例提供的处理器,可以是中央处理单元(central processingunit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

还应理解,本申请中以上实施例中的芯片系统、编码设备或者解码设备等中的处理器的数量可以是一个,也可以是多个,可以根据实际应用场景调整,此处仅仅是示例性说明,并不作限定。本申请实施例中的存储器的数量可以是一个,也可以是多个,可以根据实际应用场景调整,此处仅仅是示例性说明,并不作限定。

还应理解,本申请实施例中以上实施例中的芯片系统、编码设备或者解码设备等中提及的存储器或可读存储介质等,可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。

还需要说明的是,当编码设备或者解码设备包括处理器(或处理单元)与存储器时,本申请中的处理器可以是与存储器集成在一起的,也可以是处理器与存储器通过接口连接,可以根据实际应用场景调整,并不作限定。

本申请实施例还提供了一种计算机程序或包括计算机程序的一种计算机程序产品,该计算机程序在某一计算机上执行时,将会使所述计算机实现上述任一方法实施例中编码设备或者解码设备执行的方法流程。对应的,该计算机可以为上述的编码设备或者解码设备。

在上述图5-7中各个实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。

所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

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

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

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

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

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。

本申请各实施例中提供的消息/帧/信息、模块或单元等的名称仅为示例,可以使用其他名称,只要消息/帧/信息、模块或单元等的作用相同即可。

在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本申请实施例中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,在本申请的描述中,除非另有说明,“/”表示前后关联的对象是一种“或”的关系,例如,A/B可以表示A或B;本申请中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。

取决于语境,如在此所使用的词语“如果”或“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

47页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:语音分离方法及装置、存储介质、电子装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类