Products: LabVIEW, Academic Products
The Challenge: 各种音效算法(如:虚拟环绕声、混响、均衡……)的实现与分析是高校数字音频信号处理等课程中必然讲授的内容。若只通过理论分析而不能在硬件平台上构建各种音效器,然后实际试听,学生没有直观感受,教学效果不理想;若在一般的DSP开发板上通过C、汇编等软件编程实现则工作量巨大,且程序运行过程中音效器参数无法实时调整,做定量分析与比对时也很不方便。因此,需要一个可以快速、灵活地构建各种音效算法的开发平台成为一大挑战。
The Solution: 采用LabVIEW图形化编程快速构建各种音效器,然后将音效算法程序下载到NI公司SPEEDY-33 DSP硬件开发模块上实现,最后在程序运行过程中实时调整各个参数完成对音效器的分析测试。
一、引言 我们现在使用的各种音响设备(如:家用组合音响、MP3播放器、MD机......)为了提高声音播放质量、实现各种声音效果,都在设备内部通过软件编程或硬件模块的形式加入了各种音效器。本文对音响设备中常用的几种音效器在SPEEDY-33 DSP硬件开发模块上逐一构建,然后调整音效器的相关参数,测试其效果并给出具体分析。
二、音效器开发平台与测试环境 1.音效器开发平台: NI SPEEDY-33实际上是一块DSP开发板,CPU采用的是TI TMS320VC33-150芯片,该DSP是一颗32位浮点处理器,具有150MFLOPS(75MIPS)处理能力,这对于实现一般的音效算法来说速度足够快了。开发板上自带A/D与D/A模块,这两个模块都能够对双声道信号同时进行处理,量化精度为16位,转换速度最高为48KSPS。由此可见,SPEEDY-33非常适合做立体声音频信号的处理,其音质理论上可以达到CD音质水平。各种音效算法由LabVIEW编程实现后下载到SPEEDY-33上运行;然后通过LabVIEW程序前面板(Front Panel)实时调整音效器的各个参数,观察音频信号的时域、频域波形的改变,同时利用耳机或音箱听取声音的变化。在选择音效器开发平台的时候,也曾考虑了使用传统开发模式,即:使用C、汇编语言在DSK板上(如:TI C6713 DSK)开发各种音效器。但相对于本文采用的模式,编程工作量大、开发周期长、人机交互性差。 2.测试环境: 我将CD机输出的立体声模拟信号由SPEEDY-33的A/D模块转换为数字信号(采样率:48KHz,精度:16-bit),经DSP进行数字音效处理后由D/A模块输出,然后经过功率放大后由音箱或耳机播放。功放单元采用的是YAMAHA RX-350,额定功率90W/声道,测试时采用直通模式(Bypass),即声音信号在功放单元不再做任何效果处理。音箱采用的是PIONEER CS-222Z,最大功率60W/声道,2分频设计。测试环境中左、右音箱间隔1.8米,听音位置位于两音箱正中、垂直距离两音箱连线2米处。耳机采用SONY MDR-V300半封闭式立体声耳机。整个测试平台与环境参见图1: [align=center]
图1 测试平台与测试环境[/align]
三、音效器的构建与测试 1.虚拟环绕声效果器(Virtual Surround Effector): 虚拟环绕的英文是Virtual Surround,人们把这种技术称为非标准环绕声技术。非标准环绕声系统是在双声道立体声的基础上,不增加声道和音箱,把声场信号通过电路处理后播出,使聆听者感到声音来自多个方位,产生仿真的立体声场。非标准环绕声有多种算法可以实现,这里采用的是使用比较普遍的SRS算法。 SRS(Sound Retrieval System)不是从研究硬件营造三维声场入手,而是从听觉心理学出发,模拟出一个三维声场,使听音者觉得置身于三维声场之中。实际上,这种“三维声场”是不存在的,它只是一种幻象,就如同我们看到的立体电影、立体画片,都是通过技术手段将两维平面物体转化为三维空间物像。SRS在心理上和主观感觉上恢复了原声源在两耳处造成的声波状态,再现了原声源中的方位和空间分布,使人有身临其境的感觉。 (1)本系统采用的是Modified SRS算法,其实现框图见图2: [align=center]
图2 Modified SRS算法框图[/align] (2)测试结果及分析: 效果器中起作用的单元是L-R与L+R单元,我们先看一下同一个音乐片断经L-R、L+R处理后时域和频域的波形。 [align=center]
图3 L-R与L+R信号的时域和频域波形[/align] 由图3中可以看到:L+R信号比L-R信号具有更大的幅度与能量;L-R信号的能量在频谱中更分散,而L+R信号的能量相对更集中在低频与中频频段,这与实际试听结果是一致的。 (3)结论: 我们在音响系统中使用SRS虚拟环绕声效果器可以使声场变得更宽,空间感增强;同时增加音乐的包围感与临场感――使我们仿佛置身于音乐厅等演出现场。但是,SRS也有负面的效果:它会使音乐的方位感与层次感(如:交响乐和合唱音乐中各个乐器、声部的方位与层次关系)变差;另外,虚拟环绕声对听音位置要求较高,因此将SRS虚拟环绕技术应用到耳机上是不错的选择。 2.混响器(Reverberation): 混响器有很多种方法可以实现,但其基本单元都是将声音延迟一段时间后与直达声相叠加,下面采用的是一种相对比较简单的混响算法。 (1)混响器算法框图: [align=center]
图4 混响器算法框图[/align] (2)测试结果及分析: [align=center]
图5 原始信号与加入混响后信号频谱[/align] 图5是同一音乐片断原始信号的频谱(左)与加入混响后的频谱(右)。从图5中我们可以清晰的看到:加入混响后信号的频谱成分变得丰富了,并且低频部分得到了提升。这与我们实际试听结果是一致的。即:加入混响后声音变得更“丰满”、更“润”,同时,低频部分变得更“厚重”;但若效果器系数选择不当,比如系数b过大(延迟声成分过多)会使声音变得含混,细节丢失。 (3) 结论: 混响对音效起着重要的作用,适当加入一些混响,会对声音起到修饰作用,使得声音听起来更加动听。也正因为如此,我们购买的各种音乐CD、磁带,在前期录音过程中,制作人员都要加入一定的混响。同时音箱之类的放音设备与听音环境中的墙壁、天花板都会给播放的声音信号增加一些混响,因此我们的家用音响播放设备中一般不再单独设置混响效果器(卡拉OK设备除外)。 3. 5段图示均衡器(5-Band Graphic Equalizer): 均衡器是音响系统中常用的音效器,有些系统中的均衡器做成独立的图示均衡器模块,有些手持设备(如:随身听、MP3)的均衡器作“Jazz”,“Pop”,“Rock”等多种音效选择开关,但其本质都是一个可调增益滤波器组。 (1)均衡器原理: [align=center]
图6 5段均衡器的算法模型[/align] 其中H1(n)是一个低通滤波器,H2(n)、H3(n)、H4(n)是3个带通滤波器,H5(n)是一个高通滤波器。我们调整它们各自的增益系数G1~G5,就能调整相应频段的声音,从而得到我们需要的效果。均衡器幅频特性示意曲线参见图7: [align=center]
图7 5段均衡器幅频特性示意曲线[/align] (2)结论: 使用均衡器能够明显的改变声音效果,如:增加音乐的低音成分或高音成分。但是这种改变没有通过提升放音设备(音箱、耳机)的性能得到的效果真实、自然。另外,若数字滤波器的类型、参数使用不当,有可能引入音频信号的相位失真或谐波失真,这些都会影响音质。 4.综合应用: 将上文提到的各种音效器程序封装成一个个SubVI,再加上音量调节(Volume)与左右声道均衡(Balance)模块,就可以在SPEEDY-33平台上构建出一个综合的音效调节器,这可以让我们测试多种音效器共同使用时的效果。我们对程序的人机交互界面(Front Panel)加以美工处理,可以使之看上去更象是一个“音响系统”。参加图8: [align=center]
图8 综合音效器程序人机交互界面(Front Panel)[/align]
四、总结 利用LabVIEW图形化编程软件与SPEEDY-33硬件模块,我们快速实现了各种音效算法,搭建各种音效器。这比使用C、汇编等编程语言的难度与工作量低许多。利用这个系统,我们让学生将主要精力集中在算法研究上,因此在花费同样的时间与精力的情况下,学生能够搭建出更复杂,性能更优越的音效器。另外,LabVIEW软件的人机交互性能很强,我们无需另外编写上位机程序,使用前面板控件就可以搭建出美观实用的交互界面。通过这个界面,我们可以在程序运行过程中实时改变各种参数以取得不同效果进行比较,同时也可以很方便地对音频信号的时域和频域波形进行观察分析。综上所述,这套系统作为数字音频信号处理实验研究平台是十分灵活方便且功能强大的。由于篇幅限制,本文有所删节。