Бары, вместо спектограммы
types = {1: np.int8, 2: np.int16, 4: np.int32}
wav = wave.open("/uploads/wav.wav", mode="r")
(nchannels, sampwidth, framerate, nframes, comptype, compname) = wav.getparams()
duration = nframes / framerate
w, h = duration*1, 100
k = int(nframes/w*4)
DPI = 80
content = wav.readframes(nframes)
samples = np.frombuffer(content, dtype=types[sampwidth])
plt.figure(figsize=(float(w)/DPI, float(h)/DPI), dpi=DPI)
plt.subplots_adjust(left=0, bottom=0, right=1, top=0.990, wspace=0)
plt.axis('off')
plt.margins(0)
plt.plot(samples[0::k])
plt.savefig("/uploads/spectrm.png", dpi=DPI)
С данным кодом, выстраиваю спектрограмму. Вопрос как перевести ее в бары, расстояние между которыми будет нулевым...
