【问题标题】:Extract signal from mp3 using multimedia file block in Simulink使用 Simulink 中的多媒体文件块从 mp3 中提取信号
【发布时间】:2026-02-09 22:15:02
【问题描述】:

我在 Simulink 中有一个多媒体文件块,我正在使用它在我的扬声器上播放。它工作正常,但我想知道是否有一种方法可以使用 get_param 或类似的东西在 MATLAB 中提取信号。我想在 GUI 上绘制整个信号,所以我需要在播放之前获得整个信号。

【问题讨论】:

  • 我已经做了一点 Matlab(以及 GNU Octave),我知道可以调用外部程序甚至使用流。也许 SOund eXchange 会有所帮助? link

标签: matlab multimedia simulink


【解决方案1】:

我最终使用dsp.AudioFileReader 来阅读我的歌曲。甚至不关心来自多媒体文件,因为我不知道如何快速获取整个信号(它以采样率输出,我想在播放歌曲之前绘制信号)。

我创建了一个 while 循环,并以足够快的速度通过 dsp.AudioFileReader stepped,然后通过多媒体块播放我的歌曲。

【讨论】:

    【解决方案2】:

    您能否将多媒体块连接到“到文件”或“到工作区”块?这会将信号保存到您以后可以加载的文件中,或者直接保存到工作区变量中。然后,您可以在 MATLAB 中绘制它,或将其合并到您的 GUI 中。

    【讨论】: