Jos*_*sef 2 pyaudio python-3.x
如何将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)
Run Code Online (Sandbox Code Playgroud)
您是我的最后希望,谢谢您的进步!
我自己找到了解决方案,这很简单。因此,我将在此处发布代码以帮助他人:
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)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2770 次 |
| 最近记录: |