【问题标题】:How to play a vector in Python? [duplicate]如何在 Python 中播放矢量? [复制]
【发布时间】:2012-09-28 03:26:46
【问题描述】:

可能重复:
Playing a sound from a wave form stored in an array

我正在尝试在 Python 中生成一个包含正弦波的向量(或类似的数据结构),并在不将任何内容记录到磁盘的情况下播放它。

类似于下面的 MATLAB 代码:

t = 0:1/8000:1;              % Generate a 1 second vector at a sampling rate of 8000 Hz
wave = sin(2*pi*440*t);      % Store a 440 Hz sine wave
sound(wave, 8000);           % Play the waveform

提前致谢!

【问题讨论】:

  • 告诉我们您为实现目标所做的努力。
  • 你试过什么?在您的问题中发布您的代码。不要回复此评论。 v.gd/whathaveyoutried

标签: python matlab audio vector


【解决方案1】:

您可以使用内置的map函数来创建波形;

import math
t = range(8001)
wave = map(lambda x: math.sin(2 * math.pi * 440 * x), t)

对于播放声音,我建议使用ossaudiodevwinsound,具体取决于您的平台。

您可能必须将 wave 数组缩放为 bytearray 或合适类型的 numpy 数组,以便音频设备可以消化它。

【讨论】:

    猜你喜欢
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    • 2016-05-08
    • 1970-01-01
    • 2023-03-08
    • 2013-01-29
    • 2016-11-17
    • 2023-03-12
    相关资源
    最近更新 更多