我一直在尝试做一些我认为相当简单的事情,即将 winsound.Beep(8000,1000) 保存到名为 LongBeep.wav 的 .wav 文件中。有人可以回复并提供解决方案吗?我一直在寻找答案,但一无所获。这是我的代码:
import sounddevice as sd
import soundfile as sf
import winsound
import time
sr = 44100
duration = 5
myrecording = sd.rec(int(duration * sr), samplerate=sr, channels=2)
winsound.Beep(8000,1000)
sd.wait()
time.sleep(1)
sd.play(myrecording, sr)
sf.write("LongBeep.wav", myrecording, sr)
这对我有用:
import numpy as np
from scipy.io.wavfile import write
sps = 44100
freq_hz = 440.0
duration = 5
vol = 0.3
esm = np.arange(duration * sps)
wf = np.sin(2 * np.pi * esm * freq_hz / sps)
wf_quiet = wf * vol
wf_int = np.int16(wf_quiet * 32767)
write("sample.wav", sps, wf_int)
这会将名为 Sample.wav 的文件写入程序的同一目录中。您可以调整持续时间(以秒为单位)和频率。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)