Я читаю wavfile и пытаюсь отобразить аудио данные. Функция scipy wave.read организует звуковые данные в виде двух столбцов (4351200, 2). К сожалению, ошибка signal.spectrogram, с непредвиденной ошибкой измерения.
Я попытался сгладить звуковые данные, используя np.reshape, np.hsplit, np.flatten. Я больше не получаю ошибку измерения (кажется, что это одна из основных проблем), но выходной график пуст. Любые предложения будут оценены!
import matplotlib.pyplot as plt
from scipy import signal
from scipy.io import wavfile
import numpy as np
sample_rate, samples = wavfile.read('C:\\Users\\tkim1\\Desktop\\WAV
sounds\\ANNOY 1m38s angry_cow.wav')
frequencies, times, spectrogram = signal.spectrogram(samples, sample_rate)
plt.pcolormesh(times, frequencies, spectrogram) #the time series does not make sense when i just flatten the data. it is now twice as long.
plt.imshow(spectrogram)
plt.ylabel('Frequency [Hz]')
plt.xlabel('Time [sec]')
plt.show()