【问题标题】:How can I play a single PCM sample in Python?如何在 Python 中播放单个 PCM 样本?
【发布时间】:2016-10-31 13:26:16
【问题描述】:

我打算仅在我希望以我选择的速度时将 PCM 样本批量传递到我的声卡中。在这种情况下,对我来说最好的解决方案是有一个函数来获取一个 PCM 样本,将其传递到声卡并播放它。

有图书馆可以做到这一点吗?我试过 alsaaudio,它可以让我将 PCM 数据写入它的alsaaudio.device,但只有在我完成向它写入数据后才开始播放(他们是如何完成的,这对我来说是一个很大的奇迹)。

如果没有,我可以写一个简单的函数来做到这一点吗?

【问题讨论】:

    标签: python-3.x wav pcm audio-player


    【解决方案1】:

    根据 Wikipedia,单个样本只是表示播放设备当前“幅度”的数值。 (https://en.wikipedia.org/wiki/Sampling_(signal_processing))

    音频文件的标准采样频率从 44.1 kHz 开始。这意味着您每秒至少有 44100 个样本。那么您真的要一个一个播放音频样本吗?我不确定,但可能不可能一一进行,因为将数据传输到音频设备的操作非常耗时。

    我建议你播放样品包。考虑发送数千个样本。试验什么值可以使声音听起来流畅并最大限度地减少初始延迟。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-11
      • 1970-01-01
      • 2012-05-04
      • 2017-05-23
      • 1970-01-01
      • 2011-06-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多