在python中将字节转换为ndarray

时间:2018-05-03 13:59:55

标签: python numpy audio byte wav

我有一个python脚本,其中我得到对应于音频的字节(我对另一个以wav格式返回音频字节的程序进行API调用)。我想在这个音频上使用numpy进行一些信号处理。目前我正在将字节写入文件并使用librosa加载wav文件。但是由于中间磁盘I / O,存在延迟。我可以从这些音频字节中获取ndarray而无需写入文件吗? 下面是我写入文件并阅读ndarray

的代码
def func1():
    audioBytes = api_call_to_another_program()
    fp = open("tmp.wav", "wb")
    fp.write(audioBytes)
    return path

def func2(path, sample_rate=someNumber):
    myNdArray = librosa.core.load(path, sr=sample_rate)[0]
    # some signal processing stuff..

我想要这样的东西

def func1():
    audioBytes = api_call_to_another_program()
    interRep = someFunction(audioBytes) # an intermediate representation for compressing the data a bit
    return interRep

def func2(interRep):
    myNdArray = inverseOfSomeFunction(interRep)
    # some signal processing stuff..

0 个答案:

没有答案