我試圖建立一個(gè)音頻可見(jiàn)波形轉(zhuǎn)換器一拉通感,但我發(fā)現(xiàn)了一個(gè)可愛(ài)的小錯(cuò)誤:/Users/nathanielastudillo/anaconda/lib/python3.6/site-packages/scipy/io/wavfile.py:172: WavFileWarning: Chunk (non-data) not understood, skipping it. WavFileWarning)Traceback (most recent call last): File "<ipython-input-8-c1948c42b069>", line 5, in <module> rate, audio = wavfile.read('3 - Headache.wav') File "/Users/nathanielastudillo/anaconda/lib/python3.6/site-packages/scipy/io/wavfile.py", line 166, in read data = _read_data_chunk(fid, comp, noc, bits, mmap=mmap) File "/Users/nathanielastudillo/anaconda/lib/python3.6/site-packages/scipy/io/wavfile.py", line 71, in _read_data_chunk data = numpy.fromstring(fid.read(size), dtype=dtype)TypeError: data type "<i3" not understood真令人愉快。我對(duì) numpy 的 dtype文檔進(jìn)行了一些挖掘,發(fā)現(xiàn) wavfile.py 難以咀嚼的非數(shù)據(jù)塊是一個(gè)小端有符號(hào)整數(shù),大概有 3 個(gè)字節(jié)長(zhǎng),根據(jù)@mgilson 對(duì)這個(gè)問(wèn)題的評(píng)論。無(wú)論出于何種原因,numpy 似乎不想使用 3 字節(jié)小端有符號(hào)整數(shù)。我想使用這里提到的修復(fù)程序,但我什至無(wú)法加載文件。嘗試將修改版本的 wavefile.py 拼湊在一起是否有意義?有誰(shuí)知道我如何解決這個(gè)問(wèn)題?我的實(shí)現(xiàn),借用this,是:from scipy import signalfrom scipy.io import wavfileimport scipy.io.wavfileM=1024rate, audio = wavfile.read('3 - Headache.wav')freqs, times, spect = signal.spectrogram(audio, fs=rate, window='hanning', nperseg=1024, noverlap=M - 100, detrend=False, scaling='spectrum')
為什么 scipy.io 中的 Scipy 的 wavefile.py 不能打開(kāi)波形文件?
幕布斯7119047
2021-11-23 19:58:37