我想处理python中的音频blob,它是通过javascript客户端的socketio接收的。
我希望音频数据像numpy数组一样处理它,但我似乎无法正确转换blob。
音频blob包含:
[Float32Array[32768], Float32Array[32768]]
在python中,我尝试过:
@socketio.on('gotaudio')
def get_audio(blob):
//CONVERT THE BLOB
data = blob[0]
dat = np.array(json.loads(data));
//DO SOME SIGNAL PROCESSING
fftData=abs(np.fft.rfft(dat))**2;
....
但这引发了错误:
TypeError:期望的字符串或缓冲区
如何正确转换音频blob,以便可以使用np.fft处理?
答案 0 :(得分:2)
您是否尝试过先使用base64.b64decode()
? (base64在标准库中)
这将有助于获得示例blob。