使用python + octave进行音频分析

时间:2017-12-18 21:12:01

标签: python audio octave

我想用Python和Octave分析音频文件。我正在收到错误

    Traceback (most recent call last):
    File "C:/Users/peter/PycharmProjects/AudioTools/ShutterTest.py", line 11, in <module>
    (peaks, indexes) = octave.findpeaks(np.array(test), 'DoubleSided')
    ValueError: not enough values to unpack (expected 2, got 1)

我的代码是:

    import numpy as np
    from matplotlib import pyplot as plt
    from scipy.io import wavfile
    from oct2py import octave
    samplerate, data = wavfile.read("TestWav.wav")

    cb = np.array(data, dtype=np.int16)

    test =[d[0] for d in cb]
    octave.eval("pkg load signal")
    (peaks, indexes) = octave.findpeaks(np.array(test), 'DoubleSided')
    plt.plot(peaks)
    plt.show()

有人可以提供建议吗?

由于

1 个答案:

答案 0 :(得分:1)

从oct2py的4.0.0版开始(参见发行说明here),当需要更多输出时,有必要提供nout参数。

所以在你的情况下你必须这样做:

(peaks, indexes) = octave.findpeaks(np.array(test), 'DoubleSided', nout=2)