为什么两个应该具有相同音高的.wav不要

时间:2016-06-21 05:30:24

标签: python-2.7 scipy signal-processing physics acoustics

这是一个python计算物理课。我们给了两个.wav文件,其中包含竖琴文件和弹奏相同音符的钢琴。我们应该'#34;加载文件并采用幅度的FFT。从FFT确定两种仪器的基波频率到4 sig figs。"

这就是我所做的。

import scipy.io.wavfile as sciwav
import matplotlib.pyplot as plt
#import data from .wav file. This function returns the sampling rate and the data in an array.
harp_rate,harp_data=sciwav.read('/Users/williamweiss2/Desktop/Test2/harp.wav',mmap=False)
piano_rate,piano_data=sciwav.read('/Users/williamweiss2/Desktop/Test 2/piano.wav',mmap=False)
#perform the FFT on both sets of data and graph to find the index of the first harmonic.
plt.figure(1)
p=rfft(piano_data)
h=rfft(harp_data)
plt.subplot(121)
plot(abs(p),'b')
title('Piano FFT')
xlim(0,100000)
plt.subplot(122)
plot(abs(h),'g')
title('Harp FFT')

这一切都很好。现在,找到频率。注意到这是我被教导要做的事情。

FFT图中第一个尖峰的x值=指数。

deltaF =采样率/样本数。

指数* deltaF = Freq。发挥的说明。

我按照这些步骤获得了两个截然不同的音符。有没有人在我的过程中看到失误?即使他们超越我的头脑,任何想法都会受到赞赏。我只是一名获得物理学位的大三学生。首先十分感谢。

0 个答案:

没有答案