这个例子展示了如何使用ALSA音频播放块从树莓Pi®块库实现一个参数化音频均衡器算法与Simulink®模型,并在树莓Pi硬件上运行模型。金宝app
参数均衡器用于调整音频系统的频率响应。例如,一个参数均衡器可以用来补偿特定扬声器在不同频率上的峰值和低谷的偏差。
在这个例子中,你将实现与Simulink模型参数音频均衡器,然后运行在树莓派的硬件模型。金宝app本例中的参数均衡器算法提供了三个二阶(双二次)滤波器,其系数可以调整,以实现期望的频率响应。的图形用户界面(GUI)在模拟用于动态调整滤波器系数和探索行为。
以下各节描述的参数均衡器算法是如何指定,性能如何可以通过仿真来评估,以及如何将模型上树莓裨硬件上运行。您还将了解ALSA音频播放块是如何用来输出音频信号。
我们建议完成入门Simulink支持包的树莓派硬件金宝app金宝app的例子。
DSP系统工具箱™
要运行这个例子,你将需要以下硬件:
树莓派的硬件
带有HDMI输入的耳机、扬声器或电视/显示器
在此任务中,您将配置和运行树莓派的硬件参数均衡器模式。
1。一对扬声器或耳机连接至所述树莓裨硬件模拟音频输出连接器。
2。打开参数音频均衡器模型。
3。去应用程序>运行在硬件板>选项….查看打开的页面上的参数。如果您执行固件更新,板信息将自动填充主机名,用户名和密码您的树莓派硬件。如果您没有进行固件更新或需要修改单板参数,请输入您的树莓Pi硬件的IP地址、用户名和密码。
4.在Simuli金宝appnk模型,将信号从工作区块上双击。块输出的信号的所谓的样品audioSignal以每秒44100个采样的速率。这audioSignal从wave文件中读取guitartune.wav在模型InitFcn回调。要查看模型回调,请单击文件>模型属性>模型属性并导航到所需的回调函数模型属性GUI。
5。在Simuli金宝appnk模型中,ALSA音频播放块上双击。请注意,此块发送处理的音频信号对树莓裨硬件“默认”音频设备。您还可以输入的音频设备的名称,如“plughw:0,0”将音频发送到除“默认”音频设备之外的设备。为了让你的树莓派的硬件音频播放设备的列表,执行MATLAB命令行上输入以下命令:
R =树莓派;一个= listAudioDevices(R, '播放')
listAudioDevices函数返回的输出是一个结构数组,其中包含可用音频播放设备的名称和设备号。典型的输出是:
a(1) Name: ' bcm2835 - bcm2835 ALSA…'设备:“0”
a(2) Name: ' bcm2835 - bcm2835 ALSA…'设备:“0 1”
a(3) Name: ' USB- audio - USB PnP Sound Device…'设备:“1 0”
上面的输出表明有三个带有ALSA音频设备编号的音频播放设备0,0那0,1和1,0.前两种设备对应于所述模拟音频输出和树莓裨板的HDMI输出。第三个设备是一个USB加密狗的音频。要使用的播放设备0,0,输入 'plughw:0,0' 为设备名称参数。
6。在这一点硬件选项卡中的金宝app模式部分选择在主板上运行然后单击监控与调.
1。由于Simul金宝appink模型是在树莓派的硬件上运行,你会听到从连接到树莓派的硬件扬声器/耳机音频。
2。的GUI显示的音频均衡器的频率响应将显示为显示在下面的图:
3。点击并拖动在三带均衡器GUI的标记或线来指定所需的滤波器响应特性。注意在作为均衡器的变化的频率响应的音频输出的变化。
4.按下停止按钮以停止模型执行。
更改发送到扬声器的声音的音量/耳机通过调整获得参数在Simulink模型中的'Sum left & right channels and to single*子系统中。金宝app