我想制作一个直方图,对音频文件的RMS 幅度进行分类。目标是显示在文件的整个持续时间内,每个幅度级别上有多少信号。有没有一个Python包有这个功能?如果不是的话,如何编码呢?
我还想设置计算分析的频率范围,例如 1 到 6 kHz 之间。
我有以下作为粗略的开始,尽管我还不明白它代表什么,而且它肯定不使用 RMS:
import numpy as np
import matplotlib.pyplot as plt
Fs, data = wavfile.read('file')
print('data =',data)
print('number of samples in data =',len(data))
subset = data[0:44100]
subset = abs(subset)
print('number of samples in subset =',len(subset))
plt.hist(subset, bins='auto')
plt.show()
Run Code Online (Sandbox Code Playgroud)