gpt4 book ai didi

python - 录制和播放音频 - python

转载 作者:太空宇宙 更新时间:2023-11-03 11:51:12 24 4
gpt4 key购买 nike

我将使用 python 实现语音聊天。所以我看到了几个例子,如何播放声音和如何录音。在许多示例中,他们使用了 pyAudio 库。
我能够录制语音并将其保存在 .wav 文件中。而且我可以播放 .wav 文件。但我正在寻找录制语音 5 秒钟然后播放。我不想把它保存到文件中然后播放,它不适合语音聊天。

这是我的录音代码:

p = pyaudio.PyAudio()
stream = p.open(format=FORMAT, channels=1, rate=RATE,
input=True, output=True,
frames_per_buffer=CHUNK_SIZE)
num_silent = 0
snd_started = False

r = array('h')

while 1:
# little endian, signed short
snd_data = array('h', stream.read(CHUNK_SIZE))
if byteorder == 'big':
snd_data.byteswap()
r.extend(snd_data)

silent = is_silent(snd_data)

if silent and snd_started:
num_silent += 1
elif not silent and not snd_started:
snd_started = True

if snd_started and num_silent > 30:
break

现在我想在不保存的情况下播放它。我不知道该怎么做。

最佳答案

我不喜欢这个库,试试“sounddevice”和“soundfile”,它们非常易于使用和实现。录制和播放语音使用这个:

import sounddevice as sd
import soundfile as sf


sr = 44100
duration = 5
myrecording = sd.rec(int(duration * sr), samplerate=sr, channels=2)
sd.wait()
sd.play(myrecording, sr)
sf.write("New Record.wav", myrecording, sr)

关于python - 录制和播放音频 - python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27227059/

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