对音频信号进行重采样以用于低延迟编码/解码的制作方法

文档序号:9916669阅读:816来源:国知局
对音频信号进行重采样以用于低延迟编码/解码的制作方法
【技术领域】
[0001] 本发明设及对音频信号进行处理W便对其进行传输或存储。更具体地,本发明设 及在对音频信号进行编码或解码时采样频率的变化。
【背景技术】
[0002] 存在许多技术用于压缩(有损耗)音频信号(如语音或音乐)。编码可W直接在输入 信号的采样频率下进行,如例如在口U-T建议G. 711或G. 729中那样,其中,在8曲Z下对输入 信号进行采样,并且编码器和解码器在此同一个频率下进行操作。
[0003] 然而,一些编码方法使用采样频率的变化来例如降低编码的复杂度、根据不同的 有待编码的频率子带对编码进行适配、或者对输入信号进行转换W使其与编码器的预定义 内部采样频率相对应。
[0004] 在口U-T建议G.722中定义的子带编码中,在16kHz上的输入信号被划分成由ADPCM (自适应差分脉冲编码调制)型编码器单独编码的2个子带(在8k化下进行采样)。运种划分 成两个子带是由23阶的具有有限脉冲响应的二次模镜像滤波器组所实施的,其理论上产生 16毫秒23个样本的分析合成延迟(编码器+解码器);该滤波器组是用多相实现方式来实现 的。G.722中划分成两个子带使得可W根据其先验感知重要性来W预定方式向运两个子带 分配不同的比特率,并且还通过在较低频率下执行两个ADPCM型编码器来降低总体编码复 杂度。然而,与直接ADPCM编码相比较,其引起了算法延迟。
[0005] 已知各种用于通过使用(例如并且W非详尽的方式)FIR(有限脉冲响应)滤波器、 IIR(无限脉冲响应)滤波器或多项式插值(包括样条)来改变数字信号的采样频率(又称为 重采样)的方法。可W在例如R.W.沙费尔(3.胖.5证日'日')、^1?罗宾纳化.1?.1?日6111日')的文章 "Digital Si即al Processing Approach to Inte;rpolation(插值的数字信号处理法)"电 气与电子工程师协会会报,第61卷,第6期,1973年6月,692-702页中找到对常规重采样方法 的综述。
[0006] FIR滤波器(对称型)的优点在于其简化的实现方式并且一一受制于某些条件一一 在于确保线性相位的可能性。线性相位滤波使得可W保存输入信号的波形,但其还可能伴 有可能在瞬态产生前回波型伪信号的时间扩展(或振荡)。本方法引起一般大约1毫秒到几 毫秒的延迟(其取决于脉冲响应的长度)W确保适当的滤波特性(带宽中的纹波、足W消除 混叠图像或频谱图像的抑制水平……)。
[0007] 通过IIR滤波器进行采样的替代方案一般产生非线性相位,除非通过如在例如 口.八.雷加利亚".4.1?6旨日11日)、5.1(.密特拉(5.1(.]\111'日)、?.?.威德亚纳森 (P . P . Vaidyanathan )的W下文章中所描述的附加全通滤波级与MATLAB软件的 "iirg;rpdelay"例程的示例性实现方式一起对相位进行补偿:"!'he Digital All-化SS Filter = A Versatile Signal Processing Building Block"(数字全通滤波器:通用信号 处理构造块),电气与电子工程师协会会报,第76卷,第I期,1988年I月;IIR滤波器一般具有 较低阶但在定点表示法中实现起来更加复杂,滤波器的状态(或记忆)针对递归部分能够达 到较高的动态值,并且如果采用通过全通滤波进行相位补偿,则运个问题被放大。
[000引图1展示了通过在64曲Z下具有2*60+1 = 121个系数长度的FIR滤波器按照4/5的比 率从16曲Z变化到12.SkHz进行下采样的示例。X轴表示时间(基于毫秒W表示在不同频率下 计时的信号),并且y轴表示振幅。顶部的正方形表示在16kHz下的输入信号的样本的时间位 置;运里,假设运些样本与20毫秒的帖的末尾相对应。实竖直线标记在16kHz下的相应采样 时刻。在该图的底部,虚竖直线标记在12. SkHz下的相应采样时刻,并且星形表示在12. SkHz 下的输出样本。还表示了 FIR滤波器在64kHz下的121个系数的脉冲响应(对称型),运个响应 被定位成用于计算当前帖在12. SkHz下的最后的样本(脉冲响应最大值的位置与运个样本 相对准)。那些圆形示出了多相表示中所使用的值(与输入采样时刻相对应);为了获得输出 样本,运些值乘W相应的输入样本,并且将运些结果加在一起。在运个图中应注意的是,无 法确切地计算在12.8曲Z下的12个样本(直到输入帖的末尾),因为当前帖的末尾(下一个帖 的开头)之后的输入样本还未知;图1的情况中的下采样延迟是12个样本,即,12/12.8 = 0.9375 毫秒。
[0009]有多种技术用于减小由FIR类型的采样频率的变化所引起的延迟。
[0010] 在3GPP AMR-WB标准(还被定义为ITU-T建议G. 722.2)中,在应用CELP型的编码之 前,W12.SkHz的内部频率对在16kHz下采样的输入信号进行下采样;然后,在16kHz下对在 12.8曲Z下解码的信号进行重采样,并且将其与高频带信号进行组合。
[0011] 穿过12.8曲Z的中频频率的优点在于其使得可W降低CELP编码的复杂度并且还具 有是2的幕次方的倍数的帖长度,运方便了对某些CELP参数的编码。所使用的方法是通过 FIR滤波器(在64kHz下具有121个系数)按照因数4/5进行的常规重采样,其中,通过多相实 现方式来最小化复杂度。
[0012] 理论上,运种在编码器上W及在AMR-WB解码器上进行的重采样应当W与图1中所 表示的处理相类似的方式产生延迟。在AMR-WB编解码器的情况下,具有121个系数的FIR滤 波器,总延迟理论上应当是在64kHz下2 X 60个样本,即,在16kHz下2 X 15个样本或者1.875 毫秒;实际上,在AMR-WB编码器上实现一种特定技术从而仅消除(补偿)在编码器部分中的 相关联延迟并且因此将有效延迟除W2。
[0013] 在3GPP标准TS 26.190条款5.1W及ITU-T建议G.722.2条款5.1中描述了运种补偿 方法。运种用于补偿FIR滤波延迟的方法在于:为在16kHz下采样的有待转换到12.8曲Z的每 个新帖在当前帖的末尾添加预定数量的零。在输入采样频率下对运些零进行定义,并且它 们的数量与重采样FIR滤波器在此频率下的延迟相对应(即,在16kHz下添加15个零)。每个 20毫秒帖(320个样本)实施一次重采样。因此,AMR-WB编码器中的重采样相当于在左侧(朝 过去)用从前一个帖的末尾开始的30个样本(重采样记忆)并且在右侧用15个零来补充具有 320个样本的输入帖,从而形成具有30+320+15 = 365个样本的向量,然后,W因数4/5对该向 量进行重采样。因此,由于添加了空的未来信号,可W用零相位来实现FIR滤波器,因此没有 延迟;理论上,根据W下步骤进行按因数4/5进行的FIR重采样:
[0014] -通过在每个输入样本之后在0处添加3个样本进行4倍的上采样(从16kHz到 64 曲Z)
[0015] -120阶的对称FIR型传递函数巧腿(Z)在64k化下进行低通滤波
[0016] -通过仅将来自经低通滤波的信号的五个样本中的一个样本排除在外的5倍下采 样(从64曲Z到12.8曲Z )。
[0017]实际上,运种重采样是根据优化的多相实现方式W等效方式实现的,而无需计算 在64kHz下的中间信号并且无需将有待转换的信号与多个零进行连结(参见AMR-WB编解码 器的源代码的"decim54.c"文件);针对每个"相位"的FIR滤波相当于在12.8曲Z下具有12个 样本延迟(即,0.9375毫秒)的12.8曲Z下的24阶FIR滤波器。
[001引从16kHz到12.8曲Z的每个20毫秒帖的FIR重采样的结果与在"完整的"输入信号 (即,未被切割成多个帖)上所形成的重采样完全相同,而在12.SkHz下每个产生的帖的最后 12个样本除外,由于将零块用作未来信号而不是仅在下一个帖上可用的"真实"未来信号, 运些样本中包括误差。实际上,所引入的运些零模拟了在下一个帖中的空输入信号的情况。
[0019] 图2中在20毫秒帖的末尾处展示了运种处理,该图通过在顶部的正方形表示在 1化化下的最后的输入样本;竖直线标记在16曲Z下的相应采样时刻。在图的底部,星形表示 在12.SkHz下的输出样本,运些输出样本可W通过W12个样本的延迟进行的常规下采样来 获得。然后,在底部的=角形与通过使用在帖的末尾添加的至少一个空值样本W便能够继 续进行滤波并减小延迟而获得的在12.SkHz下的12个样本相对应。根据运些样本相对于用 常规滤波所获得的输出的末尾的位置从#1到#12对它们进行编号。还表示了在与12.8曲Z下 的最后输出样本相对应的位置中所使用的滤波器在64kHz的脉冲响应(该脉冲响应最大值 与运个样本相对准)。那些圆形示出了多相表示中所使用的值(与输入采样时刻相对应);为 了获得输出样本,运些值乘W相应的输入样本或者对于在帖的末尾之后的值乘W0,并且将 运些结果加在一起。运里可W看出,针对运个最后样本,自脉冲响应开始使用的几乎一半样 本乘W所添加的零,运因此引起显著的估计误差。还将理解到,在常规滤波之后所生成的运 些第一样本的误差(也就是说只有真实输入信号)较小(在其末尾处脉冲响应的权重较低), 并且误差随着与常规滤波的距离增大而变大(于是,脉冲响应的权重更大)。在图7的结果中 将能够观察到运种情况。
[0020] AMR-WB编解码器中所使用的延迟补偿方法(其中,在每个有待重采样的20毫秒块 (或帖)的末尾添加零)使得可W消除编码器上的重采样延迟,但是当一旦已知下一个帖的 输入信号则对在当前帖的末尾处所生成的值(在输入上添加零)直接进行编码并且未用真 值对其进行替代时,一般是不令人满意的。实际上,在每个帖的末尾的运些规则误差在向下 一个帖的开头处的真实输出信号过渡时产生周期性间断。运些间断经常是可听见的并且非 常令人讨厌。运就是延迟补偿仅应用于编码器上并且仅应用于未来信号部分(被称为前瞻) 而不应用于AMR-WB解码器上的原因。
[0021] 实际上,在AMR-WB编码器中,1化化下的每个新的20毫秒输入帖与对应于当前帖的 有待通过ACELP模型进行编码的最后15毫秒W及未来信号的5毫秒(或前瞻)相对应的时间 段。当前帖的有待编码的前5毫秒已经被接收并且被存储为前一段的"前瞻"。因此,在编码 器上从16kHz到12. SMz进行重采样之后所获得的最后12个样本与5毫秒未来信号在 12.8曲Z下的最后样本相对应。因此,用过去的原始信号的5毫秒(环回)来补充在12.8曲Z下 的当前20毫秒帖(即,256个样本)和未来信号的5毫秒(即,64个样本),W便形成384个样本 (30毫
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1