专利名称:用于对多声道数字音频信号进行压缩编码的编码器的制作方法
技术领域:
本发明涉及数字音频信号的编码/解码设备及其方法,更确切地说,是关于对多声道数字音频信号进行压缩编码/解码的设备及方法。
背景技术:
多声道(包括立体声)数字音频压缩编码技术已被广泛应用于VCD,SVCD,DVD,卫星电视,数字电视,和互联网(Internet)等领域中。它要解决的主要问题是用于表达多声道数字音频信号的码率很高,但可用于传播或储存它的信道容量却非常有限。例如,用PCM来表达48kHz采样率每个样本24比特的5.1声道的环绕声需要6912kbps(千比特/秒)的码率,而如数字电视之类的信道容量比较有限的应用可分配给数字音频信号的码率一般为384kbps,即使是DVD这样的信道容量比较宽松的应用可分配给数字音频信号的码率也一般为384kbps,768kbps,和1536kbps。在此,数字音频压缩编码技术需要提供高达18倍的压缩比。
数字音频压缩编码技术的研究开发可以追溯到70年代早期。经过三十年的发展,目前广泛采用的技术框架已基本定型为帧长选择器,频率或子带分解器,暂态检测器,线性预测器,比特分配器,量化器,熵编码器,和多路复用器。
例如,MPEG 2AAC[参考文献1]和MPEG 4AAC[参考文献2]技术把输入音频PCM信号流分成1024个样本一帧,然后对每帧信号作暂态检测。如果未发现本帧样本中有暂态响应,则(可选择地)作长期线性预测,然后作1024个子带的频率分解,再(可选择地)对每个子代信号作短期线性预测。如果发现有暂态响应,则进一步把本帧的1024个样本分成8个子帧,每帧128个样本,然后作128个子带的频率分解,并把暂态响应所在的那些子帧的位置传送给多路复用器。随后作基于人耳听觉模型的全局比特分配器,对子带信号作非线性标量量化,和对量化指数作哈夫曼(Huffman)编码。最后,多路复用器把以上各步骤所产生的辅助信息和表达各个子带样本的哈夫曼码打包成一个完整的以帧为单位的压缩码流。AAC的优点是压缩效率高。但编码器和解码器复杂,解码后的音频信号的音质不完全透明。
再例如,DTS的多声道音频编码器[参考文献3,4和5]的帧长选择器可根据采样率和码率从256,512,1024,2048,和4096中选一个帧长,并按此帧长把输入音频PCM信号流分成帧。随后作32个子带的频率分解,再对每个子带信号作子带编码。子带编码包括暂态检测,线性预测,基于人耳听觉模型的全局比特分配器,标量/矢量量化,和哈夫曼(Huffman)编码。最后,多路复用器把以上各步骤所产生的辅助信息和表达各个子带样本的量化指数或哈夫曼码打包成一个完整的以帧为单位的压缩码流。DTS的优点是解码后的音频信号的音质好,在高码率(如1536kbps)时被很多人认为完全透明。但它的压缩效率不高。
随着数字电视近几年在欧州和北美的商业广播,多声道音频节目作为电视伴音的配送成为一个迫切需要解决的问题。这里涉及到的一个主要问题是目前的电视台和录音棚的设施仅仅支持立体声。把它们改成多声道意味着更换与音频相关的几乎全部设备。把多声道节目压缩到立体声能支持的码率即可避免这个问题。对多声道节目压缩后也有利于各个电视台和录音棚之间传输和分享节目。但压缩后的音频码流引入了帧的结构。如果音频帧的长度与视频帧的不等,在对视频码流在其帧的边界上作剪辑时就会切到音频帧的内部,从而破坏音频帧的结构,使解码器出错。另外,在多声道节目的制作和配送过程中往往需要对其进行多次的编码和解码(纵列编码Tandem Coding)操作。这要求压缩技术必须能经得起至少十次以上的纵列编码而听不到失真。
Dolby E是一个专为以上应用而设计的音频压缩编码技术[参考文献6]。它的帧长度固定为1792,但它用采样率变换的方法来使一帧Dolby E的数据流所占的时间与各种通用的视频帧频率(NTSC,PAL,和电影)的帧长度相等以达到能与它们同步剪辑的目的。同时,它又用高码率来确保能经得起十次以上的纵列编码而听不到失真。但是,Dolby E的压缩效率不高,不适合作为把多声道节目传输到最终用户(如电视机)的压缩技术。因此,电视台在用Dolby E制作好节目后还得解码成PCM,然后再编码成AC-3[参考文献7]或MPEG之类的高压缩效率的编码技术的码流后才能发射出去。图1示出采用Dolby E作节目配送的压缩编码技术,AC-3作节目传输的压缩编码技术的电视台配送和传输音频节目的过程。从中可以看出,这个电视台法方案存在以下几个困难1)音频信号的失真大Dolby E本身的采样率转换引入失真,从Dolby E格式的码流到AC-3格式的码流的转移编码(Transcoding)又引入新的失真。2)已发射过的节目很难再用如图1所示,如果要再用已发射过的节目,它必须被解码成PCM再经Dolby E编码后才能与其他节目(如广告等)切换。在发射时还得重新经过从Dolby E解码到AC-3编码的转移编码过程。由于作最终传输的码率一般不高,已发射过的节目在经过以上这一串(AC-3解码->Dolby E编码->Dolby E解码->AC-3编码)转移编码后的音质很难或无法保证。3)由于Dolby E的输入和输出的采样率没有简单的倍频关系,其编码和解码器都很复杂昂贵。
发明内容
本发明的第一方面,提供一种高效高保真的对多声道(包括单声道)音频信号进行压缩编码的编码器及其编码方法。当该音频信号作为视频信号的伴音时,该方法既能满足配送多声道数字音频节目的要求,也能满足以中低码率传播多声道数字音频节目的要求(压缩效率高)。也即,它实现了Dolby E和其它传输压缩编码技术如AC-3加起来的功能。
本发明在该方面的编码器包括1)帧长选择器,用于根据音频信号的采样率,码率,和视频帧频率(当多声道音频信号作为视频信号的伴音时)选择音频帧长;2)子带分解滤波器组,用于将一帧一帧输入的音频信号分解成多个子带信号;3)暂态检测器,用于将输入的子带信号分成暂态段与稳态段;4)比特分配器,用于将由目标码率所决定的比特资源分配到各个子带段;5)子带量化器,用于对所述的子带信号以段为单位量化;6)多路复用器(MUX),用于将子带的量化指数以及相关的辅助信息多路复用打包成一个以帧为单位的完整的码流。
本发明在该方面的编码方法包括1)根据音频信号的采样率,码率,和视频帧频率(当多声道音频信号作为视频信号的伴音时)选择音频帧长;2)通过子带分解滤波器组将一帧一帧输入的音频信号分解成多个子带信号;3)将各个子带信号分成暂态段与稳态段;4)将由目标码率所决定的比特资源分配到各个子带段;5)对所述的子带信号以段为单位量化;6)将子带信号的量化指数以及相关的辅助信息多路复用打包成一个以帧为单位的完整的码流。
本发明的第二方面,提供一种对由上述编码器按上述编码方法编码形成的音频码流进行解码的解码器及其解码方法。其中该解码器包括1)多路分解器(DEMUX),用于从上述编码的码流中多路分解出子带信号的量化指数以及相关的如音频帧长,子带段边界,和比特分配等辅助信息;2)子带逆量化器,用于依据相关的辅助信息以段为单位由子带信号的量化指数重建子带信号;3)子带合成滤波器组,用于由子带信号重建音频信号。
本发明在该方面的解码方法包括1)从上述音频编码的码流中多路分解出子带信号的量化指数以及相关的辅助信息;2)依据相关的辅助信息以段为单位由子带信号的量化指数重建子带信号;3)用子带合成滤波器组由子带信号重建音频信号。
当多声道音频信号作为视频信号的伴音时,本发明选择的音频帧长与视频帧长有简单的倍数关系或者视频帧长是音频帧长的正整数倍,或者音频帧长是视频帧长的整数倍。这样,本发明产生的码流可以与视频节目同步剪辑。
更进一步,当多声道音频信号作为视频信号的伴音时,本发明选择的子带分解滤波器组的子带数是不同视频帧频(PAL和电影)所对应的不同音频帧长的公因子。这样,当视频节目的帧频发生变化时,本发明的编码器和解码器只须改变音频帧长与这个公因子的倍数,而不是子带数,即可维持音频帧长与视频帧长的前述倍数关系,以维持与视频节目的同步剪辑能力。由于子带数未变,编码器和解码器的各个延迟线也不用改变,因而编码器和解码器不用复位即可适应视频节目的帧频的变化。
以上对子带数和帧长度的限制并不妨碍本发明有一个很短的帧长度以提供一个低延迟工作模式。
本发明的子带分解器与合成器所采用的滤波器较长以保证在对经本发明压缩编码后的数据流在帧的边界上作剪辑后能保持解码后的音频信号平滑过渡。
本发明的编码系统的暂态检测器把输入子带信号分割成暂态和平稳片段。它有很高的时间分辨率,以减小音频压缩编码常碰到的前向回声(Pre-echo)效应。本发明随后的各个部件对输入音频信号的处理都以片段为单位进行。
本发明利用跨声道的音频信号在同一子带(频率)上的相关性来作长期和短期预测。这样既可充分地利用音频信号的周期性及声道之间的相关性,又可采用低阶数的预测器以降低运算量。
本发明的比特分配器只非常有限地利用了人耳听觉模型以达到简化比特分配的目的。这样既可极大的减小比特分配的计算复杂度,还可仅仅用一个参数来表达比特分配的结果。解码器在接收到这个参数后即可根据它而很简单地准确重建编码器用的比特分配。这样就节省掉了其他技术用于传送比特分配的比特资源。由于这个节省,用这种方法为编码效率带来的改善很可能能与用很复杂的人耳听觉模型的媲美。
在量化方面,本专利采用的策略是在量化级少时用矢量量化,量化级多时用标量量化,以达到优化压缩效率,解码复杂度和对记忆单元的需求的目的。
图1采用Dolby的音频压缩技术的数字电视节目的配送和传输方案。
图2第一实施例的编码器。
图3本发明暂态检测示意图。
图4第二实施例的编码器。
图5人耳在安静环境下的听觉门限(Threshold in Quite)。
图6第三实施例的编码器。
图7第四实施例的编码器。
图8本声道线性预测与预测误差信号的量化。
图9跨声道线性预测与预测误差信号的量化。
图10本声道与跨声道线性预测并用,以及预测误差信号的量化。
图11编码流程图。
图12解码流程图。
图13解码器。
图14采用本声道线性预测时子带样本的重建过程。
图15采用跨声道线性预测时子带样本的重建过程。
图16本声道和跨声道线性预测并用时子带样本的重建过程。
图17采用本发明的编码器和解码器的数字电视节目的配送和传输示意图。
具体实施例方式
本发明的编码及解码方法对各个声道的处理几乎是完全分离和相同的,因此以下对本发明的描述都基于一个声道,除非另外说明。
编码[实施例1]如图2所示,本发明的编码器由帧长选择器1,子带分解滤波器组2、暂态检测器3、比特分配器4,子带量化器5,以及多路复用器6构成,用于对输入的音频信号进行压缩编码。该音频信号可以是数字电视的伴音信号。以下通过对各组件的详细描述来说明编码器的工作原理。
帧长选择器1帧长选择器1的作用是把输入的音频信号按照一定的帧长分成帧。至于帧长的选择,一般认为帧长越大,编码压缩效率越高,但编码延迟越大,编码器和解码器对记忆单元的需求量也越大。因此,码率高时一般选用小一些的帧长,码率低时一般选用大一些的帧长。由于编码延迟与帧长和采样率的乘积成正比,在选择帧长时一定得考虑采样率。
当音频信号是视频信号的伴音时,在选择帧长时除了要考虑以上因素外,还得考虑作为视频信号的伴音的一些特殊要求。这些特殊要求中最突出的,同时也是本发明要解决的问题之一,是被压缩后的音频码流能与视频信号作同步剪辑。本发明用“同步剪辑”来指被压缩后的音频码流与视频码流的合理剪辑点在时间上完全同步,以使得在它们的任何一个剪辑点同时对音视频码流作剪辑后,音视频码流都不出错,并且解码后的音视频信号在剪辑点都能平滑过渡。
实现同步剪辑的基本要求是一帧音频码流所占的时间必须与一帧视频码流所占的时间有一个简单的倍数关系。否则,在视频帧的边界上剪辑视频码流时就会剪在音频帧的内部,破坏音频帧的结构,引起解码器出错。我们考虑两种情况。第一种为视频帧长是音频帧长的整数倍或相等的情况。此时可在每个视频帧的边界上作剪辑,而此剪辑点总会落在音频帧的边界上。
对于25帧/秒(PAL)的视频信号,其每帧所占的时间为0.04秒。相对于以48000kHz采样的音频信号,它相当于1920个样本。由于1920=3×5×27,这些因子的任何组合而形成的音频帧长都可与25帧/秒的视频信号做同步编辑。
对于24帧/秒(电影)的视频信号,与其对等的一帧音频信号(48000kHz采样率)的样本数为2000=24×53。同理,由这些因子组合而形成的音频帧长都可与视频信号做同步剪辑。
对音频帧长度选择的另一个限制是它必须是后面将要经历的子带分解滤波器组的子带数的整数倍。如果从1920和2000的最大公因子24×5中选一些组合作为子带数,我们则可在不变动子带数的条件下实现与24帧/秒和25帧/秒这两种视频信号的同步编辑。在子带分解滤波器组的描述中将对此做进一步的描述。
现在考虑第二种情况,即音频帧长是视频帧长的整数倍(如V倍)的情况。为了确保音频帧的完整性,必须每隔V个视频帧才有一个音频信号的剪辑点。被压缩过的视频码流往往要隔好几帧才会有一个剪辑点,而这个间隔还可能是动态的。假定这个动态间隔的最大值为W,则能同时满足视频和音频剪辑限制的最大剪辑间隔为WV个视频帧。这显然需要很大的存储量。但是,前面所描述的方法任然适用。
子带分解滤波器组2子带分解滤波器组2用于把由帧长选择器1传过来的音频信号分解成M个子带信号。在这里可以采用各种各样的滤波器组[参考文献8],包括但不限于完美重建和非完美重建滤波器组,正交和非正交滤波器组,树状滤波器组,余弦调制的滤波器组,子波包等。为了保证在对经本发明编码的码流进行剪辑后音频信号的平滑性,特别推荐使用重叠较长的滤波器组。
由于运算量低和设计简单,余弦调制的滤波器组是本发明优选滤波器组。它的第k个子带滤波器为[参考文献8]hk(n)=2p0(n)cos(πM(k+0.5)(n-N2)+λk)---(1)]]>其中n为样本指数,k为子带指数,M为子带数,p0(·)为原型滤波器,N为原型滤器的长度,λk=(-1)kπ4.]]>本发明对子带分解滤波器组2的子带数M有一定的限制,其原则是子带数M必须是对应不同的视频帧频率由帧长选择器1选择的音频帧长的一个公因子。也即,所有的可用的音频帧长都可由以下公式表达Fsize=k*M (2)其中Fsize为音频帧长,k为一个正整数。这样,当视频的帧频发生变化时,帧长选择器1只需选择另一个k,就可在保持子带数M不变的条件下,选择一个与新的视频帧频对应的音频帧长。保持子带数不变就意味着编码器和解码器的各种延迟线不变。当视频信号的帧频率变化时,编码器和解码器都不需复位,只用对上式中的k作相应调整即能平稳地适应这个变化。
例如,在描述帧长选择器1时已提到,对于以48kHz采样的音频信号,2000可作为相对于24帧/秒的视频信号的音频帧长,1920可作为相对于25帧/秒的视频信号的音频帧长。如果选择子带数M为2000和1920的最大公因子80,则只须选择k=25和24即可在保持子带数不变的条件下分别实现2000和1920的音频帧长。当然,其它公因子,如40和20等,都可达到同样的效果。表1列出了本发明优选的音频帧长及滤波器组的子带数表1
上表中的短帧长,如200,240,400,480等,很显然为本音频压缩方法提供了低延迟模式。因此,本发明对音频帧长及子带数的限制并不防碍本发明拥有低延迟模式。
暂态检测器3从子带分解滤波器组2输出的子带信号随即进入暂态检测器3。暂态检测器3依据一定的检测尺度来分析每帧子带信号的暂态情况,然后把一帧子带信号进一步分割成暂态段和稳态段,并输出每段的位置信息。需要特别强调的是,这些段位置自适应地随暂态情况而变化。本发明对子带信号的后续处理以段(以下称子带段)为基本单位。
以图3所示的子带信号为例,检测器3会判断A为稳态段,B为暂态段,C为稳态段,并输出每段的位置信息如段长30,20,和50。
用于暂态检测的尺度包括但不限于子带信号的能量,能量的对数,能量熵等。检测技术可以是简单的门限检测,也可以是一些很复杂的技术,包括但不限于著名的K-Means算法[参考文献8]。
比特分配器4比特分配器4可以用本技术领域常用的方法依据信噪比(SNR)或信号对遮盖比(SMR)为每个声道的每个子带段分配比特[参考文献1--9]。比特分配的结果为用于量化每个声道的每个子带段的每个子带样本的比特数。此结果被送给子带量化器5和多路复用器6。
子带量化器5子带量化器5包括一组多个拥有不同量化方式和量化级数的量化器[参考文献9]。这组量化器的选择与配置对压缩效率影响很大。由于量化指数的概率分布不均匀(尤其是在量化级少时),故一般压缩技术多采用标量量化加熵编码(如Huffman码)的方法。但熵编码的解码方法复杂,运算量大而且不均匀,为解码器的商业实现带来了不少困难。
为此,本发明优选地采用在量化级少时用矢量量化,量化级多时用标量量化。
子带量化器5依据比特分配的结果来为每个子带段从上述量化器组中选取一个具体的量化器,并以此量化器量化该子带段内的每一个子带样本。
对每个子带段内的每个子带样本的量化过程分以下四步(图2)1)估计比例因子比例因子估计器51可以用该子带段的所有样本的绝对值的最大值,该子带段的所有样本的方差,或其它变量作为比例因子。
2)量化比例因子比例因子本身也需要量化以便传送给解码器。由于人耳对音量的敏感度随音量增大而减小,故对比例因子的量化应采用非线性方式,如对数量化。以方差为例,设第c个声道第k个子带的第d个段的方差为σ(c,k,d),则比例因子量化器52为该比例因子选的的量化指数为s(c,k,,d)=logσ(c,k,d)α,---(2)]]>其中α为量化步长。
3)归一化子带样本子带样本归一化器53用量化后重建的比例因子对该子带段内的所有样本归一化。
4)量化子带样本量化器选取器54依据比特分配器4送来的比特数选取具体的量化器,然后子带样本量化器55用它对归一化后的子带样本进行量化以得到每个样本的量化指数。
多路复用器(MUX)6多路复用器6把以上各个编码器部件所产生的以下信息打包在一起以形成一个完整的比特流或码流。
帧长选择器1选择的音频帧长。
暂态检测器3输出的段位置信息。
比特分配器4为每个子带段分配的比特数。
子带量化器5产生的比例因子的量化指数和每个子带样本的量化指数。
多路复用器6还会把其它辅助信息打包。这些辅助信息包括但不限于输入音频信号的采样频率,音箱设置,纠错码,时间码等。
本发明的第二实施例的编码器如图4所示。其大部分组件与实施例1的相同,区别在于本实施例的独特的比特分配方法。具体地说,本实施例的比特分配不象实施例1那样依据信噪比(SNR)以或信号对遮盖比(SMR)来为每个子带段分配比特,而是依据比例因子量化器52输出的比例因子量化指数用以下公式来为每个子带段分配比特。
b(c,k,d)=f(α·s(c,k,d))-θ(k)-β(3)其中1)b(c,k,d)是分配给当前子带段的每个样本的比特数。
2)f(α·s(c,k,d))是一个严格单调递增函数。它可被优选地设为f(α·s(c,k,d))=[α·s(c,k,d)]q,其中0<q≤2。它还可被进一步优选地设为f(α·s(c,k,d))=α·s(c,k,d)。
3)θ(k)可以优选地设为如图5所示的的人耳在安静环境下的听觉门限(Threshold in Quite)的近似曲线[参考文献1,2和10],更可优选地设为零以简化计算。
4)β是比特调整因子。
从式(3)可以看出,在比特调整因子β确定的情况下,分配到每个子带段的每个样本的比特数完全取决于其比例因子的量化指数。
很明显,β越小(3)式分配给各个子带段的比特越多;β越大(3)式分配给各子带段的比特越少。比特分配的任务是在各个子带段所占用的比特数的总和不超过给定的目标码率(比特率)所允许分配给每帧音频信号的总比特数的条件下找到β的最小值。
比特分配可以是全局最优的,也即所有的声道公用一个比特分配调整因子。假定在一个给定的目标码率下所允许分配给每帧音频信号的总比特数为Total_Bits(这是在减去传送各种各样的辅助信息所需的比特数后的总值,以后总是如此假定,不再另外说明),比特调整因子搜索器41须搜索不同的β值以找到一个满足如下条件的最小β值ΣcΣkΣdb(c,k,d)·n(c,k,d)≤Total_Bits---(4)]]>其中n(c,k,d)为子带段的样本数。
由此求得的β就可用来按照式(3)为所有声道的每个子带段分配比特。同时,编码器只须把这个比特分配调整因子传给解码器,解码器也就能依据它和比例因子的量化指数按照式(3)为所有声道的每个子带段重建编码器用的比特分配。
比特分配也可以是局部分别最优的,如每个声道分别拥有一个单独的比特分配调整因子。假定在一个给定的目标码率下按照某种预先确定的方式分配给第c声道的每帧音频信号的总比特数为Total_Bits(c)。比特调整因子搜索器41须搜索不同的β值以找到一个满足如下条件的最小β值
ΣkΣdb(c,k,d)·n(c,k,d)≤Total_Bits(c)---(5)]]>此时,编码器就得为每个声道传送一个比特分配调整因子给解码器。显然,这个方法可以很直接地推广于用其它其它形式来分享比特分配调整因子的情况。
综上所述,本实施例的比特分配程序如下1)各个声道的所有比例因子量化器52把每个子带段的比例因子量化指数送给比特调整因子搜索器41。
2)比特调整因子搜索器41依据式(3)和(4)寻找到一个在给定码率下的全局最优的比特分配调整因子,并传给多路复用器6以及比特分配器42。或者,比特调整因子搜索器41依据式(3)和(5)为每个声道分别寻找到一个在给定码率下的对各个声道局部最优的比特分配调整因子,并把它们分别传给多路复用器6以及各自的比特分配器42。
3)比特分配器42按式(3)为每个子带段分配比特,并传给其对应的量化器选取器54。
由上可见,本发明的比特分配只非常有限地利用了人耳听觉模型以达到简化比特分配的目的。这样既可极大的减小比特分配的计算复杂度,还可仅仅用一个比特分配调整因子来表达比特分配的结果。在编码后的码流中仅须包含这个比特分配调整因子。解码器在接收到这个参数后可根据它用式(3)很简单地准确重建编码器用的比特分配。这样就节省掉了其他技术用于传送分配到每个子带段的比特数所需的比特资源。这些节省下来的比特资源可用于传送子带样本的量化指数,因而可以进一步提高音质。
本发明的第三实施例的编码器如图6所示。其大部分组件与其它实施例的相同,区别在于本实施例比其它实施例多了一个联合强度编码器7。联合强度编码的理论基础是人耳对声音的空间定位在高频(如高于7kHz时)主要依据声音的强度。如图6所示,在编码时该联合强度编码器7可以把由左右(或其它可联合)声道的暂态检测器3输出的的高频子带加起来,只传这个和子带(称为源声道的被联合编码的子带)的各个样本的量化指数,外加被联合声道的被联合子带的强度指数,以达到节省比特的目的。
当用到联合强度编码时,对源声道的被联合编码的子带段的比特分配必须考虑到其它被联合声道编码的同一子带段的比特需求。假定源声道为c,其他被联合编码的声道的总集为J,则在计算对c声道的被联合编码的子带段的比特分配时应采用的比例因子为s(c,k,d)=max{s(c,k,d),maxj∈J{s(j,k,d)}}---(6)]]>联合强度编码开始启用的频率如果过低可能会引起空间定位变窄,因此,在本实施例中,仅在低码率时才引用联合强度编码。
实施例4本发明的第四实施例的编码器如图7所示。其大部分组件与其它实施例的相同,区别在于本实施例比其它实施例多了一个跨声道的长期和短期线性预测器8。对每一段子带信号,本发明搜索它与本子带的短期和长期自相关性,及其与其它声道同一子带的信号的协相关性,以找到一个使预测误差最小的线性预测器8。设x(c,k,n)为第c个声道的第k个子带的第n个样本,则基于第s声道的对第c声道的线性预测为x^(c,k,n)=Σm=m0Aa(m)x(s,k,n-m)+Σm=0Bb(m)x(s,k,n-m-τ)---(7)]]>其中,a(m)和b(m)分别为短期和长期预测器的预测滤波器的系数,τ为长期预测滤波器的延迟。当s=c时,上述预测完全基于本声道,m0=1;当s≠c时,上述预测是跨声道的,m0=0。
用(7)式对每一个子带样本x(c,k,n)做出预测后,就可得到一个对应的预测误差e(c,k,n)=x(c,k,n)-x^(c,k,n).---(8)]]>
编码器的任务是找到一组最佳的预测系数a(m),b(m),和延迟τ以使在该子带段的总预测误差如以下的均方误差最小e2(c,k)=Σne2(c,k,n)=Σn(x(c,k,n)-x^(c,k,n))2.---(9)]]>如果子带信号x(c,k,n)的周期性较强,则预测误差的方差会比子带信号x(c,k,n)本身的方差小很多。这意味着线性预测的预测增益很高,预测很成功。此时就可用预测误差信号e(c,k,n)来取代x(c,k,n)送到子带量化器5。否则,就直接把子带信号x(c,k,n)送到子带量化器5。因此,线性预测器8的工作程序可归纳如下1)估计预测系数与预测增益。
2)如果预测增益高,将本子带段采用线性预测的决定、预测系数和延迟送到多路复用器6。同时,按(8)式产生预测误差信号,并将它送给量化器5。
3)如果预测增益不高,将本子带段不采用线性预测的决定送到多路复用器6。同时,将本子带段的样本x(c,k,n)送给量化器5。
当用到本声道预测时,为了避免量化误差在解码时扩散,对预测误差信号的量化必须闭环进行[参考文献8,9和11],如图8所示。由于解码器只能得到由量化器5输出的预测误差的量化指数,解码器只能用逆量化器9来重建预测误差,然后把它与预测值 相加来重建子带样本。而本声道预测器81也只能用这些重建的子带样本来预测未来的子带样本。也即,代入(7)式的子带样本实质上是重建的子带样本。
类似地,在作跨声道预测时,为了避免量化误差在解码时扩散,x(s,k,n)也必须是已解码后重建的子带样本,如图9所示。注意,图中9的预测器82是跨声道预测器,因为其输入的子带样本来自于另一个声道。
跨声道预测器82和本声道预测器81可以同时并用,如图10所示。首先,计算跨声道预测的误差
e1(c,k,n)=x(c,k,n)-Σm=m0A1a1(m)x(s,k,n-m)-Σm=0B1b1(m)x(s,k,n-m-τ1)---(10)]]>然后,对此误差作本声道预测e2(c,k,n)=e1(c,k,n)-Σm=m0A2a2(m)e1(c,k,n-m)-Σm=0B2b2(m)e1(c,k,n-m-τ2)---(11)]]>当用到跨声道预测时,编码器一定要确保在解码时源声道已经被解码。也就是说编码器一定要确保对各个声道的解码必须因循一定的可实现顺序解码的第一个声道一定只能用本声道预测,第二个声道只能用本声道预测或前面已解码的那个声道作跨声道预测。以此类推。
编码器可以搜索所有的可实现解码顺序以找到预测增益最大的解码顺序。编码器也可只作有限的搜索以得到次优解。
预测范例1长期或短期预测由于长期和短期预测并用时估计预测系数较难,故可采用或者长期或者短期预测的方式以减小复杂度x^(c,k,n)=Σm=0Bb(m)x(s,k,n-m-τ)]]>此时,τ小时为短期预测,τ大时为长期预测。
当以上公式用在跨声道预测和本声道预测同时并用的情况时,首先计算跨声道预测的残差e1(c,k,n)=x(c,k,n)-Σm=0B1b1(m)x(s,k,n-m-τ1)]]>其中,延迟τ1可取的最小值为零。然后,对此残差作本声道预测e2(c,k,n)=e1(c,k,n)-Σm=0B2b2(m)e1(c,k,n-m-τ2)]]>其中,延迟τ2可取的最小值为1。
预测范例2有限搜索的跨声道预测为了简化跨声道预测在搜索解码次序上的复杂度,本范例先找到头两个声道的最优次序。对随后的声道仅搜索本声道预测以及用头两个声道作源声道的跨声道预测。
为了进一步减小复杂度,可不做任何次序搜索,总用第一声道作为所有其它声道的跨声道预测的源声道。
较佳地,本发明的编码器还可以在音频帧输入到子带分解滤波器组2之前对音频帧进行跨声道和/或本声道预测,即在帧长选择器1与子带分解滤波器组2之间进一步包括一个跨声道和/或本声道预测器,此后,将预测误差输入到子带分解滤波器组2,并按照上面所描述的类似的处理对预测误差编码。
编码流程前述的四个实施例都可单独成为一个完整的编码器。但如果把它们的所有功能都汇总起来组成一个编码器,则可达到最佳压缩效率。图11示出了把本发明的四个实施例的所有功能汇合在一起时的编码流程。其中,联合强度编码,跨声道长短期预测,和全局比特分配是独立可选的。当它们中的任何一个未被选用时,其在图11中仅起一个把送入的数据不作任何改动地传出去的功能。当然,如果图11中的比特分配器没有被选用,另一个在实施例1中讨论过的通用比特分配器必须被引入以实现同样的功能。下面结合图2,4,6,7,8,9和10描述本发明的编码步骤(参见图11)。
E1)帧长选择帧长选择器1接收从每个声道输入的音频信号的样本,根据音频信号的采样率,目标码率,和视频帧频率(当多声道音频信号作为视频信号的伴音时)选择音频帧长,然后把帧长信息传送给编码器的其它组件。由于本发明的编码器及其方法是以帧为基本单位,编码器的所有组件,编码流程的每一步,都直接或间接地用到帧长。但为了描述的简洁明朗,图11没有把帧长信息的传送路径全部标出。在帧长确定后,帧长选择器1还按帧长把输入音频信号的样本分成帧,并一帧一帧地送入子带分解滤波器组2。本步骤不对输入音频信号本身作任何处理。
E2)子带分解子带分解滤波器组2把每一声道的音频信号分解为M个子带信号。
E3)暂态检测暂态检测器3分析每个子带信号的暂态情况,并据此把它分成暂态段和稳态段。然后,把每一段的位置信息传送给编码器的其它组件。由于与步骤E1类似的原因,图11没有把暂/稳态段的位置信息的传送路径全部标出。本步骤不对子带信号本身作任何处理。
E4)联合强度编码联合强度编码器7在作完联合强度编码后,抛弃被联合子带的样本,只将其每一子带段的强度指数传送给比特分配(E7)器4和多路复用(E9)器6。本步骤是本发明在低码率时优选的。不采用本步骤不影响编码器或方法的完整性,只是编码效率会有下降。
E5)跨声道长期和短期预测跨声道长期和短期预测器8在作完线性预测后,将是否采用预测的决定传给多路复用(E9)器6。如果决定采用预测,还将预测滤波器的延迟和预测系数传给多路复用(E9)器6,并用预测误差信号来取代子带信号传给子带量化器5。本步骤是本发明优选的,不采用本步骤不影响编码器或方法的完整性,只是编码效率会有下降。
为了便于描述,图11把子带量化器5的功能分为两步比例因子(E6)和矢量/标量量化(E8)。
E6)比例因子子带量化器5从子带信号(如决定采用了线性预测,则为预测误差信号,以下统称子带信号)中以暂/稳态段为单位估计并量化比例因子。然后,把比例因子的量化指数传送给比特分配(E7)器4和多路复用(E9)器6。本步骤不对子带信号本身作任何处理。
E7)比特分配比特调整因子搜索器41依据由步骤E6输入的比例因子的量化指数,以及由E4输入的强度指数(如果联合强度编码被选用),寻找到最优的比特分配调整因子,并把它传给多路复用(E9)器6。然后,比特分配器42又依据(3)式把比特分配到每一个子带段,并把每一个子带段所分配到的比特数传给量化器选取器54以供矢量/标量量化(步骤E8)用。以上的比特分配方法是本发明优选的。如不优选此方法,必须采用一个其它的比特分配方法,以维持编码器的完整性。本步骤不对子带信号本身作任何处理。
E8)矢量/标量量化量化器选取器54依据比特分配(E7)器4送来的每一个子带段所分配到的比特数为每一个子带段选取一个量化器,然后把它传送给子带样本量化器55。子带样本量化器55随后以子带段为单位量化每一个子带样本,并把其量化指数传给多路复用(E9)器6。
E9)多路复用(MUX)多路复用器6把每一个子带样本的量化指数和以下的辅助信息打包(多路复用)成一个完整的音频帧并将其输出音频帧长,暂/稳态段的位置,强度指数(如果联合强度编码被选用),是否采用预测的决定,预测滤波器的延迟和系数,比例因子的量化指数,和比特分配调整因子。多路复用器6还可打包(多路复用)输出其它一些辅助数据,如采样频率,音箱设置,纠错码,时间码等。
解码本发明的解码器及其解码方法在本质上为编码器及其方法的逆过程。在此,根据图12和13描述解码流程和解码器各部件。
解码流程经过本发明的编码方法和编码器产生的码流须经过以下的主要步骤(图12)来解码重建多声道音频信号D1)解包(DEMUX)辅助信息多路复用解包器110解包出以下辅助信息●帧长。
●所有子带段(暂/稳态段)的位置。
●比特分配调整因子。
●每个子带段的比例因子量化指数。
●每个子带段是否采用跨声道长期和短期预测的决定;如果采用,进一步解包出预测滤波器的延迟和系数。
●被联合强度编码的子带段的强度指数D2)比特分配比特分配器42依据输入的比特分配调整因子和每个子带段的比例因子量化指数为每个子带段分配比特。此比特分配器与编码器用到的比特分配器42完全一样,故仍延用标号42。本比特分配方法是本发明优选的;如编码器采用别的比特分配方法,则必须越过不作本步骤。但步骤D1通常必须增加一个解包项目从输入码流中解包出比特分配。
D3)解包子带样本的量化指数多路复用解包器110依据步骤D2分配的比特数从输入码流中解包出每个子带样本的量化指数。
D4)逆量化重建子带样本子带样本逆量化器120依据步骤D1解包出的比例因子量化指数和步骤D3解包出的子带样本的量化指数重建每个子带样本。
D5)跨声道长期和短期预测对每一个子带段,如果步骤D1解包出的预测决定为肯定,则跨声道长期和短期预测器130对本子带段的所有样本作预测。否则,跨声道长期和短期预测器130对本子带段的所有样本不作任何处理。本步骤是本发明优选的;如编码器未采用跨声道长期和短期预测,则必须越过不作本步骤。
D6)联合强度解码对每一个被联合强度编码的子带段,联合强度解码器140首先从源子带段拷贝子带样本到本子带段。然后,依据步骤D1解包出的强度指数重建强度比例因子,并用它修正拷贝到本子带段的样本值。本步骤是本发明在低码率时优选的;如编码器未采用联合强度编码,则必须越过不作本步骤。
D7)合成滤波器组合成滤波器组150把子带样本合成重建成音频信号。
如果本发明的编码器在音频帧输入到子带分解滤波器组2之前对音频帧进行了跨声道和/或本声道预测,此时还得对由合成滤波器组150重建的信号作相应的预测以重建音频信号。
解码器本发明的解码器如图13所示。以下描述各个部件多路复用解包器(DEMUX)110多路复用解包器110负责从压缩编码的码流中解包出解码步骤D1和D3中列出的数据。它也负责从压缩编码的码流中解包出其它辅助数据,如采样频率,音箱设置,纠错码,时间码等。
比特分配器42此比特分配器与编码器用到的比特分配器42完全一样,故仍延用标号42。此比特分配器的功能是把比特分配调整因子和每个于带段的比例因子量化指数代入(3)式以得出分配给每个子带段的每个样本的比特数。
子带样本逆量化器120子带样本逆量化器120根据每个子带段的比特分配选取量化器。然后,以此量化器和该子带段的比例因子由子带样本的量化指数重建子带样本。
注意,当某一个子带段采用了跨声道长期和短期预测,则子带样本逆量化器120重建的是该子带段的预测误差信号,而不是子带样本本身。
跨声道长期和短期预测器130对每一个子带段,如果步骤D1解包出的预测决定为肯定,则跨声道长期和短期预测器130对本子带段的所有样本作预测。否则,跨声道长期和短期预测器130对本子带段的所有样本不作任何处理。
作本声道预测的预测器如图14。其中的预测器81与编码器用到的预测器81完全一样,故仍延用标号81。
作跨声道预测的预测器如图15。其中的预测器82与编码器用到的预测器82完全一样,故仍延用标号82。
当跨声道和本声道预测同时并用时,先作本声道预测,然后再作跨声道预测,如图16所示。
联合强度解码器140对每一个被联合强度编码的子带段,联合强度解码器140首先从源子带段拷贝子带样本到本子带段。然后,依据强度指数重建强度比例因子,并用它修正拷贝到本子带段的样本值。
子带合成滤波器组150子带合成滤波器组150把子带样本合成重建成音频信号。子带合成滤波器组150是编码器中的子带分解滤波器组2的逆,是同时设计的。也即,编码器中的子带分解滤波器组2确定后,子带合成滤波器组150也就完全确定了[参考文献8]。
应用方案本发明涉及的是多声道数字音频压缩编码/解码技术,其优点包括压缩效率高,解码器简单,解码后的音频信号保真度高,以及能适用于高,中,和低码率的各种应用。因此,它完全适用于纯粹的音频应用,如数字音频广播等;其解码器完全可独立地安装在纯粹的音响设备中,如功放,随身听等。
由于音频信号大多以视频信号的伴音的形式出现,由于本发明的编解码方法的压缩效率高,经过本发明编码的音频信号能与视频信号同步剪辑并能经受得起十次以上的纵列编码,因而在实际应用中具有如下的优点1)能同时满足节目的配送和传输的要求。
2)本发明的编码技术极大地简化了节目配送的环节和设备。以数字电视为例,图17示出了采用本技术的节目配送和传输的过程。很明显,它比Dolby的方案(图1)简单了许多。
3)由于省去了多次的转移编码环节,本技术极大地提高了节目配送过程的保真度。
4)由于省去了图1中的多个编码器和解码器,本技术也极大地降低了节目配送的成本。
参考文献[1]ISO/IEC 13818-7,1997. ISO/IEC 14496-3,1998. S.Smyth,M.Smyth,and W.P.Smith,“Multi-channelPredictive Subband Audio conder using Psychoacoustic AdaptiveBit Allocation In Frequency,Time,And Over The MultipleChannels,”US Patent 5956674. M.Smyth,“An overview of the Coherent Acoustics codingsystem,”http//www.dtsonline.com/whitepaper.pdf,1999. S.Smyth,W.P.Smith,M.Smyth,M.Yan,and T.Jung,“DTS Coherent Acoustics Delivering High Quality MultichannelSound to the Consume,”AES 100th Convention,1996. L.Fielder and C.Todd,“The design of a video friendlyaudio coding system for distribution applications,”AES 17thInternaltional Conference,pp.86-92,1999。
C.Todd,G.Davidson,M.Davis,L.Fielder,B.Link,and S.Vernon,“AC-3,Flexible perceptual coding for audiotransmission and storage,”96thAES Convention,Amsterdam,1994. P.P.Vaidyanathan,“Multirate systems and filterbanks,”Prentice Hall,1993. A.Gersho and R.M.Gray,“Vector quantization andsignal compression,”Kluwer,1992. B.C.J.Moore,“An introduction to the psychologyof hearing,”Academic Press,1997. A.M.Kondoz,“Digital Speech,”John Wiley & Sons,1994.
权利要求
1.一种用于对多声道数字音频信号进行压缩编码的编码器,包括帧长选择器,用于接收所述的音频信号,根据所述音频信号的采样率和目标码率选择帧长,并按此帧长将所述的音频信号分成帧;子带分解滤波器组,用于将逐帧输入的音频信号分解成多个子带信号;暂态检测器,用于将输入的子带信号划分成暂态段和稳态段,每个暂态段或稳态段的段长自适应地随暂态和稳态情况变化,并输出各段的位置信息;预测器,连接在所述的暂态检测器的输出端,利用其它声道的样本或本声道过去的样本来对本声道当前的样本作预测;比例因子估计器,用于估计并量化每段子带信号的比例因子,并输出比例因子的量化指数;比特分配器,用于将由目标码率所决定的比特数根据每个子带段的比例因子量化指数自适应地分配到各个子带段;子带量化器,用于依据所分配给各个子带段的比特数对所述的子带信号以段为单位量化;多路复用器,用于将子带量化器产生的子带样本的量化指数以及包含有帧长、段位置信息、比例因子的量化指数以及比特分配信息的辅助信息多路复用打包成一个以帧为单位的完整的码流。
2.如权利要求1所述的编码器,当所述的音频信号作为视频信号的伴音时,其中所述的帧长选择器还根据视频帧频率而选择音频帧长,使得音频帧长是视频帧长的有理分数或其整数倍。
3.如权利要求2所述的编码器,其中所述子带分解滤波器组的子带数是由帧长选择器根据不同的视频帧频率而选择的各个音频帧长的公因子。
4.如权利要求1所述的编码器,其中子带量化器由一组不同的标量量化器和矢量量化器构成。
5.如权利要求1所述的编码器,其中所述比特分配器根据每个子带段的比例因子量化指数和一个比特分配调整因子为每个子带样本分配比特。
6.如权利要求5所述的编码器,其中所述比特分配器分配给第c声道第k个子带第d段中的样本的比特数b(c,k,d)由下式决定b(c,k,d)=f(α·s(c,k,d))-θ(k)-β其中f(α·s(c,k,d)是一个严格单调递增函数,s(c,k,d)是该子带段的比例因子的量化指数,α是其量化步长,θ(k)为人耳在安静环境下的听觉门限的近似曲线,β为比特调整因子。
7.如权利要求6所述的编码器,其中f(α·s(c,k,d))=[α·s(c,k,d)]q,其中0<q≤2。
8.如权利要求7所述的编码器,其中θ(k)=0。
9.如权利要求5-8中任一个所述的编码器,其中所述的比特分配调整因子或者为所有声道共用一个,或者为每个声道分别独用一个,或者为把所有声道分成若干组每组分别独用一个,但这些比特分配调整因子使得分配给各个子带样本的比特数的总和外加传送辅助信息所需的比特数,不能超出目标码率所容许分配给每帧音频信号的总比特数。
10.如权利要求1所述的编码器,进一步包括一个联合强度编码器,连接在所述的暂态检测器的输出端,其中对于每个被联合编码的子带段,用于输入比特分配器进行比特分配的比例因子量化指数必须为被联合在一起编码的所有声道在同一子带段的比例因子量化指数的最大值,并将各个被联合编码的声道的强度指数作为辅助信息输出给多路复用器。
11.如权利要求10所述的编码器,进一步包括一个预测器,连接在所述的联合强度编码器的输出端,利用其它声道的样本或本声道过去的样本来对本声道当前的样本作预测。
12.如权利要求1-8中任一个所述的编码器,还可进一步包括一个预测器,连接在所述的子带分解滤波器组之前,利用其它声道的样本或本声道过去的样本来对本声道当前的样本作预测。
13.如权利要求1、11或12中任一个所述的编码器,当其中所述的预测器采用其它声道的样本作为源来对当前的样本作预测时,该预测器进一步包括另一个预测器,用于接收第一个预测器的预测误差,以对此预测误差再做一次长期和/或短期预测。
14.如权利要求1、11或12中任一个所述的编码器,其中所述的其它声道仅限于第一和第二声道。
15.如权利要求1、11或12中任一个所述的编码器,其中所述的其它声道是第一声道。
16.如权利要求1、11或12中任一个所述的编码器,其中所述的任何一个预测器是包含有一个延迟因子的线性预测器,并将该延迟因子作为一个辅助信息传送到多路复用器。
17.如权利要求1、11或12中任一个所述的编码器中的任何一个编码器,由一个包含有延迟因子的短期线性预测器和一个包含有延迟因子的长期线性预测器组成,并将该延迟因子作为一个辅助信息传送到多路复用器。
全文摘要
用于对多声道数字音频信号进行压缩编码解码的设备及其方法,其中编码设备包括帧长选择器,子带分解滤波器组,暂态检测器,比例因子估计器,比特分配器,用于将由目标码率所决定的比特资源自适应地分配到各个子带段,子带量化器以及多路复用器。该编解码设备及其方法的压缩效率高,经过本发明编码的音频信号能与视频信号同步剪辑并能经受得起十次以上的纵列编码,因而1)能同时满足节目的配送和传输的要求;2)极大地简化了节目配送的环节和设备,提高了节目配送过程的保真度以及降低了节目配送的成本。
文档编号H04N7/015GK1750408SQ20051009871
公开日2006年3月22日 申请日期2002年8月21日 优先权日2002年8月21日
发明者游余立 申请人:中山正音数字技术有限公司, 游余立