这个例子展示了如何使用ALSA音频播放块从树莓Pi®块库实现一个参数化音频均衡器算法与Simulink®模型,并在树莓Pi硬件上运行模型。万博1manbetx
参数均衡器用于调整音频系统的频率响应。例如,一个参数均衡器可以用来补偿特定扬声器在不同频率上的峰值和低谷的偏差。
在此示例中,您将使用Simulink模型实现参数音频均衡器,然后在Raspberry PI硬件上运行该模型。万博1manbetx该示例中的参数均衡器算法提供三阶(双二次)滤波器,其系数可以被调整以实现所需的频率响应。图形用户界面(GUI)用于模拟,以动态调整滤波器系数并探索行为。
以下部分描述了如何指定参数均衡器算法,如何通过模拟评估性能,以及如何在覆盆子PI硬件上运行模型。您还将了解ALSA音频播放块如何用于输出音频信号。
我们建议完成入门Simulink支持包的树莓派硬件万博1manbetx万博1manbetx的例子。
DSP System Toolbox™
要运行此示例,您将需要以下硬件:
覆盆子PI硬件
带有HDMI输入的耳机、扬声器或电视/显示器
在此任务中,您将在Raspberry PI硬件上配置和运行参数均衡器模型。
1。将一对扬声器或耳机连接到覆盆子PI硬件上的模拟音频输出连接器。
2。打开参数音频均衡器模型。
3.去应用程序>在硬件板上运行>选项....查看打开的页面上的参数。如果您执行固件更新,板信息将自动填充主机名,用户名和密码您的树莓派硬件。如果您没有进行固件更新或需要修改单板参数,请输入您的树莓Pi硬件的IP地址、用户名和密码。
4.在“Simul万博1manbetxink”模型中,双击“工作空间”块的信号。块输出称为的信号的样本audioSignal以每秒44100个样本的速度。这audioSignal从wave文件中读取吉他.wav.在模型中initfcn.回调。要查看模型回调,请单击文件>模型属性>模型属性并导航到所需的回调函数模型属性吉..
5。在“Simul万博1manbetxink”模型中,双击ALSA音频播放块。请注意,此块将处理后的音频信号发送到覆盆子PI硬件上的“默认”音频设备。您还可以输入音频设备的名称,例如“plughw:0,0”,将音频发送到“默认”音频设备以外的设备。要获取Raspberry PI硬件上的音频播放设备列表,请在Matlab命令行上执行以下命令:
r = raspbertypi;a = listAudiovices(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.前两个设备对应于覆盆子PI板的模拟音频输出和HDMI输出。第三个设备是USB Audio Dongle。使用播放设备0,0,输入'plughw:0,0'设备名称参数。
6。在这方面硬件选项卡中的万博1manbetx模式部分,选择跑在船上然后点击监控和曲调.
1。由于Simul万博1manbetxink模型在Raspberry PI硬件上运行,您将从连接到覆盆子PI硬件的扬声器/耳机中听到音频。
2。显示音频均衡器的频率响应的GUI将显示如下图所示:
3.单击并拖动三个带均衡器GUI中的标记或行,以指定所需的滤波器响应特性。注意音频输出的变化随着均衡器的频率响应而变化。
4.按下停止按钮以停止模型执行。
通过调整通过调整发送给扬声器/耳机的声音的音量获得参数在Simulink模型中的'Sum left & right channels and to single*子系统中。万博1manbetx