CN102194458B - 频带复制方法、装置及音频解码方法、系统 - Google Patents
频带复制方法、装置及音频解码方法、系统 Download PDFInfo
- Publication number
- CN102194458B CN102194458B CN2010191850638A CN201019185063A CN102194458B CN 102194458 B CN102194458 B CN 102194458B CN 2010191850638 A CN2010191850638 A CN 2010191850638A CN 201019185063 A CN201019185063 A CN 201019185063A CN 102194458 B CN102194458 B CN 102194458B
- Authority
- CN
- China
- Prior art keywords
- frequency
- band
- frequency band
- frequency domain
- domain coefficient
- 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
Links
- 230000010076 replication Effects 0.000 title claims abstract description 172
- 238000000034 method Methods 0.000 title claims abstract description 112
- 230000003595 spectral effect Effects 0.000 title claims abstract description 30
- 230000005236 sound signal Effects 0.000 claims abstract description 30
- 238000001914 filtration Methods 0.000 claims description 290
- 238000001228 spectrum Methods 0.000 claims description 35
- 238000004364 calculation method Methods 0.000 claims description 25
- 238000009499 grossing Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 10
- 238000013139 quantization Methods 0.000 claims description 8
- 238000011084 recovery Methods 0.000 abstract 1
- 238000012937 correction Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003362 replicative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明涉及一种频带复制方法、装置及音频解码方法、系统,频带复制方法包括:A、在MDCT频域系数中搜索音频信号的某个音调所在的位置;B、根据音调所在位置确定频带复制周期和源频段,该频带复制周期为0频点到音调位置的频点的带宽,该源频段为从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段,其中所述偏移量copyband_offset大于或等于0;C、根据频带复制周期对零比特编码子带进行频带复制。本发明可以很好地解决音频编解码过程中未被编码的编码子带的音频信号的恢复问题。
Description
技术领域
本发明涉及一种音频解码技术,尤其是一种对未编码的编码子带进行频谱重构的频带复制方法、装置及音频解码方法、系统。
背景技术
音频编码技术是诸如数字音频广播、互联网的传播音乐和音频通讯等多媒体应用技术的核心,这些应用会极大地受益于音频编码器压缩性能的提高。感知音频编码器作为有损变换域编码的一种,是现代的主流音频编码器。通常由于编码比特率的限制,音频编码时部分频域系数或频率成分无法被编码,为了更好的恢复未编码子带的频谱成分,现有的音频编解码器通常使用噪声填充或频带复制的方法来重构未编码子带的频谱成分。G.722.1C采用了噪声填充的方法,HE-AAC-V1采用了频带复制技术,G.719采用了噪声填充和简单的频带复制结合的方法。采用噪声填充的方法无法很好的恢复未编码子带的频谱包络和子带内部的音调及噪声成分。HE-AAC-V1的频带复制方法需要对编码前的音频信号进行频谱分析,对高频成分的信号进行音调和噪声估计、提取参数,并对音频信号下采样后使用AAC编码器进行编码,其运算复杂度高,而且还需要传送较多的参数信息到解码端,占用了较多的编码比特,同时还会增加编码延迟。而G.719的复制方案又过于简单,无法很好地恢复未编码子带的频谱包络和子带内部的音调及噪声成分。
发明内容
本发明要解决的技术问题是提供一种频带复制方法、装置及音频解码方法、系统,以很好地解决音频编解码过程中未被编码的编码子带的音频信号的恢复问题
为解决以上技术问题,本发明提供了一种频带复制方法,该方法包括:
A、在MDCT频域系数中搜索音频信号的某个音调所在的位置;
B、根据音调所在位置确定频带复制周期和源频段,该频带复制周期为0频点到音调位置的频点的带宽,该源频段为从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段,其中所述偏移量copyband_offset大于或等于0;
C、根据频带复制周期对零比特编码子带进行频带复制。
进一步地,步骤A中,采用以下方法搜索某个音调的位置:
对第一频段的频域系数取绝对值或平方值并进行平滑滤波;
根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,将该最大极值所在的位置作为某个音调所在的位置。
进一步地,对该第一频段的频域系数取绝对值进行平滑滤波的运算公式如下:
或,对该第一频段的频域系数平方值进行平滑滤波的运算公式如下
进一步地,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
进一步地,采用以下方法确定滤波输出值的最大极值:直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
进一步地,采用以下方法确定滤波输出值的最大极值:
将该第一频段的其中一段作为第二频段,从第二频段对应的频域系数的滤波输出值中搜索初始最大值,根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
进一步地,步骤C中,对零比特编码子带进行频带复制时,先根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号,再以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带。
进一步地,步骤C中计算该零比特编码子带的源频段复制起始序号的方法为:
获得需要重构频域系数的零比特编码子带的起始MDCT频域系数的频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将频带复制偏移记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为源频段复制起始序号,记为copy_pos_mod。
进一步地,步骤C中以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带的方法为:
将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数的频带复制。
为解决以上技术问题,本发明还提供一种频带复制装置,该装置包括依次连接的音调位置搜索模块、周期及源频段计算模块、源频段复制起始序号计算模块及频带复制模块,其中:
音调位置搜索模块,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,
周期及源频段计算模块,用于根据音调所在位置确定用于复制的频带复制周期及源频段,该频带复制周期为0频点到音调位置的频点的带宽,所述源频段为从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段;
源频段复制起始序号计算模块,用于根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号;
所述频带复制模块用于以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带。
进一步地,所述音调位置搜索模块搜索音调位置的方法为:对第一频段的MDCT频域系数取绝对值或平方值,并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,该最大极值所在的位置即音调所在的位置。
进一步地,所述音调位置搜索模块对该第一频段的MDCT频域系数取绝对值进行平滑滤波的运算公式为:
或,对该第一频段的频域系数平方值进行平滑滤波的运算为:
进一步地,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
进一步地,所述音调位置搜索模块直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
进一步地,所述音调位置搜索模块确定滤波输出值的最大极值时,将该第一频段的其中一段作为第二频段,先从第二频段对应的频域系数的滤波输出值中搜索初始最大值,再根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
进一步地,所述源频段复制起始序号计算模块计算需要进行频带复制的零比特编码子带的源频段复制起始序号的过程包括:获得当前需要重构频域系数的零比特编码子带的起始频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将源频段起始序号记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为源频段复制起始序号,记为copy_pos_mod。
进一步地,频带复制模块进行频带复制时,将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数复制。
为解决以上技术问题,本发明还提供了一种音频解码方法,该方法包括:
A、对待解码比特流中各幅值包络编码比特进行解码反量化,得到各编码子带的幅值包络;
B、对各编码子带进行比特分配,对非零比特编码子带进行解码和反量化得到非零比特编码子带的频域系数;
C、在MDCT频域系数中搜索音频信号的某个音调所在的位置,以0频点到音调位置的频点的带宽为频带复制周期,将从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段作为源频段,对零比特编码子带进行频带复制,根据当前的编码子带的幅值包络对复制得到的频域系数进行能量调整,并结合噪声填充,获得重构的零比特编码子带的频域系数,其中所述偏移量copyband_offset大于或等于0;
D、对非零比特编码子带的频域系数和重构的零比特编码子带的频域系数进行修正离散余弦逆变换(IMDCT),得到最终的音频信号。
进一步地,步骤C中,采用以下方法搜索某个音调的位置:
对第一频段的频域系数取绝对值或平方值并进行平滑滤波;
根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,将该最大极值所在的位置作为某个音调所在的位置。
进一步地,对该第一频段的频域系数取绝对值进行平滑滤波的运算公式如下:
或,对该第一频段的频域系数平方值进行平滑滤波的运算公式如下
其中,μ为平滑滤波系数,X_ampi(k)表示第i帧的第k个频点的滤波输出值,为第i帧的第k个频点解码后的MDCT系数,且i=0时,X_ampi-1(k)=0。
进一步地,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
进一步地,采用以下方法确定滤波输出值的最大极值:直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
进一步地,采用以下方法确定滤波输出值的最大极值:
将该第一频段的其中一段作为第二频段,从第二频段对应的频域系数的滤波输出值中搜索初始最大值,根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
进一步地,步骤C中,对零比特编码子带进行频带复制时,先根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号,再以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带。
进一步地,步骤C中计算该零比特编码子带的源频段复制起始序号的方法为:
获得需要重构频域系数的零比特编码子带的起始MDCT频域系数的频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将频带复制偏移记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为源频段复制起始序号,记为copy_pos_mod。
进一步地,步骤C中以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带的方法为:
将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数的频带复制。
进一步地,采用以上频带复制方法结合噪声填充的方法为所有零比特编码子带进行频谱重构,或,对于特定频点以下的零比特编码子带采用随机噪声填充方法进行频谱重构,对于特定频点以上的零比特编码子带,采用频域系数复制结合噪声填充的方法进行频谱重构。
为解决以上技术问题,本发明还提供了一种音频解码系统,该系统包括比特流解复用器(DeMUX)、幅值包络解码单元、比特分配单元、频域系数解码单元、频带复制单元、噪声填充单元、修正离散余弦逆变换(IMDCT)单元,其中:
所述DeMUX,用于从待解码比特流中分离出幅值包络编码比特、频域系数编码比特以及噪声水平编码比特;
所述幅值包络解码单元,与所述DeMUX连接,用于对所述比特流解复用器输出的幅值包络编码比特进行解码反量化,得到各编码子带的幅值包络;
所述比特分配单元,与所述幅值包络解码单元连接,用于进行比特分配,得到各编码子带中为每个频域系数所分配的编码比特数;
频域系数解码单元,与幅值包络解码单元和比特分配单元连接,用于对编码子带进行解码、反量化及反归一化以得到频域系数;
所述频带复制单元:与所述DeMUX、频域系数解码单元、幅值包络解码单元及比特分配单元连接,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,以0频点到音调位置的频点的带宽为频带复制周期,将从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段作为源频段,对零比特编码子带进行频带复制,其中所述偏移量copyband_offset大于或等于0;还用于根据当前的编码子带的幅值包络对复制的得到频域系数进行能量调整;
噪声填充单元,与幅值包络解码单元、比特分配单元及频带复制单元连接,用于根据当前零比特编码子带的幅值包络为该编码子带填充噪声,获得重构的零比特编码子带的频域系数;
IMDCT单元,与所述噪声填充单元连接,用于对噪声填充后的频域系数进行IMDCT,得到的音频信号。
进一步地,所述频带复制单元包括依次连接的音调位置搜索模块、周期及源频段计算模块、源频段复制起始序号计算模块及频带复制模块,其中:
音调位置搜索模块,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,
周期及源频段计算模块,用于根据音调所在位置确定用于复制的频带复制周期及源频段,该频带复制周期为0频点到音调位置的频点的带宽,所述源频段为从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段;
源频段复制起始序号计算模块,用于根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号;
所述频带复制模块用于以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带。
进一步地,所述音调搜索模块采用如下方法搜索音调所在位置:对第一频段的MDCT频域系数取绝对值或平方值,并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,该最大极值所在的位置即音调所在的位置。
进一步地,
所述音调搜索模块对该第一频段的MDCT频域系数取绝对值进行平滑滤波的运算公式为:
或,对该第一频段的频域系数平方值进行平滑滤波的运算为:
进一步地,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
进一步地,所述音调搜索模块直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
进一步地,所述音调搜索模块确定滤波输出值的最大极值时,将该第一频段的其中一段作为第二频段,先从第二频段对应的频域系数的滤波输出值中搜索初始最大值,再根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
进一步地,所述源频段复制起始序号计算模块计算需要进行频带复制的零比特编码子带的源频段复制起始序号的过程包括:获得当前需要重构频域系数的零比特编码子带的起始频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将源频段起始序号记为copyband _ffset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为源频段复制起始序号,记为copy_pos_mod。
进一步地,频带复制模块进行频带复制时,将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数复制。
进一步地,由所述频带复制单元采用频域系数复制结合噪声填充单元噪声填充的方法为所有零比特编码子带进行频谱重构;或,由所述噪声填充单元对于特定频点以下的零比特编码子带采用随机噪声填充方法进行频谱重构,由频带复制单元采用频域系数复制结合噪声填充单元噪声填充的方法对于特定频点以上的零比特编码子带进行频谱重构。
本发明在音频编解码系统的解码端解码后得到的MDCT频域系数中搜索音频信号的某个音调所在的位置,并根据该音调所在位置确定频域复制周期,再根据该频域复制周期进行频带复制,并结合能量水平调整及噪声填充对未编码的编码子带进行频域系数重构,其中噪声填充和频带复制的能量水平由未编码子带的频谱包络值控制。该方法可以更好地恢复未编码的编码子带的频谱包络和内部的音调信息,得到了较好的主观听音效果。
附图说明
图1是本发明频带复制方法示意图。
图2是本发明音频解码方法示意图。
图3是本发明频带复制装置的模块结构示意图。
图4是本发明音频解码系统的结构示意图。
具体实施方式
本发明的核心思想是,在音频编解码系统的解码端解码后得到的MDCT频域系数中搜索音频信号的某个音调所在的位置,并根据该音调所在位置确定频域复制周期,再根据该频域复制周期进行频带复制,并结合能量水平调整及噪声填充对未编码的编码子带进行频域系数重构,其中噪声填充和频带复制的能量水平由未编码的编码子带的频谱包络值控制。该方法可以很好地恢复未编码的编码子带的频谱包络和内部的音调信息,得到了较好的主观听音效果。
本发明所说的频域系数均指MDCT频域系数。
如图1所示,本发明频带复制方法包括:
101:在MDCT频域系数中搜索音频信号的某个音调所在的位置;
本发明优选的搜索音调所在的位置的方法是对MDCT频域系数进行平滑滤波,包括:
a1、对低频的某个特定频段的MDCT频域系数取绝对值或平方值,并进行平滑滤波;
这里所说的特定频段可以是根据频谱的统计特性确定的能量比较集中的低频的频段,称为第一频段。这里的低频指的是小于二分之一信号总带宽的频谱成分。
这里所说的MDCT频域系数指音频编解码系统的解码端解码后得到的MDCT频域系数,按频率从低到高排列,第一个频点的序号记为0,后续频点按频率顺序序号依次加1。
对该第一频段的频域系数取绝对值进行平滑滤波的运算公式如下:
或,对该第一频段的频域系数平方值进行平滑滤波的运算公式如下
其中,μ为平滑滤波系数,其取值范围为(0,1),可取值为0.125。X_ampi(k)表示第i帧的第k个频点的滤波输出值,为第i帧的第k个频点解码后的MDCT系数,且i=0时,X_ampi-1(k)=0。
a2、根据平滑滤波的结果,搜索滤波输出值的最大极值所在的位置,将该最大极值所在的位置作为音调所在的位置;
本发明所说的音频信号的音调指音频信号的基音或基音的某个谐波。
搜索第一频段滤波输出值的最大极值所在的位置有以下两种方法:
(1)直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值,将对应的频点的序号作为最大极值(即音调)的位置;
(2)搜索最大极值时,将该第一频段的其中一段作为第二频段,从第二频段对应的频域系数的滤波输出值中搜索初始最大值,并将该初始最大值作为第一频段滤波输出值的最大极值,将对应的频点的序号作为最大极值(即音调)的位置。
第二频段的起点位置要大于第一频段的起点,第二频段的终点位置要小于第一频段的终点,优选地,第一频段和第二频段中频率系数的个数不小于8。
为了防止找到的初始最大值对应的频域系数不是音频信号的音调所在的位置,在进行音调位置搜索时,先从该第二频段的滤波输出值中搜索初始最大值,并根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则认为该当前频域系数为音调所在的位置,即该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则认为第一频段的最低频率的频域系数为音调所在的位置,即第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则认为当前频域系数为音调所在的位置,即该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则认为第一频段的最高频率的频域系数为音调所在的位置,即第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
以下以第一频段的频域系数为第24个到第64个MDCT频域系数,第二频段的频域系数为第33个到第56个MDCT频域系数为例对确定音频信号位置的方法进行说明:
从第33到56个MDCT频域系数的滤波输出值中搜索其最大值;如果最大值对应第33个频域系数,判断第32个频域系数的检波输出结果是否比第33个频域系数的大,如果是将继续向前比,看是否第31个频域系数的检波输出结果是否比第32个频域系数的大,按照这种方法依次向前比较直到当前频域系数的滤波输出值比前一个的大;或者直到找到第24个频域系数的滤波输出值大于第25个频域系数的滤波输出值,则当前频域系数或第24个频域系数为音调的位置;
如果最大值是56将采用类似的方法依次向后寻找,直到当前频域系数的滤波输出值比后一个的大,则该当前频域系数为音调的位置,或直到找到第64个频域系数的滤波输出值并且其值大于第63个频域系数的滤波输出值,则该第64个频域系数为音调的位置;
如果最大值在33到56之间,该最大值对应的频域系数为音调的位置。
该位置的值记为Tonal_pos,即最大极值对应的频点的序号。
102:根据音调所在位置确定频带复制周期,该频带复制周期为0频点到音调位置的频点的带宽;
频带的复制周期记为copy_period,copy_period等于Tonal_pos加1。
103:将从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段作为源频段,对零比特编码子带进行频带复制。
本发明所说的零比特编码子带指分配到零比特的编码子带,也称为未编码的编码子带。
即,源频段的频点的起始序号copyband_offset,结束序号为copyband_offset+Tonal_pos。
本发明中,频带复制偏移(记为copyband_offset)的值为预先设定,copyband_offset≥0,当预先设定的copyband_offset=0零时,源频段即为从0频点到音调位置的频点的频段,为了减少复制频带的频谱跳变,将copyband_offset设为大于零,则源频段是0频点的向后偏移一个小范围的频点到最大极值所在位置的频点向后偏移一个相同小范围的频点的MDCT频域系数,对于某个频点以上零比特编码子带的频谱填充都从源频段中复制;
进行频带复制时,先根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号,再以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带。
确定源频段复制起始序号的方法为:
首先,从需要复制的第一个零比特编码子带开始,获得需要重构频域系数的零比特编码子带的起始MDCT频域系数的频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,将Tonal_pos加1求得复制周期copy_period。将频带复制偏移记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到其值落在源频段的序号的值区间,该值则为源频段复制起始序号,记为copy_pos_mod。
源频段复制起始序号copy_pos_mod可以通过下面的伪代码算法获得:
令copy_pos_mod=fillband_start_freq;
当copy_pos_mod大于(Tonal_pos+copyband_offset)
{
copy_pos_mod=copy_pos_mod-copy_period;
}
完成运算后copy_pos_mod则为源频段复制起始序号。
复制时,将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数的频带复制。
设定频带复制偏移copyband_offset为10时,将从copy_pos_mod开始的频带按频率从低到高排列复制到以fillband_start_freq为起始位置的零比特编码子带上,直到Tonal_pos+10频点后重新从第10个频域系数开始复制,依此类推,该零比特编码子带的所有的信号都从10到Tonal_pos+10频域系数中复制,频点10到Tonal_pos+10的频域系数为频带复制的源频段。
采用本发明频带复制方法,可以为所有零比特编码子带复制频谱,也可以对于特定频点以下的零比特编码子带采用随机噪声填充方法进行频谱重构,对于特定频点以上的零比特编码子带,采用频域系数复制结合噪声填充的方法进行频谱重构。
图2是本发明实施例一种音频解码方法的结构示意图。如图4所示,该方法包括:
201:对待解码比特流中各幅值包络编码比特进行解码反量化得到各编码子带的幅值包络;
从编码端传送过来的编码比特流中(即从比特流解复用器DeMUX中)提取一帧的编码比特;提取出编码比特后,对该帧中各幅值包络编码比特进行解码,得到各编码子带的幅值包络量化指数Thq(j),j=0,…,L-1。对幅值包络量化指数进行反量化求得幅值包络rms(r),r=0,…,L-1。
202:对各编码子带进行比特分配;
根据各编码子带的幅值包络量化指数计算出各编码子带重要性初始值,并利用编码子带重要性对各编码子带进行比特分配,得到编码子带的比特分配数;解码端的比特分配方法和编码端的比特分配方法完全相同。在比特分配过程中,比特分配步长及比特分配后编码子带重要性降低的步长是变化的。
203:根据编码子带比特分配数对各非零比特编码子带进行反量化解码得到非零比特编码子带的MDCT频域系数;
204:在MDCT频域系数中搜索音频信号的某个音调所在的位置,以0频点到音调位置的频点的带宽为频带复制周期,将从0频点向后偏移copyband_offset个频点到音调位置向后偏移所述copyband_offset个频点的频段作为源频段,对零比特编码子带进行频带复制;该步骤详细过程见频带复制方法,在此不再赘述。
205:根据当前的编码子带的幅值包络对复制得到的频域系数进行能量调整,并结合噪声填充,获得重构的零比特编码子带的频域系数;
根据编码端传送过来的噪声水平编码比特,对各个零比特编码子带内部复制得到的频域系数进行能量调整:
计算零比特编码子带r复制得到的频域系数的幅值包络,记为sbr_rms(r)。
对频域系数进行能量调整的计算公式为:
其中,表示零比特编码子带r的能量调整后的频域系数,X_sbr(r)表示零比特编码子带r复制得到的频域系数,sbr_rms(r)是零比特编码子带r复制得到的频域系数X_sbr(r)的幅值包络(也就是均方根),rms(r)是零比特编码子带r的编码前频域系数的幅值包络,sbr_lev_scale(r)为零比特编码子带r的频带复制的能量增益控制比例因子,其取值范围为(0,2)。根据实际的听觉感受,可以对各个子带采用相同或者不同的系数值。
其中,表示零比特编码子带r重构的频域系数,表示零比特编码子带r的能量调整后的频域系数,rms(r)是零比特编码子带r的编码前频域系数的幅值包络,random()为随机相位发生器产生的随机相位值,其产生随机返回值+1或-1,noise_lev_scale(r)为零比特编码子带r的噪声水平控制比例因子,其取值范围为(0,2)根据实际的听觉感受,可以对各个子带采用相同或者不同的系数值。
对于最高频率小于搜索到的音调的频率的零比特编码子带频域系数采用噪声填充的方法进行重构。
可以采用本发明频带复制方法,为所有零比特编码子带进行频谱重构,也可以对于特定频点以下的零比特编码子带采用随机噪声填充方法进行频谱重构,对于特定频点以上的零比特编码子带,采用频域系数复制结合噪声填充的方法进行频谱重构。
206:对非零比特编码子带的频域系数和重构的零比特编码子带的频域系数进行IMDCT(Inverse Modified Discrete Cosine Transform,修正离散余弦逆变换),得到最终的音频输出信号。
为了实现以上频带复制方法,本发明还提供了一种频带复制装置,如图3所示,所述频带复制装置包括依次连接的音调位置搜索模块、周期及源频段计算模块、源频段复制起始序号计算模块及频带复制模块,其中:
音调位置搜索模块,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,具体包括:对第一频段的MDCT频域系数取绝对值或平方值,并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,该最大极值所在的位置即音调所在的位置;
周期及源频段计算模块,用于根据音调所在位置确定用于复制的频带复制周期及源频段,该频带复制周期为0频点到音调位置的频点的带宽,所述源频段为0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段;
若将音调位置的频点的序号记为Tonal_pos,预先设定频带复制偏移记为copyband_offset,则源频段的频域系数的起始序号copyband_offset,结束序号为copyband_offset+Tonal_pos。
源频段复制起始序号计算模块,用于根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号。
所述频带复制模块用于以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带;
进一步地,
所述音调位置搜索模块对该第一频段的MDCT频域系数取绝对值进行平滑滤波的运算公式为:
或,对该第一频段的频域系数平方值进行平滑滤波的运算为:
进一步地,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
进一步地,所述音调位置搜索模块直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
进一步地,所述音调位置搜索模块确定滤波输出值的最大极值时,将该第一频段的其中一段作为第二频段,先从第二频段对应的频域系数的滤波输出值中搜索初始最大值,再根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
进一步地,所述源频段复制起始序号计算模块计算需要进行频带复制的零比特编码子带的源频段复制起始序号的过程包括:获得当前需要重构频域系数的零比特编码子带的起始频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将源频段起始序号记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为源频段复制起始序号。
进一步地,所述频带复制模块进行频带复制时,具体包括:
将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数复制。
为了实现以上解码方法,本发明还提供了一种音频解码系统,如图4所示,该系统包括比特流解复用器(DeMUX)、幅值包络解码单元、比特分配单元、频域系数解码单元、频带复制单元、噪声填充单元、修正离散余弦逆变换(IMDCT)单元,其中:
比特流解复用器(DeMUX),用于从待解码比特流中分离出幅值包络编码比特、频域系数编码比特以及噪声水平编码比特;
幅值包络解码单元,与所述比特流解复用器连接,用于对所述比特流解复用器输出的幅值包络的编码比特进行解码反量化,得到各编码子带的幅值包络;
比特分配单元,与所述幅值包络解码单元连接,用于进行比特分配,得到各编码子带中为每个频域系数所分配的编码比特数;
比特分配单元包括重要性计算模块及比特分配模块及比特分配修正模块,其中:
重要性计算模块用于根据编码子带幅值包络量化指数计算各编码子带重要性的初始值;
所述比特分配模块用于根据各编码子带的重要性初始值对编码子带中每个频域系数进行比特分配,且在比特分配过程中,比特分配步长及比特分配后重要性降低的步长均是变化的;
比特分配修正模块,用于在进行比特分配之后,根据编码端的比特分配修正迭代次数count值和各编码子带的重要性,对编码子带再进行count次比特分配修正。
所述比特分配模块进行比特分配时,低比特编码子带的比特分配步长及比特分配后的重要性降低步长小于零比特编码子带和高比特编码子带的比特分配步长及比特分配后的重要性降低步长。
所述比特分配修正模块进行比特修正时,低比特编码子带的比特修正步长及比特修正后的重要性降低步长小于零比特编码子带和高比特编码子带的比特修正步长及比特修正后的重要性降低步长。
频域系数解码单元,与幅值包络解码单元和比特分配单元连接,用于对编码子带进行解码、反量化及反归一化以得到频域系数;
频带复制单元,与所述DeMUX、频域系数解码单元、幅值包络解码单元及比特分配单元连接,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,以0频点到音调位置的频点的带宽作为频带复制周期,或将从0频点向后偏移copyband_offset个频点到音调位置向后偏移所述copyband_offset个频点的频段作为源频段,对零比特编码子带进行频带复制;还用于根据当前的零比编码子带的幅值包络对复制得到的频域系数进行能量调整。
该频带复制单元具体实现与以上频带复制装置相同,在此不再赘述。
噪声填充单元,与幅值包络解码单元、比特分配单元及频带复制单元连接,用于根据当前零比特编码子带的幅值包络为该编码子带填充噪声,获得重构的零比特编码子带的频域系数;
由所述频带复制单元采用以上频带复制方法结合噪声填充单元噪声填充的方法为所有零比特编码子带进行频谱重构;或,由所述噪声填充单元对于特定频点以下的零比特编码子带采用随机噪声填充方法进行频谱重构,由频带复制单元采用频域系数复制结合噪声填充单元噪声填充的方法对于特定频点以上的零比特编码子带进行频谱重构。
修正离散余弦逆变换(IMDCT)单元,与所述噪声填充单元连接,用于对噪声填充后的频域系数进行IMDCT,得到的音频信号。
Claims (34)
1.一种频带复制方法,其特征在于,该方法包括:
A、在MDCT频域系数中搜索音频信号的某个音调所在的位置;
B、根据音调所在位置确定频带复制周期和源频段,该频带复制周期为0频点到音调位置的频点的带宽,该源频段为从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段,其中偏移量copyband_offset大于或等于0;
C、根据频带复制周期对零比特编码子带进行频带复制;
其中,步骤A中,采用以下方法搜索某个音调的位置:
对第一频段的频域系数取绝对值或平方值并进行平滑滤波;
根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,将该最大极值所在的位置作为某个音调所在的位置。
3.如权利要求1所述的方法,其特征在于,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
4.如权利要求1所述的方法,其特征在于,采用以下方法确定滤波输出值的最大极值:直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
5.如权利要求1所述的方法,其特征在于,采用以下方法确定滤波输出值的最大极值:
将该第一频段的其中一段作为第二频段,从第二频段对应的频域系数的滤波输出值中搜索初始最大值,根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
6.如权利要求1至5中任一项所述的方法,其特征在于,步骤C中,对零比特编码子带进行频带复制时,先根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号,再以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带。
7.如权利要求6所述的方法,其特征在于,步骤C中计算该零比特编码子带的源频段复制起始序号的方法为:
获得需要重构频域系数的零比特编码子带的起始MDCT频域系数的频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将频带复制偏移记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为源频段复制起始序号,记为copy_pos_mod。
8.如权利要求7所述的方法,其特征在于,步骤C中以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带的方法为:
将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数的频带复制。
9.一种频带复制装置,其特征在于,该装置包括依次连接的音调位置搜索模块、周期及源频段计算模块、源频段复制起始序号计算模块及频带复制模块,其中:
音调位置搜索模决,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,
周期及源频段计算模块,用于根据音调所在位置确定用于复制的频带复制周期及源频段,该频带复制周期为0频点到音调位置的频点的带宽,所述源频段为从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段;
源频段复制起始序号计算模块,用于根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号;
所述频带复制模块用于以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带;
其中,所述音调位置搜索模块搜索音调位置的方法为:对第一频段的MDCT频域系数取绝对值或平方值,并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,该最大极值所在的位置即音调所在的位置。
11.如权利要求9所述的装置,其特征在于:所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
12.如权利要求9所述的装置,其特征在于:所述音调位置搜索模块直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
13.如权利要求9所述的装置,其特征在于:所述音调位置搜索模块确定滤波输出值的最大极值时,将该第一频段的其中一段作为第二频段,先从第二频段对应的频域系数的滤波输出值中搜索初始最大值,再根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
14.如权利要求9至13中任一项所述的装置,其特征在于,
所述源频段复制起始序号计算模块计算需要进行频带复制的零比特编码子带的源频段复制起始序号的过程包括:获得当前需要重构频域系数的零比特编码子带的起始频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将源频段起始序号记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为从源频段复制的起始序号,记为copy_pos_mod。
15.如权利要求14所述的装置,其特征在于:频带复制模块进行频带复制时,将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数复制。
16.一种音频解码方法,其特征在于,该方法包括:
A、对待解码比特流中各幅值包络编码比特进行解码反量化,得到各编码子带的幅值包络;
B、对各编码子带进行比特分配,对非零比特编码子带进行解码和反量化得到非零比特编码子带的频域系数;
C、在MDCT频域系数中搜索音频信号的某个音调所在的位置,以0频点到音调位置的频点的带宽为频带复制周期,将从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段作为源频段,对零比特编码子带进行频带复制,根据当前的编码子带的幅值包络对复制得到的频域系数进行能量调整,并结合噪声填充,获得重构的零比特编码子带的频域系数,其中偏移量copyband_offset大于或等于0;
D、对非零比特编码子带的频域系数和重构的零比特编码子带的频域系数进行修正离散余弦逆变换IMDCT,得到最终的音频信号;
其中,步骤C中,采用以下方法搜索某个音调的位置:
对第一频段的频域系数取绝对值或平方值并进行平滑滤波;
根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,将该最大极值所在的位置作为某个音调所在的位置。
18.如权利要求16所述的方法,其特征在于,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
19.如权利要求16所述的方法,其特征在于,采用以下方法确定滤波输出值的最大极值:直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
20.如权利要求16所述的方法,其特征在于,采用以下方法确定滤波输出值的最大极值:
将该第一频段的其中一段作为第二频段,从第二频段对应的频域系数的滤波输出值中搜索初始最大值,根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
21.如权利要求16至20中任一项所述的方法,其特征在于,步骤C中,对零比特编码子带进行频带复制时,先根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号,再以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带。
22.如权利要求21所述的方法,其特征在于,步骤C中计算该零比特编码子带的源频段复制起始序号的方法为:
获得需要重构频域系数的零比特编码子带的起始MDCT频域系数的频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将频带复制偏移记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为源频段复制起始序号,记为copy_pos_mod。
23.如权利要求22所述的方法,其特征在于,步骤C中以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带的方法为:
将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband_offset频点后,重新将从第copyband_offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数的频带复制。
24.如权利要求16所述的方法,其特征在于:采用以上频带复制方法结合噪声填充的方法为所有零比特编码子带进行频谱重构,或,对于特定频点以下的零比特编码子带采用随机噪声填充方法进行频谱重构,对于特定频点以上的零比特编码子带,采用频域系数复制结合噪声填充的方法进行频谱重构。
25.一种音频解码系统,该系统包括比特流解复用器DeMUX、幅值包络解码单元、比特分配单元、频域系数解码单元、频带复制单元、噪声填充单元、修正离散余弦逆变换IMDCT单元,其特征在于:
所述DeMUX,用于从待解码比特流中分离出幅值包络编码比特、频域系数编码比特以及噪声水平编码比特;
所述幅值包络解码单元,与所述DeMUX连接,用于对所述DeMUX输出的幅值包络编码比特进行解码反量化,得到各编码子带的幅值包络;
所述比特分配单元,与所述幅值包络解码单元连接,用于进行比特分配,得到各编码子带中为每个频域系数所分配的编码比特数;
频域系数解码单元,与幅值包络解码单元和比特分配单元连接,用于对编码子带进行解码、反量化及反归一化以得到频域系数;
所述频带复制单元:与所述DeMUX、频域系数解码单元、幅值包络解码单元及比特分配单元连接,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,以0频点到音调位置的频点的带宽为频带复制周期,将从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段作为源频段,对零比特编码子带进行频带复制,其中所述偏移量copyband_offset大于或等于0;还用于根据当前的编码子带的幅值包络对复制的得到频域系数进行能量调整;
噪声填充单元,与幅值包络解码单元、比特分配单元及频带复制单元连接,用于根据当前零比特编码子带的幅值包络为该编码子带填充噪声,获得重构的零比特编码子带的频域系数;
IMDCT单元,与所述噪声填充单元连接,用于对噪声填充后的频域系数进行IMDCT,得到的音频信号;
其中,采用如下方法搜索某个音调所在位置:对第一频段的MDCT频域系数取绝对值或平方值,并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,该最大极值所在的位置即某个音调所在的位置。
26.如权利要求25所述的系统,其特征在于,所述频带复制单元包括依次连接的音调位置搜索模块、周期及源频段计算模块、源频段复制起始序号计算模块及频带复制模块,其中:
音调位置搜索模块,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,
周期及源频段计算模块,用于根据音调所在位置确定用于复制的频带复制周期及源频段,该频带复制周期为0频点到音调位置的频点的带宽,所述源频段为从0频点向后偏移copyband_offset个频点到音调位置的频点向后偏移所述copyband_offset个频点的频段;
源频段复制起始序号计算模块,用于根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号;
所述频带复制模块用于以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带。
27.如权利要求26所述的系统,其特征在于,所述音调位置搜索模块采用如下方法搜索音调所在位置:对第一频段的MDCT频域系数取绝对值或平方值,并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,该最大极值所在的位置即音调所在的位置。
28.如权利要求26所述的系统,其特征在于:
所述音调位置搜索模块对该第一频段的MDCT频域系数取绝对值进行平滑滤波的运算公式为:
或,对该第一频段的频域系数平方值进行平滑滤波的运算为:
其中,μ为平滑滤波系数,X_ampi(k)表示第i帧的第k个频点的滤波输出值,为第i帧的第k个频点解码后的MDCT系数,且i=0时,X_ampi-1(k)=0。
29.如权利要求27所述的系统,其特征在于,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
30.如权利要求27所述的系统,其特征在于:所述音调位置搜索模块直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
31.如权利要求27所述的系统,其特征在于:所述音调位置搜索模块确定滤波输出值的最大极值时,将该第一频段的其中一段作为第二频段,先从第二频段对应的频域系数的滤波输出值中搜索初始最大值,再根据该初始最大值对应的频域系数的位置进行不同的处理:
a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;
b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;
c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
32.如权利要求26至31中任一项所述的系统,其特征在于:
所述源频段复制起始序号计算模块计算需要进行频带复制的零比特编码子带的源频段复制起始序号的过程包括:获得当前需要重构频域系数的零比特编码子带的起始频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,频带的复制周期记为copy_period,其值等于Tonal_pos加1,将源频段起始序号记为copyband_offset,将fillband_start_freq的值循环减去copy_period,直到该值落在源频段的序号的值区间,该值则为从源频段复制的起始序号,记为copy_pos_mod。
33.如权利要求32所述的系统,其特征在于:频带复制模块进行频带复制时,将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonal_pos+copyband__offset频点后,重新将从第copyband__offset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数复制。
34.如权利要求25所述的系统,其特征在于,由所述频带复制单元采用频域系数复制结合噪声填充单元噪声填充的方法为所有零比特编码子带进行频谱重构;或,由所述噪声填充单元对于特定频点以下的零比特编码子带采用随机噪声填充方法进行频谱重构,由频带复制单元采用频域系数复制结合噪声填充单元噪声填充的方法对于特定频点以上的零比特编码子带进行频谱重构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010191850638A CN102194458B (zh) | 2010-03-02 | 2010-03-02 | 频带复制方法、装置及音频解码方法、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010191850638A CN102194458B (zh) | 2010-03-02 | 2010-03-02 | 频带复制方法、装置及音频解码方法、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102194458A CN102194458A (zh) | 2011-09-21 |
CN102194458B true CN102194458B (zh) | 2013-02-27 |
Family
ID=44602412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010191850638A Active CN102194458B (zh) | 2010-03-02 | 2010-03-02 | 频带复制方法、装置及音频解码方法、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102194458B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594701A (zh) * | 2012-03-14 | 2012-07-18 | 中兴通讯股份有限公司 | 一种频谱重构的确定方法及系统 |
CN105976824B (zh) | 2012-12-06 | 2021-06-08 | 华为技术有限公司 | 信号解码的方法和设备 |
PL3696812T3 (pl) * | 2014-05-01 | 2021-09-27 | Nippon Telegraph And Telephone Corporation | Koder, dekoder, sposób kodowania, sposób dekodowania, program kodujący, program dekodujący i nośnik rejestrujący |
PL3174050T3 (pl) | 2014-07-25 | 2019-04-30 | Fraunhofer Ges Forschung | Urządzenie do kodowania sygnałów audio, urządzenie do dekodowania sygnałów audio i ich sposoby |
CN105989852A (zh) * | 2015-02-16 | 2016-10-05 | 杜比实验室特许公司 | 分离音频源 |
CN113192517B (zh) * | 2020-01-13 | 2024-04-26 | 华为技术有限公司 | 一种音频编解码方法和音频编解码设备 |
CN113192523B (zh) * | 2020-01-13 | 2024-07-16 | 华为技术有限公司 | 一种音频编解码方法和音频编解码设备 |
CN113808596A (zh) * | 2020-05-30 | 2021-12-17 | 华为技术有限公司 | 一种音频编码方法和音频编码装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1465137A (zh) * | 2001-07-13 | 2003-12-31 | 松下电器产业株式会社 | 音频信号解码装置及音频信号编码装置 |
CN101128868A (zh) * | 2005-02-22 | 2008-02-20 | 冲电气工业株式会社 | 语音频带扩展装置 |
CN101449321A (zh) * | 2006-05-22 | 2009-06-03 | 冲电气工业株式会社 | 频带外信号生成装置和频带扩展装置 |
CN101620854A (zh) * | 2008-06-30 | 2010-01-06 | 华为技术有限公司 | 频带扩展的方法、系统和设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8417532B2 (en) * | 2006-10-18 | 2013-04-09 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Encoding an information signal |
-
2010
- 2010-03-02 CN CN2010191850638A patent/CN102194458B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1465137A (zh) * | 2001-07-13 | 2003-12-31 | 松下电器产业株式会社 | 音频信号解码装置及音频信号编码装置 |
CN101128868A (zh) * | 2005-02-22 | 2008-02-20 | 冲电气工业株式会社 | 语音频带扩展装置 |
CN101449321A (zh) * | 2006-05-22 | 2009-06-03 | 冲电气工业株式会社 | 频带外信号生成装置和频带扩展装置 |
CN101620854A (zh) * | 2008-06-30 | 2010-01-06 | 华为技术有限公司 | 频带扩展的方法、系统和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102194458A (zh) | 2011-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102194458B (zh) | 频带复制方法、装置及音频解码方法、系统 | |
KR101586317B1 (ko) | 신호 처리 방법 및 장치 | |
EP2207169B1 (en) | Audio decoding with filling of spectral holes | |
JP5384780B2 (ja) | 無損失オーディオ符号化方法、無損失オーディオ符号化装置、無損失オーディオ復号化方法、無損失オーディオ復号化装置及び記録媒体 | |
JP4950210B2 (ja) | オーディオ圧縮 | |
JP5255638B2 (ja) | ノイズ補充の方法及び装置 | |
CN102194457A (zh) | 音频编解码方法、系统及噪声水平估计方法 | |
US9037454B2 (en) | Efficient coding of overcomplete representations of audio using the modulated complex lapped transform (MCLT) | |
JP2005521907A (ja) | 不完全なスペクトルを持つオーディオ信号の周波数変換に基づくスペクトルの再構築 | |
AU2003243441C1 (en) | Audio coding system using characteristics of a decoded signal to adapt synthesized spectral components | |
WO2003046891A1 (en) | Methods for improving high frequency reconstruction | |
AU2006332046A1 (en) | Scalable compressed audio bit stream and codec using a hierarchical filterbank and multichannel joint coding | |
CN114550732B (zh) | 一种高频音频信号的编解码方法和相关装置 | |
CN103366750A (zh) | 一种声音编解码装置及其方法 | |
US20130006644A1 (en) | Method and device for spectral band replication, and method and system for audio decoding | |
CN101192410B (zh) | 一种在编解码中调整量化质量的方法和装置 | |
CN101436407B (zh) | 音频编解码方法 | |
CN105474308A (zh) | 音频信号编码器 | |
KR101387808B1 (ko) | 가변 비트율을 갖는 잔차 신호 부호화를 이용한 고품질 다객체 오디오 부호화 및 복호화 장치 | |
KR101786863B1 (ko) | 고 주파수 복원 알고리즘들을 위한 주파수 대역 테이블 설계 | |
RU2409874C9 (ru) | Сжатие звуковых сигналов | |
CN111210831B (zh) | 基于频谱拉伸的带宽扩展音频编解码方法及装置 | |
JP5416173B2 (ja) | 周波数帯コピー方法、装置及びオーディオ復号化方法、システム | |
JP3692959B2 (ja) | 電子透かし情報埋め込み装置 | |
Hansen et al. | Fine-grain scalable audio coding based on envelope restoration and the SPIHT algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |