主要内容

实现参数化音频均衡器使用树莓派

此示例演示如何使用Raspberry Pi®块库中的ALSA音频播放块来实现具有Simulink®模型的参数化音频均衡器算法,并在Raspberry Pi硬件上运行该模型。万博1manbetx

介绍

参数均衡器用于调整音频系统的频率响应。例如,参数均衡器可用于补偿特定扬声器在不同频率下的峰值和凹陷。

在本例中,您将使用Simulink模型实现一个参数化音频均衡器,然后在Raspberry Pi硬件上运行该模型。万博1manbetx本例中的参数均衡器算法提供了三个二阶(双二次)滤波器,其系数可以调整以实现所需的频率响应。在仿真中使用图形用户界面(GUI)来动态调整过滤系数和探索行为。

以下部分描述如何指定参数均衡器算法,如何通过仿真评估性能,以及模型如何在树莓派硬件上运行。您还将了解如何使用ALSA音频播放块输出音频信号。

先决条件

所需的产品s manbetx 845

  • DSP系统工具箱™

所需的硬件

要运行此示例,您将需要以下硬件:

  • 覆盆子π硬件

  • 耳机、扬声器或带有HDMI输入的电视/显示器

任务1 -配置和运行参数均衡器Simulink模型万博1manbetx

在本任务中,您将在树莓派硬件上配置和运行参数均衡器模型。

1.连接一对扬声器或耳机到树莓派硬件上的模拟音频输出连接器。

2.打开参数音频均衡器模型。

3.应用程序>在硬件板上运行>选项。。。。请查看打开页面上的参数。如果执行固件更新,将自动使用Raspberry Pi硬件的主机名、用户名和密码填充板信息。如果尚未执行固件更新或需要更改板参数,请输入您的IP地址、用户名和密码覆盆子皮五金。

4.在Simuli万博1manbetxnk模型中,双击Signal From Workspace块。块输出被调用信号的样本音频信号以每秒44100个样本的速度。的音频信号从名为guitartune.wav在模型中InitFcn回调。要查看模型回调,请单击文件>模型属性>模型属性,然后导航到模型属性GUI。

5.在Simuli万博1manbetxnk模型中,双击ALSA音频播放块。注意,这个块将处理过的音频信号发送到树莓派硬件上的“默认”音频设备。您也可以输入一个音频设备的名称,如'plughw:0,0',以发送音频到除'Default'音频设备以外的设备。要获取Raspberry Pi硬件上的音频播放设备列表,请在MATLAB命令行中执行以下命令:

r = raspberrypi;一个= listAudioDevices (r,“回放”)

listAudioDevices函数返回的输出是一个结构数组,其中包含可用音频播放设备的名称和设备号。典型输出为:

一(1)个名称:“bcm2835-bcm2835 ALSA…”设备:“0,0”
一(2)个名称:“bcm2835-bcm2835 ALSA…”设备:“0,1”
一(3)个名称:“USB音频-USB PnP声音设备…”设备:“1,0”

上面的输出表明有三个音频播放设备具有ALSA音频设备编号0,00,11,0.前两个设备对应树莓派板的模拟音频输出和HDMI输出。第三个设备是USB音频加密狗。使用重放装置0,0,输入'plughw:0,0'设备名称ALSA音频播放块上的参数。

6.硬件选项卡中的Simuli万博1manbetxnk模型模式部分中,选择机上运行然后点击监视和优化

任务2 -改变参数均衡器的频率响应

1.当Simuli万博1manbetxnk模型在树莓派硬件上运行时,你会听到连接到树莓派硬件的扬声器/耳机发出的声音。

2.一个显示音频均衡器频率响应的GUI将出现如下图所示:

3.单击并拖动三频带均衡器GUI中的标记或线条,以指定所需的滤波器响应特性。注意当均衡器的频率响应改变时音频输出的变化。

4.停止按钮以停止模型执行。

其他需要尝试的事情

  • 通过调谐来改变发送到扬声器/耳机的声音的音量获得在Simulink模型中,将“左、右通道和单个*子系统之和”中的参数。万博1manbetx