gpt4 book ai didi

python - 使用pyaudio进行录音

转载 作者:行者123 更新时间:2023-12-02 17:14:41 25 4
gpt4 key购买 nike

我正在尝试使用 python 录制语音。我尝试使用 pyaudio 模块,它在我的计算机上保存了一个 wav 文件,但录制了静态语音。有什么建议吗?

import pyaudio
import wave

CHUNK = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 2
RATE = 44100
RECORD_SECONDS = 5
WAVE_OUTPUT_FILENAME = "voice.wav"

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)
frames.append(data)

print("* done recording")

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()

最佳答案

首先,确保您的麦克风已实际连接、打开且未静音。

打开流时您没有提供设备索引。这意味着您将获得 PyAudio 认为默认的设备。这可能不是您的麦克风。

在交互式 Python session 中使用 PyAudio 对象的 get_device_countget_device_info_by_index 方法。打印 get_device_info_by_index 返回的字典以确定哪个设备索引代表您的麦克风,并在打开流时提供该索引号作为 input_device_index 参数。

关于python - 使用pyaudio进行录音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40704026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com