针对子带编码音频的三维声场合成方法
技术领域
本发明涉及一种基于分带处理的双工三维声场合成方法,特别是涉及一种基于各种子带编码(如mp3、AC3、AAC等)音频的三维声场合成方法。
背景技术
人在聆听声音时,不仅能够听到声音的内容、强弱,还可以听到声音的方向。各种录音和回放技术可以很方便地记录原始声音的内容和强弱等信息,但方向信息却往往无法保留。利用各种声学和听觉心理学的原理,来重现原始声音的方向信息的录音回放技术,被称为三维声场合成(或三维虚拟声源、三维声场重建等)。
双工(duplex)理论是三维声场合成所依据的重要理论之一。听觉心理学研究发现,改变两耳听到声音的强度差别(即双耳强度差,Interaural Intensity Difference IID),人将感觉到声源的方向随之移动;改变两耳听到声音的先后(即双耳时间差,Interaural Time Difference ITD)也有相似的效果。结合这两种效应,人为改变回放声音的ITD和IID,即可虚拟三维声源,这就是双工理论。基于这种理论的三维虚拟方法如图1所示,它的特点是实现简单,应用广泛,既可用于耳机回放也可用于扬声器回放。但由于全频带ITD和IID对声源方位信息的描述较为粗略,所以这种方法还原的声音逼真度较低,声像较为模糊。最近的研究表明,在模拟某确定方位的声源时,如果分频带(以下简称分带)处理,对不同频带取不同ITD和IID值,将会取得更逼真的模拟效果。分带双工合成的处理流程如图2所示,它是直接处理目标音频的时域信号,当频带划分较细时可以达到很好的模拟效果;但美中不足的是,这种方法需要对声音信号进行额外的分带滤波和合成,使得附加的计算工作量很大。
发明内容
本发明要解决的技术问题是提供一种针对子带编码音频的三维声场合成方法,它能降低计算工作量、实现高度逼真,而且可以同时适用于耳机回放和扬声器回放。
为解决上述技术问题,本发明的针对子带编码音频的三维声场合成方法是采用如下技术方案实现的,以音频格式规定的标准解码流程为基础将音频数据流解码;其中:在标准解码流程的综合滤波器组之前插入ITD/IID调整单元,该ITD/IID调整单元的输入信号为经过所述的标准解码流程解码后得到的子带信号,输出信号为经过ITD/IID调整单元调整的与输入信号格式相同的子带信号并将该输出信号送回标准解码流程中的综合滤波器组处理。
本发明基于听觉心理学的研究,对目标音频(或称目标音源、待处理音频等,即待处理的原始音频)进行分带处理,对不同频率的子带加入不同的ITD和IID,更精细地模拟了人耳对方位的感知信息,从而更逼真地模拟了三维声场。本发明针对基于子带编码的数字音频格式处理,直接调整音频解码过程中所恢复的各子带数据的ITD和IID,从而免去了一般分带双工合成处理方法所需的分带滤波和合成而产生的附加计算工作量,大大降低了分带双工合成的计算复杂度。
本发明适用于各种设备的三维声场合成,待处理音频既可以是单声道,也可以是双声道或多声道;回放路数可以是双路,也可以是多路;回放设备既可以是耳机,也可以是扬声器。回放设备、回放路数不同时,只需相应调整各子带的ITD和IID参数即可。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明:
图1是现有的基于双工理论的三维声场合成方法控制流程图;
图2是现有的基于分带双工理论的三维声场合成方法控制流程图;
图3是图2中的ITD/IID调整单元实施例一结构图;
图4是图2中的ITD/IID调整单元实施例二结构图;
图5是现有的基于子带编码的音频格式的解码流程示意图;
图6是本发明的针对子带编码音频的三维声场合成方法流程示意图;
图7是MPEG-1 Audio Layer-3的解码流程图;
图8是本发明将ITD/IID调整单元嵌入MPEG-1 Layer-3解码过程的三维声场合成方法流程图。
具体实施方式
下面以双声道耳机作为回放设备说明本发明的具体实现方法,但是应强调的是本发明并不局限于耳机的应用。
如图2所示,在基于分带双工理论的三维声场合成过程中,待处理音频经分带滤波器组滤波,输出n个不同频带范围的子带信号。左右声道中频率相同的子带信号输入其对应的ITD/IID调整单元(分带双工调整单元),调整彼此的ITD和IID。调整后的子带信号按照声道分别归组,输入到各自声道的综合滤波器组,合成为最终播放的时域信号。
分带所用的分带滤波器组与ITD/IID调整单元无关。既可以按线性划分子带,也可以按对数划分子带,或者采用其它划分方法。滤波后的子带可以经过降采样处理以降低数据率和运算量,也可以不经过降采样。分带的数量没有限制,但一般而言带数越多处理越精细,且子带之间一般无交叠。
参见图3、4所示,子带信号中的子带频率信息、待合成的方位信息被送入ITD/IID调整单元中的双工参数控制单元。所述双工参数控制单元负责产生所需的ITD和IID参数,当确定子带频率、待合成的方位后,产生特定的ITD和IID值,送给所述的ITD、IID调整滤波器或ITD调整单元加IID调整单元。该双工参数控制单元预先存储了与频率、方位相关的ITD和IID信息,经查表和(或)拟合计算,即可得出当前应采用的ITD和IID。子带信号中的子带数据信号经IID调整、ITD调整后输出。
对子带数据信号进行IID和ITD调整时,既可以如图3所示对子带数据分别进行ITD、IID调整(例如,对某一声道的子带数据幅度乘以一个系数,以调整IID,将某一声道自带的采样点向前或者向后相对移位,以调整ITD)。所述ITD调整单元通过将不同输出通路间的采样数据相对平移的方法调节输出通路间的ITD,调整的延时差为采样间隔的整数倍。所述IID调整单元通过改变不同输出通路数据的相对幅度的方法来调节输出通路间的IID,包括将数据乘以某固定常数、除以某固定常数或将二进制数据移位。
也可以如图4所示通过一个ITD、IID调整滤波器(例如,一个全通滤波器,调节待处理子带信号的幅度和相位延时,从而调整ITD和IID)对子带数据同时进行IID、ITD调整。一般而言,ITD和IID的调整范围是:若输出设备为耳机,且调整前左右声道信号完全相同,则调整后ITD最大不超过700微秒;IID最大不超过8dB。当左右声道信号有差异时,ITD和IID随之进行调整。
综合滤波器组的结构由分带滤波器组决定,与ITD/IID调整单元无关。若分带滤波器组未经过降采样等处理,则综合滤波器组可以仅仅是一个加法器,将各子带信号时域对齐后相加;若分带滤波器组经过了降采样等处理,则一般需要使用多相综合滤波器组。
所述ITD/IID调整单元的数量与音频格式规定的子带信号数量相同,标准解码流程产生的子带信号分别送入相应的ITD/IID调整单元,不同解码通路(如mp3解码的左右声道)产生的相同子带信号送入同一个ITD/IID调整单元。
所述ITD/IID调整单元的输出子带信号通路数与回放通路的数量相同(如耳机的回放通路为2,则对应的输出子带通路数为2),属于同一通路的所有子带信号被送入同一个综合滤波器组中处理,不同通路的子带信号送入不同的综合滤波器组,该综合滤波器组的数量与回放通路的数量相同。
由上述说明可知,ITD/IID调整单元是整个三维声场合成控制流程中最重要的模块,且其与分带滤波器组、综合滤波器组的特性无关。具体而言,只要在三维声场合成控制流程中有模块能够提供分频带后的子带信号,且有模块能将子带信号综合成可播放的时域信号既可。这样就可以将三维声场合成嵌入到其它音频处理流程。
众所周知,目前绝大部分音源都是经过压缩编码的数字音频(如mp3格式、AC3格式等),编码时,首先将音频分带滤波,再针对每个子带进行单独的压缩编码、数据成帧等处理;解码时,先经过数据拆包、解压缩编码等处理,将压缩数据恢复成不同的子带信号,再将子带输入多相综合滤波器组,还原成最终的时域信号(参见图5)。由图5可以看到,送入多相综合滤波器组之前的子带信号已经经过解压缩处理,与图2中送入ITD/IID调整单元的子带信号性质一致。因此,如图6所示本发明在多相综合滤波器组之前插入ITD/IID调整单元,将经过解压缩的子带信号送入该调整单元,再将调整了ITD、IID的子带信号(要求与调整前子带信号格式相同)送回多相综合滤波器组中,以达到三维声场虚拟的效果。
下面以mp3格式为例,具体说明mp3的标准解码流程。参见图6,mp3格式的比特流送入解码器后,经过拆包、哈夫曼解码、再量化、谱线值重排序、IMDCT变换等处理(结合图7中虚线框所示),得到各个频带内的子带信号(子带0~31);该子带信号送入多相综合滤波器组,得到最终输出的时域信号。根据该处理流程的特点,可将ITD/IID调整单元插到IMDCT变换之后、多相综合滤波器组之前;根据mp3编码的特点,共需32个ITD/IID调整单元,每个单元根据mp3的线性分带特点来调整各子带的ITD和IID。插入ITD/IID调整单元后的流程图如图8所示。在插入ITD/IID调整单元时,应注意保持调整后的输出数据与调整前格式一致。将调整后子带数据送入多相综合滤波器组中,即可完成原有的mp3解码过程,但这时的输出音频已经经过三维声场合成,具有三维效果。
本发明可以用于各种基于子带编码标准的音频格式,对其进行三维声场合成(三维虚拟)。通过将ITD/IID调整单元嵌入到原音频解码流程中的方式,可以用很小的计算开销虚拟出各种三维效果。对于回放设备的差别(耳机或扬声器)、待处理声源的差别(单声道,双声道,或多声道)、回放路数的差别(双声道或多声道),音频格式标准的区别(子带划分方法,数据处理窗长等)只需选择合适的ITD/IID调整单元,并对ITD/IID调整单元的输入输出路数相应调整即可,具有广泛的适应性。