簡體   English   中英

如何將winsound.Beep()保存到python中的音頻.wav文件?

[英]How do I save a winsound.Beep() to an audio .wav file in python?

我一直在嘗試做一些我認為非常簡單的事情,並且將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的文件寫入程序的同一目錄。 您可以調整持續時間(以秒為單位)和頻率。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM