在树莓派Sense HAT上模拟音频可视化器
这个例子展示了如何使用Simulink®支持包为树莓派硬件在Sense HAT上模拟音频可视化器。金宝app金宝app
简介
音频可视化是一种显示与正在播放的音频数据同步的图像或动画的技术。使用这种技术,Simulink模型在Sense HA金宝appT上的8 × 8 LED矩阵上显示彩色条。棒的移动与正在播放的音频同步。
音频可视化工具
在这个示例模型中,音频文件读取块读取指定的音频文件,并将其作为脉冲编码调制(PCM)数据输出到树莓派硬件上。该块被配置为在每个时间步读取8192个音频样本。
音频处理子系统计算跨音频数据样本的快速傅里叶变换(FFT)。该子系统将计算FFT中最显著的1024个样本转换为对数尺度,减少频谱中的大动态变化。
MATLAB®函数块FFT2RGB将1024个样本分成8组,然后计算每个LED条在树莓派Sense HAT上显示的长度。
ALSA音频回放模块通过树莓派硬件的默认音频插孔播放输入音频。如果指定的音频文件是单声道文件,则使用Vector Concatenate块将其转换为立体声文件。例如,在这个模型中,默认音频文件,guitartune.wav
,使用。因为这个文件是单声道的,所以使用Vector Concatenate块将其转换为立体声。
先决条件
在开始这个示例之前,我们建议您完成以下示例:
所需的产品下载188bet金宝搏
要运行此示例,您必须拥有DSP System Toolbox™工具箱许可证。
所需的硬件
要运行这个例子,你必须有以下硬件:
树莓派硬件
意义上的帽子
耳机或扬声器
配置并运行Audio Visualizer Simulink模型金宝app
1.将一对扬声器或耳机连接到树莓派硬件的模拟音频输出。
2.将Sense HAT模块插入树莓派硬件的GPIO引脚。
3.打开音频可视化工具模型。
4.在Simuli金宝appnk模型工具栏上,选择应用程序>运行在硬件板>选项….
5.浏览到硬件实现>硬件板配置>目标硬件资源,并验证连接设置。
6.在Simuli金宝appnk模型中,双击音频文件读取块。默认情况下,指定的音频文件为guitartune.wav
.如需播放其他音频文件,请单击浏览,然后从电脑中选择所需的档案。如果您选择的文件是立体声文件,请从模型中删除Vector Concatenate块。
7.双击ALSA音频回放块。在这个模型中,块发送音频信号到“hw: 0, 0”
树莓派硬件上的音频设备。“hw: 0, 0”
是默认的音频插孔。要列出树莓派硬件上可用的音频播放设备,请在MATLAB命令窗口中输入以下命令。
R =覆盆子;a = listAudioDevices(r,'playback')
生成的结构化数组包含树莓派硬件上可用音频播放设备的名称和编号。
示例输出如下所示:
a(1)名称:“bcm2835 - bcm2835 ALSA…”设备:“0”
a(2)名称:“bcm2835 - bcm2835 ALSA…”设备:“0 1”
a(3)名称:“USB-音频- USB PnP声音设备…”设备:“1 0”
这个结果说明在树莓派硬件上有三种音频播放设备可用。ALSA音频设备编号为'|0,0|','|0,1|'和'|1,0|'。前两个设备分别对应树莓派硬件的模拟音频输出和HDMI输出。第三个设备是USB音频加密狗。使用回放设备0,0
,双击ALSA音频播放块,并指定设备名称参数,“plughw: 0, 0”
.
8.在硬件选项卡中的Simuli金宝appnk模型模式部分中,选择在船上跑然后点击构建、部署和启动.这个操作在树莓派硬件上构建、下载和运行模型。音频开始播放,Sense HAT的8x8 LED矩阵上的彩色条与正在播放的音频同步显示。
其他可以尝试的事情
将音频文件读块中的音频源文件更改为您最喜欢的音乐文件。
将音频文件读取块替换为树莓派块库中的ALSA音频捕获块,以体验实时语音可视化。