如何查找和绘制wav文件中的最大样本

时间:2013-10-30 14:59:04

标签: python wav

enter image description here我写了这段代码,在那里我读了一个wav文件然后它确定了哪个是更大的样本,但这只给了我最大样本的可能性,但不是它的值,所以什么可以我知道它的价值在哪?当我绘制它时,为什么它不适合你的规模。例如,它表示值为6920,但是当我绘制时,它只达到5535。 谢谢!

import matplotlib.pyplot as plt
import numpy as np
import wave
import sys


spf1 = wave.open('C:/Users/Martinez/Documents/Diego/Facultad/Proyecto Final/Mediciones Cubo/5 sentado/Lado 1_5 sentado.wav','r')

#Extract Raw Audio from Wav File
signal1 = spf1.readframes(-1)
signal1 = np.fromstring(signal1, 'Int16')

fs1 = spf1.getframerate()


#If Stereo
if spf1.getnchannels() == 2:
    print 'Just mono files'
    sys.exit(0)
print np.arange(signal1)
m = abs(signal1).max()

print m

Time=np.linspace(0, len(signal1)/float(fs), num=len(signal1))

fig = plt.figure()
ax1 = fig.add_subplot(111)
ax1.vlines(Time[m:], [0], abs(signal1)[m:] )
ax1.grid(True)
ax1.axhline(color='black', lw=2)

plt.show()

1 个答案:

答案 0 :(得分:1)

不会abs(signal1).max()做这个伎俩吗?