音频编解码方法、系统及噪声水平估计方法

文档序号:2818919阅读:409来源:国知局
专利名称:音频编解码方法、系统及噪声水平估计方法
技术领域
本发明涉及一种音频编解码技术,尤其是一种对未编码的编码子带进行频谱重构的音频编解码方法、系统及噪声水平估计方法。
背景技术
音频编码技术是诸如数字音频广播、互联网的传播音乐和音频通讯等多媒体应用技术的核心,这些应用会极大地受益于音频编码器压缩性能的提高。感知音频编码器作为有损变换域编码的一种,是现代的主流音频编码器。通常由于编码比特率的限制,音频编码时部分频域系数或频率成分无法被编码,为了更好的恢复未编码子带的频谱成分,现有的音频编解码器通常使用噪声填充或频带复制的方法来重构未编码子带的频谱成分。 G. 722. IC采用了噪声填充的方法,HE-AAC-Vl采用了频带复制技术,G. 719采用了噪声填充和简单的频带复制结合的方法。采用噪声填充的方法无法很好的恢复未编码子带的频谱包络和子带内部的音调及噪声成分。HE-AAC-Vl的频带复制方法需要对编码前的音频信号进行频谱分析,对高频成分的信号进行音调和噪声估计、提取参数,并对音频信号下采样后使用AAC编码器进行编码,其运算复杂度高,而且还需要传送较多的参数信息到解码端,占用了较多的编码比特,同时还会增加编码延迟。而G. 719的复制方案又过于简单,无法很好的恢复未编码子带的频谱包络和子带内部的音调及噪声成分。

发明内容
本发明要解决的技术问题是提供一种音频编解码方法、系统及噪声水平估计方法,以很好地重构未被编码的频域系数。为解决以上技术问题,本发明提供了一种噪声水平估计方法,该方法包括根据待编码音频信号的频域系数估计待编码音频信号的功率谱;根据计算得到的功率谱估计零比特编码子带音频信号的噪声水平,该噪声水平用于在解码时控制噪声填充和频带复制的能量的比例;其中,零比特编码子带指分配到的比特数为零的编码子带。进一步地,所述零比特编码子带音频信号的噪声水平指零比特编码子带内估计得到的噪声成分功率与零比特编码子带估计得到的音调成分功率的比值。进一步地,根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱,第i帧的频点k的功率计算公式如下PiGO = λΡΗ(ιθ + α-λ)χ」θθ2,其中当 i 等于ο 时PhGO =O5PiGO 表示第 i 帧的第k个频点估计得到的功率值;Xi (k)表示第i帧的第k个频点的MDCT系数,λ为单极平滑滤波器的滤波系数。进一步地,将待编码音频信号的频域系数划分成一个或若干个噪声填充子带,根据估计的待编码音频信号的功率谱计算某个有效噪声填充子带的噪声水平的过程具体包括计算该有效噪声填充子带中所有或部分零比特编码子带的所有频域系数的功率的平均值,得到平均功率P_aveg (j);计算该有效噪声填充子带所有或部分零比特编码子带中功率PiGO大于平均功率 P_aveg(j)的所有频域系数的功率的平均值,得到该有效噪声填充子带中零比特编码子带的音调成分平均功率P_Signal_aveg(j);计算该有效噪声填充子带所有或部分零比特编码子带中功率Pi (k)小于或等于平均功率P_aveg(j)的所有频域系数的功率Pi (k)的平均值,得到该有效噪声填充子带中零比特编码子带的噪声成分平均功率P_noise_aveg(j);计算噪声成分平均功率P_noiSe_aveg (j)和音调成分平均功率P_signal_ aveg(j)的比值P_noiSe_rate(j),得到该有效噪声填充子带的噪声水平。其中,有效噪声填充子带指含有零比特编码子带的噪声填充子带。为解决以上技术问题,本发明还提供一种音频编码方法,该方法包括A、将待编码音频信号的MDCT频域系数划分为若干个编码子带,对各编码子带的幅值包络值进行量化编码,得到幅值包络编码比特;B、对各编码子带进行比特分配,并对非零比特编码子带进行量化编码,得到MDCT 频域系数编码比特;C、根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱,进而估计零比特编码子带音频信号的噪声水平,并量化编码得到噪声水平编码比特;其中,该噪声水平用于在解码时控制噪声填充和频带复制的能量的比例,零比特编码子带指分配到的比特数为零的编码子带;D、将各编码子带的幅值包络编码比特和频域系数编码比特及噪声水平编码比特复用打包后,传送给解码端。进一步地,步骤C中,所述零比特编码子带音频信号的噪声水平指零比特编码子带内估计得到的噪声成分功率与零比特编码子带内估计得到的音调成分功率的比值。进一步地,根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱,第i帧的频点k的功率估计的算法如下PiGO = λΡ^ΟΟ + α-λ^ΟΟ2,其中当 i 等于 0,时 PhGO =O5PiGO 表示第 i 帧的第k个频点估计得到的功率值;Xi (k)表示第i帧的第k个频点的MDCT系数,λ为单极平滑滤波器的滤波系数。进一步地,步骤B中,将待编码音频信号的频域系数划分成一个或若干个噪声填充子带,并在对各编码子带分配比特后,为有效噪声填充子带分配比特;步骤C中,根据估计的待编码音频信号的功率谱计算某个有效噪声填充子带的噪声水平的过程具体包括计算该有效噪声填充子带中所有或部分零比特编码子带的所有频域系数的平均值,得到平均功率P_aveg(j);计算该有效噪声填充子带所有或部分零比特编码子带中功率PiGO大于平均功率 P_aveg(j)的所有频域系数的功率的平均值,得到该有效噪声填充子带中零比特编码子带的音调成分平均功率P_Signal_aveg(j);
计算该有效噪声填充子带所有或部分零比特编码子带中功率PiGO小于或等于平均功率P_aveg(j)的所有频域系数的功率Pi (k)的平均值,得到该有效噪声填充子带中零比特编码子带的噪声成分平均功率P_noiSe_aveg(j); 计算噪声成分平均功率P_noise_aveg (j)和音调成分平均功率P_Signal_ aveg(j)的比值P_noiSe_rate(j),得到该有效噪声填充子带的噪声水平。其中,有效噪声填充子带指含有零比特编码子带的噪声填充子带。进一步地,划分噪声填充子带时,均勻划分或根据人耳听觉特性进行非均勻划分, 一个噪声填充子带包含一个或多个编码子带。进一步地,步骤B中为所有有效噪声填充子带分配比特或跳过一个或几个低频的有效噪声填充子带,为后续的较高频的有效噪声填充子带分配比特;步骤C中计算分配了比特的有效噪声填充子带的噪声水平;步骤D中使用该分配的比特对噪声水平编码比特复用打包。进一步地,各有效噪声填充子带分配相同的比特数或根据听觉特性分配不同的比特数。为解决以上技术问题,本发明还提供一种音频解码方法,该方法包括A2、对待解码比特流中各幅值包络编码比特进行解码反量化,得到各编码子带的幅值包络;B2、对各编码子带进行比特分配,对噪声水平编码比特进行解码反量化得到零比特编码子带的噪声水平,对频域系数编码比特进行解码反量化得到非零比特编码子带的频域系数;C2、对零比特编码子带进行频带复制,并根据各零比特编码子带的幅值包络控制该编码子带的整体能量填充水平,根据该零比特编码子带的噪声水平控制噪声填充和频带复制的能量的比例,获得重构的零比特编码子带的频域系数;D2、对非零比特编码子带的频域系数和重构的零比特编码子带的频域系数进行修正离散余弦逆变换(IMDCT),得到最终的音频信号。进一步地,步骤C2中,频带复制时,在MDCT频域系数中搜索音频信号的某个音调所在的位置,以0频点到音调位置的频点的带宽为频带复制周期,并以0频点向后偏移 copyband_offset个频点到音调位置的频点向后偏移所述copybancLoffset个频点的频段作为源频段,对零比特编码子带进行频带复制,如果零比特编码子带内部的最高频率小于搜索到的音调的频率,则该零比特编码子带只采用噪声填充进行频谱重构。进一步地,步骤C2中,对第一频段的频域系数取绝对值或平方值并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,将该最大极值所在的位置作为某个音调所在的位置。进一步地,对该第一频段的频域系数取绝对值进行平滑滤波的运算公式如下X _ Cimpi (k) = μΧ _ amp卜λ (k) + (1-μ)\Χι (k) |或,对该第一频段的频域系数平方值进行平滑滤波的运算公式如下X _ Cimpi (k) = μΧ 一 amp^ (λ -1) + (1 - μ)Χ, (k)2其中,μ为平滑滤波系数,X_amPi(k)表示第i帧的第k个频点的滤波输出值,Xlk )为第i帧的第k个频点解码后的MDCT系数,且i = 0时,Xjmp^ (k) = 0。进一步地,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。进一步地,采用以下方法确定滤波输出值的最大极值直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。进一步地,采用以下方法确定滤波输出值的最大极值将该第一频段的其中一段作为第二频段,从第二频段对应的频域系数的滤波输出值中搜索初始最大值,根据该初始最大值对应的频域系数的位置进行不同的处理a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值,则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。进一步地,步骤C2中,对零比特编码子带进行频带复制时,先根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号,再以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性地复制到零比特编码子带。进一步地,步骤C2中计算该零比特编码子带的源频段复制起始序号的方法为获得需要重构频域系数的零比特编码子带的起始MDCT频域系数的频点的序号, 记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,将Tonal_pos力口 1 得到复制周期copy_period,将频带复制偏移记为copyband_offset,将fillband_start_ freq的值循环减去c0py_peri0d,直到该值落在源频段的序号的值区间,该值为源频段复制起始序号,记为copy_pos_mod。进一步地,步骤C2中以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带的方法为将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_Start_ freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonalpos+copybancL offset频点后,重新将从第copybancLoffset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数的频带复制。进一步地,步骤C2中,采用以下方法对零比特编码子带复制后得到的频域系数进行能量调整计算零比特编码子带频带复制后得到的频域系数的幅值包络,记为sbr_rms (r);对复制后得到的频域系数进行能量调整的公式为X_sbr(r)=X_sbr(r)*sbr_lev_scale(r)*rms(r)/sbr_rms(r);其中,^Ei(r)表示零比特编码子带r的能量调整后的频域系数,X_sbr (r)表示零比特编码子带r通过复制后得到的频域系数,sbr_rms (r)是零比特编码子带r复制后得到的频域系数X_sbr(r)的幅值包络,rms(r)是零比特编码子带r的编码前频域系数的幅值包络,由幅值包络量化指数反量化得到,Sbr_lev_SCale(r)为零比特编码子带r的频带复制的能量控制比例因子,其值由零比特编码子带r所在的噪声填充子带的噪声水平决定, 具体计算公式如下sbr_lev_scale(r)=Aj(l-P _ noise _ 厂 aie(j'))*fill—energy—saclefactorfillenergyjaclefactor为填充能量比例因子,用于调整整体的填充能量的增益,其取值范围为(0,1),—raieC/)为解码反量化得到的噪声填充子带j的噪声水平,其中j为零比特编码子带r所在的噪声填充子带的序号。进一步地,步骤C2中,根据以下公式对能量调整后的频域系数进行噪声填充X (r)=X_sbr(r)+rms(r) * noise—Ie v_scale(r)*random();其中,文勿表示零比特编码子带r重构频域系数,表示零比特编码子带r 的能量调整后的频域系数,rms(r)是零比特编码子带r的编码前频域系数的幅值包络,由幅值包络量化指数反量化得到,random()为随机相位发生器,产生随机相位值,其返回值为 +1或-l,n0ise_lev_scale(r)为零比特编码子带r的噪声水平控制比例因子,其值由零比特编码子带r所在的噪声填充子带的噪声水平决定,具体计算公式如下noise_lev_scale(r)=Ay P 一 noise _ raie(_/)*fill_energy_saclefactor其中,f i 1 l_energy_saclefactor为填充能量比例因子,用于调整整体的填充能量的增益,其取值范围为(0,1),户_为解码反量化得到的噪声填充子带j的噪声水平,其中j为零比特编码子带r所在的噪声填充子带的序号。进一步地,步骤B2中,对各编码子带进行比特分配后,将编码子带划分为若干个噪声填充子带,对有效噪声填充子带进行比特分配,步骤C2中,对分配了比特的有效噪声填充子带中的零比特编码子带进行频带复制并控制所复制频域系数的能量水平及噪声填充的能量水平,对未分配比特的有效噪声填充子带中的零比特编码子带进行噪声填充,其中有效噪声填充子带指含有零比特编码子带的噪声填充子带。为解决以上技术问题,本发明还提供一种音频编码系统,该系统包括修正离散余弦变换(MDCT)单元、幅值包络计算单元、幅值包络量化和编码单元、比特分配单元、频域系数编码单元及比特流复用器(MUX),该系统还包括噪声水平估计单元,其中MDCT单元,用于对音频信号进行修正离散余弦逆变换变换生成频域系数;幅值包络计算单元,与所述MDCT单元连接,用于将所述MDCT生成的频域系数划分为若干个编码子带,并计算各编码子带的幅值包络值;幅值包络量化和编码单元,与所述幅值包络计算单元连接,用于将各编码子带的幅值包络值进行量化和编码,生成各编码子带幅值包络的编码比特;比特分配单元,与所述幅值包络量化和编码单元连接,用于对各编码子带分配比特;频域系数量化编码单元,与MDCT单元、比特分配单元及幅值包络量化和编码单元连接,用于对各编码子带中所有频域系数进行归一化、量化及编码处理,生成频域系数编码比特;噪声水平估计单元,与MDCT单元及比特分配单元连接,用于根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱,进而估计零比特编码子带音频信号的噪声水平,并量化编码得到噪声水平编码比特;其中,该噪声水平用于在解码时控制噪声填充和频带复制的能量的比例;比特流复用器(MUX),与所述幅值包络量化和编码单元、频域系数编码单元及噪声水平估计单元连接,用于将各编码子带的编码比特以及频域系数的编码比特复用并发送到解码端。进一步地,所述零比特编码子带音频信号的噪声水平指零比特编码子带内估计得到的噪声成分功率与零比特编码子带估计得到的音调成分功率的比值。进一步地,所述噪声水平估计单元具体包括功率谱估计模块,用于根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱;噪声水平计算模块,与所述功率谱估计模块连接,用于根据所述功率谱估计模块估计的功率谱估计零比特编码子带音频信号的噪声水平;噪声水平编码模块,与所述噪声水平计算模块连接,用于对所述噪声水平计算模块计算的噪声水平进行量化编码,获得噪声水平编码比特。进一步地,所述功率谱估计模块采用以下公式估计第i帧的频点k的功率,公式如下PiGO =入 PhGO+ (I-XUi (k)2,其中当 i 等于 0 时 PhGO =O5PiGO 表示第 i 帧的第k个频点估计得到的功率值;Xi (k)表示第i帧的第k个频点的MDCT系数,λ为单极平滑滤波器的滤波系数。进一步地,待编码音频信号的频域系数划分成一个或若干个噪声填充子带,所述噪声水平计算模块的功能具体包括用于计算该有效噪声填充子带中所有或部分零比特编码子带的所有频域系数功率的平均值,得到平均功率P_aveg(j);用于计算该有效噪声填充子带所有或部分零比特编码子带中功率PiGO大于平均功率P_aveg(j)的所有频域系数的功率的平均值,得到该有效噪声填充子带中零比特编码子带的音调成分平均功
aveg(j);用于计算该有效噪声填充子带所有或部分零比特编码子带中功率PiGO小于或等于平均功率P_aveg(j)的所有频域系数的功率Pi (k)的平均值,得到该有效噪声填充子带中零比特编码子带的噪声成分平均功率P_noiSe_aVeg(j);用于计算噪声成分平均功率?_ noise_aveg(j)和音调成分平均功率P_signal_aVeg (j)的比值,得到该有效噪声填充子带的噪声水平;其中,有效噪声填充子带指含有零比特编码子带的噪声填充子带。进一步地,所述噪声水平估计单元还包括与噪声水平计算模块及噪声水平编码模块连接的比特分配模块,用于为所有有效噪声填充子带分配比特或跳过一个或几个低频的有效噪声填充子带,为后续的较高频的有效噪声填充子带分配比特,以及通知噪声水平计算模块及噪声水平编码模块;所述噪声水平计算模块仅为分配了比特的噪声填充子带计算噪声水平;所述噪声水平编码模块利用比特分配模块分配的比特对所述噪声水平进行量化编码。为解决以上技术问题,本发明还提供一种音频解码系统,该系统包括比特流解复用器(DeMUX)、编码子带幅值包络解码单元、比特分配单元、频域系数解码单元、频谱重构单元、修正离散余弦逆变换(IMDCT)单元,其中所述DeMUX,用于从待解码比特流中分离出幅值包络编码比特、频域系数编码比特以及噪声水平编码比特;所述幅值包络解码单元,与所述DeMUX连接,用于对所述比特流解复用器输出的幅值包络编码比特进行解码,得到各编码子带的幅值包络量化指数;所述比特分配单元,与所述幅值包络解码单元连接,用于进行比特分配,得到各编码子带中为每个频域系数所分配的编码比特数;频域系数解码单元,与幅值包络解码单元和比特分配单元连接,用于对编码子带进行解码、反量化及反归一化以得到频域系数;噪声水平解码单元,与所述比特流解复用器及比特分配单元连接,用于对噪声水平编码比特进行解码反量化获得噪声水平;所述频谱重构单元,与所述噪声水平解码单元、频域系数解码单元、幅值包络解码单元及比特分配单元连接,用于对零比特编码子带进行频带复制,并根据幅值包络解码单元输出的幅值包络控制该编码子带的整体能量填充水平,根据噪声水平解码单元输出的噪声水平控制噪声填充和频带复制的能量的比例,获得重构的零比特编码子带的频域系数;IMDCT单元,与所述频谱重构单元连接,用于对完成零比特编码子带的频谱重构后的频域系数进行IMDCT,得到的音频信号。进一步地,所述频谱重构单元包括依次连接的频带复制子单元、能量调整子单元及噪声填充子单元,其中频带复制子单元,用于对零比特编码子带进行频带复制;能量调整子单元,用于计算零比特编码子带频带复制后得到的频域系数的幅值包络,记为sbr_rms(r);以及根据噪声水平解码单元输出的噪声水平对复制后得到的频域系数进行能量调整,能量调整的公式为X_sbr(r)=X_sbr(r)*sbr_lev_scale(r)*rms(r)/sbr_rms(r);其中,表示零比特编码子带r的能量调整后的频域系数,X_sbr (r)表示零比特编码子带r复制后得到的频域系数,sbr_rms (r)是零比特编码子带r复制后得到的频域系数X_sbr(r)的幅值包络,rms(r)是零比特编码子带r的编码前频域系数的幅值包络, 由幅值包络量化指数反量化得到,sbr_lev_SCale(r)为零比特编码子带r的频带复制的能量控制比例因子,其值由零比特编码子带r所在的噪声填充子带的噪声水平决定,具体计算公式如下
权利要求
1.一种噪声水平估计方法,其特征在于,该方法包括根据待编码音频信号的频域系数估计待编码音频信号的功率谱; 根据计算得到的功率谱估计零比特编码子带音频信号的噪声水平,该噪声水平用于在解码时控制噪声填充和频带复制的能量的比例;其中,零比特编码子带指分配到的比特数为零的编码子带。
2.如权利要求1所述的方法,其特征在于所述零比特编码子带音频信号的噪声水平指零比特编码子带内估计得到的噪声成分功率与零比特编码子带估计得到的音调成分功率的比值。
3.如权利要求1所述的方法,其特征在于根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱,第i帧的频点k 的功率计算公式如下PiGO = xpHOO + a-xUiOO2,其中当 i 等于OWPhGO =O5PiGO 表示第 i 中贞的第k个频点估计得到的功率值;Xi (k)表示第i帧的第k个频点的MDCT系数,λ为单极平滑滤波器的滤波系数。
4.如权利要求1所述的方法,其特征在于将待编码音频信号的频域系数划分成一个或若干个噪声填充子带,根据估计的待编码音频信号的功率谱计算某个有效噪声填充子带的噪声水平的过程具体包括计算该有效噪声填充子带中所有或部分零比特编码子带的所有频域系数的功率的平均值,得到平均功率p_aveg (j);计算该有效噪声填充子带所有或部分零比特编码子带中功率Pi (k)大于平均功率P_ aveg(j)的所有频域系数的功率的平均值,得到该有效噪声填充子带中零比特编码子带的音调成分平均功率P_signal_aVeg(j);计算该有效噪声填充子带所有或部分零比特编码子带中功率Pi (k)小于或等于平均功率?_趴叩(」)的所有频域系数的功率Pi (k)的平均值,得到该有效噪声填充子带中零比特编码子带的噪声成分平均功率P_noise_aVeg(j);计算噪声成分平均功率P_noise_aVeg(j)和音调成分平均功率P_signal_aVeg(j)的比值P_n0iSe_rate (j),得到该有效噪声填充子带的噪声水平。其中,有效噪声填充子带指含有零比特编码子带的噪声填充子带。
5.一种音频编码方法,其特征在于,该方法包括A、将待编码音频信号的MDCT频域系数划分为若干个编码子带,对各编码子带的幅值包络值进行量化编码,得到幅值包络编码比特;B、对各编码子带进行比特分配,并对非零比特编码子带进行量化编码,得到MDCT频域系数编码比特;C、根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱,进而估计零比特编码子带音频信号的噪声水平,并量化编码得到噪声水平编码比特;其中,该噪声水平用于在解码时控制噪声填充和频带复制的能量的比例,零比特编码子带指分配到的比特数为零的编码子带;D、将各编码子带的幅值包络编码比特和频域系数编码比特及噪声水平编码比特复用打包后,传送给解码端。
6.如权利要求5所述的方法,其特征在于步骤C中,所述零比特编码子带音频信号的噪声水平指零比特编码子带内估计得到的噪声成分功率与零比特编码子带内估计得到的音调成分功率的比值。
7.如权利要求5所述的方法,其特征在于根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱,第i帧的频点k 的功率估计的算法如下PiGO = λ PhGO+ (I-X)Xi (k)2,其中当 i 等于 0,时 PhGO =O5PiGO 表示第 i 帧的第k个频点估计得到的功率值;Xi (k)表示第i帧的第k个频点的MDCT系数,λ为单极平滑滤波器的滤波系数。
8.如权利要求5所述的方法,其特征在于,步骤B中,将待编码音频信号的频域系数划分成一个或若干个噪声填充子带,并在对各编码子带分配比特后,为有效噪声填充子带分配比特;步骤C中,根据估计的待编码音频信号的功率谱计算某个有效噪声填充子带的噪声水平的过程具体包括计算该有效噪声填充子带中所有或部分零比特编码子带的所有频域系数的平均值,得到平均功率P_aveg(j);计算该有效噪声填充子带所有或部分零比特编码子带中功率Pi (k)大于平均功率P_ aveg(j)的所有频域系数的功率的平均值,得到该有效噪声填充子带中零比特编码子带的音调成分平均功率P_signal_aVeg(j);计算该有效噪声填充子带所有或部分零比特编码子带中功率Pi (k)小于或等于平均功率?_趴叩(」)的所有频域系数的功率Pi (k)的平均值,得到该有效噪声填充子带中零比特编码子带的噪声成分平均功率P_noise_aVeg(j);计算噪声成分平均功率P_noise_aVeg(j)和音调成分平均功率P_signal_aVeg(j)的比值P_n0iSe_rate (j),得到该有效噪声填充子带的噪声水平。其中,有效噪声填充子带指含有零比特编码子带的噪声填充子带。
9.如权利要求8所述的方法,其特征在于划分噪声填充子带时,均勻划分或根据人耳听觉特性进行非均勻划分,一个噪声填充子带包含一个或多个编码子带。
10.如权利要求8所述的方法,其特征在于步骤B中为所有有效噪声填充子带分配比特或跳过一个或几个低频的有效噪声填充子带,为后续的较高频的有效噪声填充子带分配比特;步骤C中计算分配了比特的有效噪声填充子带的噪声水平;步骤D中使用该分配的比特对噪声水平编码比特复用打包。
11.如权利要求8所述的方法,其特征在于各有效噪声填充子带分配相同的比特数或根据听觉特性分配不同的比特数。
12.—种音频解码方法,其特征在于,该方法包括A2、对待解码比特流中各幅值包络编码比特进行解码反量化,得到各编码子带的幅值包络;B2、对各编码子带进行比特分配,对噪声水平编码比特进行解码反量化得到零比特编码子带的噪声水平,对频域系数编码比特进行解码反量化得到非零比特编码子带的频域系数;C2、对零比特编码子带进行频带复制,并根据各零比特编码子带的幅值包络控制该编码子带的整体能量填充水平,根据该零比特编码子带的噪声水平控制噪声填充和频带复制的能量的比例,获得重构的零比特编码子带的频域系数;D2、对非零比特编码子带的频域系数和重构的零比特编码子带的频域系数进行修正离散余弦逆变换(IMDCT),得到最终的音频信号。
13.如权利要求12所述的方法,其特征在于,步骤C2中,频带复制时,在MDCT频域系数中搜索音频信号的某个音调所在的位置,以0频点到音调位置的频点的带宽为频带复制周期,并以O频点向后偏移copybancLoffset个频点到音调位置的频点向后偏移所述 copybancLoffset个频点的频段作为源频段,对零比特编码子带进行频带复制,如果零比特编码子带内部的最高频率小于搜索到的音调的频率,则该零比特编码子带只采用噪声填充进行频谱重构。
14.如权利要求12所述的方法,其特征在于,步骤C2中,对第一频段的频域系数取绝对值或平方值并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,将该最大极值所在的位置作为某个音调所在的位置。
15.如权利要求14所述的方法,其特征在于对该第一频段的频域系数取绝对值进行平滑滤波的运算公式如下X 一 Ctmpi (k) = μΧ _ ampM (k) + (\-μ)\Χ (k) |或,对该第一频段的频域系数平方值进行平滑滤波的运算公式如下X _ Cimp1 (k) —- μΧ _ ampt_x (众-1) + (1 - μ)Χι (kf其中,μ为平滑滤波系数,X_amPi(k)表示第i帧的第k个频点的滤波输出值,足α)为第i帧的第k个频点解码后的MDCT系数,且i = 0时,Xjmp^ (k) =0。
16.如权利要求14所述的方法,其特征在于,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
17.如权利要求14所述的方法,其特征在于,采用以下方法确定滤波输出值的最大极值直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
18.如权利要求14所述的方法,其特征在于,采用以下方法确定滤波输出值的最大极值将该第一频段的其中一段作为第二频段,从第二频段对应的频域系数的滤波输出值中搜索初始最大值,根据该初始最大值对应的频域系数的位置进行不同的处理a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值, 则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
19.如权利要求13所述的方法,其特征在于,步骤C2中,对零比特编码子带进行频带复制时,先根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号,再以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性地复制到零比特编码子带。
20.如权利要求19所述的方法,其特征在于,步骤C2中计算该零比特编码子带的源频段复制起始序号的方法为获得需要重构频域系数的零比特编码子带的起始MDCT频域系数的频点的序号,记为 fillband_start_freq,将音调对应的频点的序号记为!"onalpos,将Tonal_pos加1得到复制周期 copy_period,将频带复制偏移记为 copyband_offset,将 f illband_start_freq 的值循环减去c0py_peri0d,直到该值落在源频段的序号的值区间,该值为源频段复制起始序号,记为 copy_pos_mod0
21.如权利要求19所述的方法,其特征在于,步骤C2中以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带的方法为将以源频段复制起始序号开始的频域系数依次向后复制到以fillbancLstartfreq 为起始位置的零比特编码子带上,直到源频段复制的频点到达T0nal_p0S+C0pyband_ offset频点后,重新将从第copybancLoffset个频点开始的频域系数继续向后复制到该零比特编码子带上,依此类推,直到完成当前零比特编码子带的所有频域系数的频带复制。
22.如权利要求12所述的方法,其特征在于,步骤C2中,采用以下方法对零比特编码子带复制后得到的频域系数进行能量调整计算零比特编码子带频带复制后得到的频域系数的幅值包络,记为
23.如权利要求12所述的方法,其特征在于,步骤C2中,根据以下公式对能量调整后的频域系数进行噪声填充
24.如权利要求13所述的方法,其特征在于步骤B2中,对各编码子带进行比特分配后,将编码子带划分为若干个噪声填充子带,对有效噪声填充子带进行比特分配,步骤C2 中,对分配了比特的有效噪声填充子带中的零比特编码子带进行频带复制并控制所复制频域系数的能量水平及噪声填充的能量水平,对未分配比特的有效噪声填充子带中的零比特编码子带进行噪声填充,其中有效噪声填充子带指含有零比特编码子带的噪声填充子带。
25.一种音频编码系统,该系统包括修正离散余弦变换(MDCT)单元、幅值包络计算单元、幅值包络量化和编码单元、比特分配单元、频域系数编码单元及比特流复用器(MUX),其特征在于,该系统还包括噪声水平估计单元,其中MDCT单元,用于对音频信号进行修正离散余弦逆变换变换生成频域系数; 幅值包络计算单元,与所述MDCT单元连接,用于将所述MDCT生成的频域系数划分为若干个编码子带,并计算各编码子带的幅值包络值;幅值包络量化和编码单元,与所述幅值包络计算单元连接,用于将各编码子带的幅值包络值进行量化和编码,生成各编码子带幅值包络的编码比特;比特分配单元,与所述幅值包络量化和编码单元连接,用于对各编码子带分配比特; 频域系数量化编码单元,与MDCT单元、比特分配单元及幅值包络量化和编码单元连接,用于对各编码子带中所有频域系数进行归一化、量化及编码处理,生成频域系数编码比特;噪声水平估计单元,与MDCT单元及比特分配单元连接,用于根据待编码音频信号的 MDCT频域系数估计待编码音频信号的功率谱,进而估计零比特编码子带音频信号的噪声水平,并量化编码得到噪声水平编码比特;其中,该噪声水平用于在解码时控制噪声填充和频带复制的能量的比例;比特流复用器(MUX),与所述幅值包络量化和编码单元、频域系数编码单元及噪声水平估计单元连接,用于将各编码子带的编码比特以及频域系数的编码比特复用并发送到解码端。
26.如权利要求25所述的系统,其特征在于所述零比特编码子带音频信号的噪声水平指零比特编码子带内估计得到的噪声成分功率与零比特编码子带估计得到的音调成分功率的比值。
27.如权利要求25所述的系统,其特征在于,所述噪声水平估计单元具体包括功率谱估计模块,用于根据待编码音频信号的MDCT频域系数估计待编码音频信号的功率谱;噪声水平计算模块,与所述功率谱估计模块连接,用于根据所述功率谱估计模块估计的功率谱估计零比特编码子带音频信号的噪声水平;噪声水平编码模块,与所述噪声水平计算模块连接,用于对所述噪声水平计算模块计算的噪声水平进行量化编码,获得噪声水平编码比特。
28.如权利要求27所述的系统,其特征在于所述功率谱估计模块采用以下公式估计第i帧的频点k的功率,公式如下PiGO = xpHOO + a-xUiOO2,其中当 i 等于OWPhGO =O5PiGO 表示第 i 中贞的第k个频点估计得到的功率值成(k)表示第i帧的第k个频点的MDCT系数,λ为单极平滑滤波器的滤波系数。
29.如权利要求27所述的系统,其特征在于待编码音频信号的频域系数划分成一个或若干个噪声填充子带,所述噪声水平计算模块的功能具体包括用于计算该有效噪声填充子带中所有或部分零比特编码子带的所有频域系数功率的平均值,得到平均功率?_趴叩0);用于计算该有效噪声填充子带所有或部分零比特编码子带中功率PiGO大于平均功率P_aveg(j)的所有频域系数的功率的平均值,得到该有效噪声填充子带中零比特编码子带的音调成分平均功率P_signal_aVeg(j); 用于计算该有效噪声填充子带所有或部分零比特编码子带中功率Pi (k)小于或等于平均功率P_aVeg(j)的所有频域系数的功率Pi (k)的平均值,得到该有效噪声填充子带中零比特编码子带的噪声成分平均功率P_n0iSe_aVeg(j);用于计算噪声成分平均功率P_noiSe_ aveg(j)和音调成分平均功率P_signal_aVeg(j)的比值,得到该有效噪声填充子带的噪声水平;其中,有效噪声填充子带指含有零比特编码子带的噪声填充子带。
30.如权利要求27所述的系统,其特征在于所述噪声水平估计单元还包括与噪声水平计算模块及噪声水平编码模块连接的比特分配模块,用于为所有有效噪声填充子带分配比特或跳过一个或几个低频的有效噪声填充子带,为后续的较高频的有效噪声填充子带分配比特,以及通知噪声水平计算模块及噪声水平编码模块;所述噪声水平计算模块仅为分配了比特的噪声填充子带计算噪声水平;所述噪声水平编码模块利用比特分配模块分配的比特对所述噪声水平进行量化编码。
31.一种音频解码系统,该系统包括比特流解复用器(DeMUX)、编码子带幅值包络解码单元、比特分配单元、频域系数解码单元、频谱重构单元、修正离散余弦逆变换(IMDCT)单元,其特征在于所述DeMUX,用于从待解码比特流中分离出幅值包络编码比特、频域系数编码比特以及噪声水平编码比特;所述幅值包络解码单元,与所述DeMUX连接,用于对所述比特流解复用器输出的幅值包络编码比特进行解码,得到各编码子带的幅值包络量化指数;所述比特分配单元,与所述幅值包络解码单元连接,用于进行比特分配,得到各编码子带中为每个频域系数所分配的编码比特数;频域系数解码单元,与幅值包络解码单元和比特分配单元连接,用于对编码子带进行解码、反量化及反归一化以得到频域系数;噪声水平解码单元,与所述比特流解复用器及比特分配单元连接,用于对噪声水平编码比特进行解码反量化获得噪声水平;所述频谱重构单元,与所述噪声水平解码单元、频域系数解码单元、幅值包络解码单元及比特分配单元连接,用于对零比特编码子带进行频带复制,并根据幅值包络解码单元输出的幅值包络控制该编码子带的整体能量填充水平,根据噪声水平解码单元输出的噪声水平控制噪声填充和频带复制的能量的比例,获得重构的零比特编码子带的频域系数;IMDCT单元,与所述频谱重构单元连接,用于对完成零比特编码子带的频谱重构后的频域系数进行IMDCT,得到的音频信号。
32.如权利要求31所述的系统,其特征在于所述频谱重构单元包括依次连接的频带复制子单元、能量调整子单元及噪声填充子单元,其中频带复制子单元,用于对零比特编码子带进行频带复制;能量调整子单元,用于计算零比特编码子带频带复制后得到的频域系数的幅值包络, 记为sbr_rms(r);以及根据噪声水平解码单元输出的噪声水平对复制后得到的频域系数进行能量调整,能量调整的公式为
33.如权利要求31所述的系统,其特征在于所述频带复制子单元包括依次连接的音调位置搜索模块、周期及源频段计算模块、源频段复制起始序号计算模块及频带复制模块, 其中音调位置搜索模块,用于在MDCT频域系数中搜索音频信号的某个音调所在的位置,周期及源频段计算模块,用于根据音调所在位置确定用于复制的频带复制周期及源频段,该频带复制周期为0频点到音调位置的频点的带宽,所述源频段为0频点向后偏移频带复制偏移copybancLoffset的频点到音调位置的频点向后偏移所述copybancLoffset的频点的频段;源频段复制起始序号计算模块,用于根据源频段和需要进行频带复制的零比特编码子带的起始序号计算该零比特编码子带的源频段复制起始序号;所述频带复制模块用于以频带复制周期为周期,从源频段复制起始序号开始将源频段的频域系数周期性复制到零比特编码子带;如零比特编码子带内部的最高频率小于搜索到的音调的频率,则该频点只采用噪声填充进行频谱重构。
34.如权利要求33所述的系统,其特征在于所述音调位置搜索模块采用如下方法搜索音调所在位置对第一频段的MDCT频域系数取绝对值或平方值,并进行平滑滤波;根据平滑滤波的结果,搜索第一频段滤波输出值的最大极值所在的位置,该最大极值所在的位置即音调所在的位置。
35.如权利要求33所述的系统,其特征在于所述音调位置搜索模块对该第一频段的MDCT频域系数取绝对值进行平滑滤波的运算公式为X — amp, (k) = μΧ_ amp,_x (k) + {\-μ)\Χ (k) |或,对该第一频段的频域系数平方值进行平滑滤波的运算为^ — /^(幻二芦义—^“^-!化-^ +卩-⑷无彳^^其中,P为平滑滤波系数,X_amPi(k)表示第i帧的第k个频点的滤波输出值,IA )为第i帧的第k个频点解码后的MDCT系数,且 i = 0 时,X.amp^! (k) = 0。
36.如权利要求33所述的系统,其特征在于,所述第一频段是根据频谱的统计特性确定的能量比较集中的低频的频段,其中低频指小于二分之一信号总带宽的频谱成分。
37.如权利要求33所述的系统,其特征在于所述音调位置搜索模块计算模块直接从第一频段对应的频域系数的滤波输出值中搜索初始最大值,将该最大值作为第一频段滤波输出值的最大极值。
38.如权利要求33所述的系统,其特征在于所述音调位置搜索模块确定滤波输出值的最大极值时,将该第一频段的其中一段作为第二频段,先从第二频段对应的频域系数的滤波输出值中搜索初始最大值,再根据该初始最大值对应的频域系数的位置进行不同的处理a.如果该初始最大值为第二频段最低频率的频域系数的滤波输出值,则将该第二频段最低频率的频域系数的滤波输出值与在第一频段中前一个更低频率的频域系数的滤波输出值相比较,依次向前比较,直到当前频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最低频率的频域系数的滤波输出值大于后一个频域系数的滤波输出值时,则第一频段的最低频率的频域系数的滤波输出值为最终确定的最大极值;b.如果该初始最大值为第二频段最高频率的频域系数的滤波输出值,则将该第二频段最高频率的频域系数的滤波输出值与在第一频段中后一个更高频率的频域系数的滤波输出值相比较,依次向后比较,直到当前频域系数的滤波输出值比后一个频域系数的滤波输出值大时,则该当前频域系数的滤波输出值为最终确定的最大极值,或,直到比较得出第一频段的最高频率的频域系数的滤波输出值比前一个频域系数的滤波输出值大时,则第一频段的最高频率的频域系数的滤波输出值为最终确定的最大极值;c.如果该初始最大值为第二频段最低频率与最高频率之间的频域系数的滤波输出值, 则该初始最大值对应的频域系数为音调所在的位置,即,该初始最大值为最终确定的最大极值。
39.如权利要求33所述的系统,其特征在于所述源频段复制起始序号计算模块计算需要进行频带复制的零比特编码子带的源频段复制起始序号的过程包括获得当前需要重构频域系数的零比特编码子带的起始频点的序号,记为fillband_start_freq,将音调对应的频点的序号记为Tonal_pos,将Tonal_pos 加1得到复制周期copy_period,将源频段起始序号记为copybancLoffset,将fillband_ start_freq的值循环减去c0py_peri0d,直到该值落在源频段的序号的值区间,该值为源频段复制起始序号,记为c0py_p0S_m0d。
40.如权利要求33所述的系统,其特征在于频带复制模块进行频带复制时,将以源频段复制起始序号开始的频域系数依次向后复制到以fillband_start_freq为起始位置的零比特编码子带上,直到源频段复制的频点到达Tonalpos+copybancLoffset频点后,重新将从第copybancLoffset个频点开始的频域系数继续向后复制到该零比特编码子带上, 依此类推,直到完成当前零比特编码子带的所有频域系数复制。
41.如权利要求31所述的系统,其特征在于所述比特分配单元还用于为所有有效噪声填充子带分配比特或跳过一个或几个低频的有效噪声填充子带,为后续的较高频的有效噪声填充子带分配比特;所述能量调整子单元对频带复制后得到的频域系数进行能量调整;所述噪声填充子单元对能量调整后的频域系数及未分配比特的噪声填充子带中的零比特编码子带进行噪声填充。
全文摘要
本发明涉及一种音频编解码方法、系统及噪声水平估计方法,本发明的噪声水平估计方法包括根据待编码音频信号的频域系数估计待编码音频信号的功率谱;根据计算得到的功率谱估计零比特编码子带音频信号的噪声水平,该噪声水平用于在解码时控制噪声填充和频带复制的能量的比例;其中,零比特编码子带指分配到的比特数为零的编码子带。本发明可以以很好地重构未被编码的频域系数。
文档编号G10L19/00GK102194457SQ20101918506
公开日2011年9月21日 申请日期2010年3月2日 优先权日2010年3月2日
发明者彭科, 江东平, 袁浩, 陈国明, 黎家力 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1