【问题标题】:Python or Matlab: synchronized audio playback with data visualization (waveform/STFT-spectrogram etc.)Python 或 Matlab:同步音频播放与数据可视化(波形/STFT-频谱图等)
【发布时间】:2023-03-30 16:26:01
【问题描述】:

我想做一个 python 或 matlab 项目,在与播放同步的同时可视化音频数据。

具体来说,这意味着在 GUI 中,我有两个主要区域,一个用于数据可视化,另一个用于音频播放。数据可视化的形式可以具体定义,例如作为波形或作为 STFT 频谱图。当我点击音频播放按钮时,我不仅可以听音乐,而且在数据可视化区域有一个实时的光标,与音频播放同步并指示时间播放位置。我想指出的是,我不希望它看起来像一个在每个缓冲时间都刷新频谱或波形的数字示波器。我希望在整个音频时间范围内显示数据可视化,只有 光标 与音频播放动态同步/移动。

所以我想问你,你知道有没有可以实现我描述的类似功能的现有项目或包?或者您对我如何从头开始将想法变为现实有什么建议?

【问题讨论】:

    标签: python matlab audio fft visualization


    【解决方案1】:

    原则上,它相对简单。您可能想要使用:

    • 一个 GUI 库,例如 PyQT
    • STFT 和其他数学库; SciPy 和 NumPy 是你的朋友
    • 用于读取和播放音频数据的音频库

    您还需要使用线程,因为您想同时播放音频和更新您的 GUI 等。因此,了解多线程是很有用的。

    虽然从某种意义上说没有问题,但有很多细节需要做对。如果您在部分或所有这些领域都没有经验,那么您需要学习很多东西。当然,这可能是件好事。

    最大的问题可能是音频数据的可视化。 Matplotlib 是一个流行的绘图库,但要集成到 PyQt 应用程序中有点棘手,而且可能实时要求使事情变得更加困难。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多