用python写一段语音录制并保存
时间: 2023-08-04 20:10:15 浏览: 56
可以使用Python中的`pyaudio`库来进行语音录制,然后使用`wave`库将录制的语音保存成wav格式的文件。下面是一个简单的示例代码:
```python
import pyaudio
import wave
# 设置参数
CHUNK = 1024 # 每个缓冲区的大小
FORMAT = pyaudio.paInt16 # 采样精度
CHANNELS = 1 # 声道数
RATE = 44100 # 采样率
RECORD_SECONDS = 5 # 录制时长
WAVE_OUTPUT_FILENAME = "record.wav" # 保存文件名
# 初始化PyAudio
p = pyaudio.PyAudio()
# 打开音频流
stream = p.open(format=FORMAT, channels=CHANNELS, rate=RATE, input=True, frames_per_buffer=CHUNK)
print("* 开始录制...")
frames = []
# 录制音频
for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
data = stream.read(CHUNK)
frames.append(data)
print("* 录制结束.")
# 关闭音频流
stream.stop_stream()
stream.close()
p.terminate()
# 保存音频文件
wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
wf.setnchannels(CHANNELS)
wf.setsampwidth(p.get_sample_size(FORMAT))
wf.setframerate(RATE)
wf.writeframes(b''.join(frames))
wf.close()
```
这段代码会录制5秒钟的语音,并将其保存为wav格式的文件`record.wav`。你可以根据自己的需求修改参数,比如录制时长、采样率等等。