主要内容

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

这个例子展示了如何使用ALSA音频播放块从树莓Pi®块库实现一个参数化音频均衡器算法与Simulink®模型,并在树莓Pi硬件上运行模型。金宝app

介绍

参数均衡器用于调整音频系统的频率响应。例如,一个参数均衡器可以用来补偿特定扬声器在不同频率上的峰值和低谷的偏差。

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

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

先决条件

所需的产品下载188bet金宝搏

  • DSP系统工具箱™

所需的硬件

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

  • 覆盆子π硬件

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

任务1 -配置和运行参数均衡器Simulink模型金宝app

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

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

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

3.应用程序>运行在硬件板>选项….查看打开的页面上的参数。如果您执行固件更新,板信息将自动填充主机名,用户名和密码您的树莓派硬件。如果您没有进行固件更新或需要修改单板参数,请输入您的树莓Pi硬件的IP地址、用户名和密码。

4.在Simuli金宝appnk模型中,双击Signal From Workspace块。块输出被调用信号的样本audioSignal以每秒44100个样本的速度。的audioSignal从wave文件中读取guitartune.wav在模型中InitFcn回调。要查看模型回调,请单击文件>模型属性>模型属性并导航到所需的回调函数模型属性GUI。

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

r = raspberrypi;一个= 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,00,11,0.前两个设备对应树莓派板的模拟音频输出和HDMI输出。第三个设备是USB音频加密狗。使用重放装置0,0,输入'plughw:0,0'设备名称参数。

6.硬件选项卡中的金宝app模式部分中,选择机上运行然后点击监视和优化

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

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

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

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

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

其他可以尝试的事情

  • 通过调谐来改变发送到扬声器/耳机的声音的音量获得参数在Simulink模型中的'Sum left & right channels and to single*子系统中。金宝app