python如何调用录音设备
时间: 2023-08-11 20:20:09 浏览: 86
Python可以通过调用录音设备来进行录音。通常使用PyAudio库来实现。以下是一个简单的示例代码,可以录制一段音频并保存为wav文件:
```python
import pyaudio
import wave
# 设置参数
chunk = 1024 # 缓存区大小
sample_format = pyaudio.paInt16 # 采样格式
channels = 2 # 声道数
fs = 44100 # 采样率
seconds = 5 # 录音时长
filename = "output.wav" # 保存的文件名
# 初始化PyAudio
p = pyaudio.PyAudio()
# 打开录音设备
stream = p.open(format=sample_format,
channels=channels,
rate=fs,
frames_per_buffer=chunk,
input=True)
# 开始录音
frames = []
for i in range(0, int(fs / chunk * seconds)):
data = stream.read(chunk)
frames.append(data)
# 停止录音
stream.stop_stream()
stream.close()
p.terminate()
# 保存音频文件
wf = wave.open(filename, 'wb')
wf.setnchannels(channels)
wf.setsampwidth(p.get_sample_size(sample_format))
wf.setframerate(fs)
wf.writeframes(b''.join(frames))
wf.close()
```
这段代码中,通过调用`pyaudio.PyAudio()`初始化PyAudio库,然后通过`p.open()`函数打开录音设备。使用一个循环来不断读取录音设备的数据,将数据缓存到`frames`列表中。最后,停止录音设备,关闭PyAudio库,将缓存的音频数据写入到wav文件中。
阅读全文