1 首先安装pyaudio
:
brew install portaudio
pip install pyaudio
如果不知道如何安装brew
,可以参考:
2 运行程序:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
#录音程序 import pyaudio import wave # 一次读取数据流的数据量,避免一次性的数据量大大 CHUNK = 1024 # 采样精度 FORMAT = pyaudio.paInt16 # 声道数 CHANNELS = 1 # 采样频率 RATE = 11025 # 录音时长,单位秒 RECORD_SECONDS = 10 P = pyaudio.PyAudio() stream = P.open(format=FORMAT, channels=CHANNELS, rate=RATE, input=True, frames_per_buffer=CHUNK) # 录音开始 print(" * recording") frames = [] for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)): data = stream.read(CHUNK) print(data) frames.append(data) # 录音结束 print("*finish") stream.stop_stream() stream.close() P.terminate() wf = wave.open("outputB.wav", 'wb') wf.setnchannels(CHANNELS) wf.setsampwidth(P.get_sample_size(FORMAT)) wf.setframerate(RATE) wf.writeframes(b' '.join(frames)) wf.close() |
需要注意的是,如果直接运行,有可能会出现录制完成,但是没有声音的情况。
这主要是由于录音权限造成的,你用的IDE
没有获取到macOS
下的录音权限,这时,比较推荐在终端下直接使用python xxx.py
来运行~
本文最后更新于2023年2月13日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!