作者:车子萍
来源:《电脑学习》2010年第03期
摘要:本文介绍了一种将声卡作为A/D和D/A,用LabVIEW实现声音播放、声音采集以及对声音信号做频谱分析实现声音均衡器的功能。文中设计的声音均衡器可以加深对信号采集和信号处理的理解,具有一定的参考借鉴价值。
关键词:LabVIEW 声卡 声音均衡器
中图分类号;TP274
文献标识码:B
文章编号:1002-2422(2010)03-0022-02
1声音均衡器设计原理
声音均衡器拟达到以下目的:从物理介质获得声音(麦克风或者声卡),经过AD采样。对采样后的数据进行分段滤波增益,并且输出分段滤波增益后的信号时域和频域图形到波形显示器。然后将分段滤波后的信号相互叠加,输出。
均衡器的调整主要包括以下频率段信息的调整。
超低音:20Hz~40Hz,适当时声音强而有力。能控制雷声、低音鼓、管风琴和贝司的声音。过度提升会使音乐变得混浊不清。
低音:40Hz~150Hz,是声音的基础部份,其能量占整个音频能量的70%,是表现音乐风格的重要成份。适当时,低音张弛得宜,声音丰满柔和,不足时声音单薄,150Hz过度提升时会使声音发闷,明亮度下降,鼻音增强。
中低音:150Hz~500Hz,是声音的结构部分,人声位于这个位置,不足时,演唱声会被音乐淹没,声音软而无力,适当提升时会感到浑厚有力,提高声音的力度和响度。提升过度时会使低音变得生硬,300Hz处过度提升3~6dB,如再加上混响,则会严重影响声音的清晰度。
中音:500Hz~2KHz,包含大多数乐器的低次谐波和泛音,是小军鼓和打击乐器的特征音。适当时声音透彻明亮,不足时声音朦胧。过度提升时会产生类似电话的声音。
中高音:2KHz~5KHz,是弦乐的特征音(拉弦乐的弓与弦的摩搡声,弹拔乐的手指触弦的声音等)。不足时声音的穿透力下降,过强时会掩蔽语言音节的识别。
高音:7KHz~8KHz,是影响声音层次感的频率。过度提升会使短笛、长笛声音突出,语言的齿音加重和音色发毛。
极高音:8KHz~10KHz,合适时,三角铁的金属感通透率高,沙钟的节奏清晰可辨。过度提升会使声音不自然,易烧毁高频单元。
在本文的设计中采用八段滤波器,其他的依次类推。
2声音均衡器程序设计
2,1声音播放部分
声音播放模块程序框图如图1所示。此模块调用FilePath、Sound File Info与Sound file Open以及Sound OutputConfigure控件,实现.wav格式音频文件的播放。在图2中Sound File Path可以获取播放文件路径,控件Sound Out-put Configure选择连续采样。
2,2数据采集部分
首先从LabVIEW软件中声音模块选项卡中找到声音文件打开Ⅵ、声音输入配置VI、声音输入读取Ⅵ、声音输入清除Ⅵ和声音文件关闭Ⅵ,再加上一个while循环语句。其中while循环语句的隧道可改为移位寄存器,而移位寄存器可用于将上一次循环的值传递至下一次循环。移位寄存器以一对接线端的形式出现,分别位于循环两侧的边框上,位置相对。右侧接线端含有一个向上的箭头,用于存储每次循环结束时的数据。
LabVIEW将数据从移位寄存器右侧接线端传递到左侧接线端。循环将使用左侧接线端的数据作为下一次循环的初始值。该过程在所有循环执行完毕后结束。循环执行后,右侧接线端将返回移位寄存器保存的值。右键单击循环的左侧或右侧边框,并从快捷菜单中选择添加移位寄存器可以创建一个移位寄存器。
2,3均衡器部分设计
均衡器部分设计如图2所示。通过Sound Input Read读取输入的声音波形,将波形输入到滤波器模块。8段均衡器需要8个滤波器,前7个滤波器配置为带通滤波,最后一个配置为高通滤波,滤波频率范围按照设计原理所讲依次配置。滤波后的信号通过乘法控件,可以控制其增益,最后将各个滤波后的信号叠加。为了便于观察,通过对叠加后的信号做时域分析。并且通过频谱测量控件对其做频域分析。
2,4整个系统设计
将声音播放部分,数据采集部分和均衡器部分串接在系统中,并且加入音量控制控件,就构成了整个系统,整个系统程序框图如图3所示。
3声音均衡器前面板设计
LabVIEW的前面板即交互式界面,用于设置输入数值和观察输出量。在前面板中,使用了各种图标如开关、实时趋势图等来模拟真实仪器的面板,并可如同操作实际仪器一样方便地调节输入参数和进行输出模式定制。前面板的设计,充分发挥了LabVIEW的特长,即建立了友好的人机操作界面。前面板如图4所示。
为了使用户使用便捷直观而不用关心后台程序运行情况,设计中尽量减少了输入控制按钮,并且增加了输出图形的显示。这样时域波形显示、频域波形显示在同一个界面上,大大的增强了系统的直观性,设置区中包括音量控制、波形显示、声音均衡、播放文件路径选择,以及一个停止按钮组成。用户可以根据实际需要调节播放声音和均衡器而观察时域和频域波形的变化。另外系统的前面板设计中采用了装饰框,使整个虚拟面板变得简洁、美观。
4生成应用程序
在VI中可使用应用程序生成器创建程序生成规范并生成一个应用程序。在vI设置中可实现添加密码、删除程序框图或应用其它配置等操作。可为Ⅵ选择不同的目标目录,而且VI和子vI的连接不会因此中断。另外使用应用程序生成器还可以创建LabVIEW项目中各文件的安装程序。限于篇幅生成的应用程序和安装程序的步骤这里不做详细介绍。
5结束语