我正在尝试在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
提前致谢!
答案 0 :(得分:0)
您可以使用内置map
功能创建波形;
import math
t = range(8001)
wave = map(lambda x: math.sin(2 * math.pi * 440 * x), t)
对于播放声音,我建议您使用ossaudiodev或winsound,具体取决于您的平台。
您可能需要将wave
数组扩展为bytearray或合适类型的numpy数组,以便为音频设备进行消化。