gpt4 book ai didi

python-3.x - PyAudio 一次播放多个声音

转载 作者:行者123 更新时间:2023-12-01 19:59:55 24 4
gpt4 key购买 nike

如何使用 PyAudio 将两种声音混合为一种。我浏览了整个互联网,但没有人回答这个问题。我也在考虑使用 audiolab 或 swMixer,但它们不支持 Python 3.4...我在考虑将它们的字节字符串转换为 numpy 数组,将其与另一个数组合并,然后转换回字符串。这可能吗?

wf1 = wave.open("YYY.wav", 'rb')
wf1 = wave.open("XXX.wav", 'rb')

p = pyaudio.PyAudio()

def callback(in_data, frame_count, time_info, status):
data1 = wf1.readframes(frame_count)
data2 = wf2.readframes(frame_count)

#Here i need to mix these two byte strings together

return (data, pyaudio.paContinue)

你是我最后的希望感谢您的任何提前!

最佳答案

我自己找到了解决方案,非常简单。所以我将在这里发布我的代码来帮助其他人:

wf1 = wave.open("YYY.wav", 'rb')
wf1 = wave.open("XXX.wav", 'rb')

def callback(in_data, frame_count, time_info, status):
data1 = wf.readframes(frame_count)
data2 = wf1.readframes(frame_count)
decodeddata1 = numpy.fromstring(data1, numpy.int16)
decodeddata2 = numpy.fromstring(data2, numpy.int16)
newdata = (decodeddata1 * 0.5 + decodeddata2* 0.5).astype(numpy.int16)
return (result.tostring(), pyaudio.paContinue)

关于python-3.x - PyAudio 一次播放多个声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28743400/

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