.wav 파일에서 데이터를 가져 와서 FFT를 수행 한 다음 그 데이터를 사용하여 연주 한 음의 주파수를 찾으려고합니다. 파일을 여는 방법을 알았지 만 온라인 문서에서 데이터를 배열이나 목록으로 가져와 작업을 수행하는 방법을 알 수 없습니다. 아래는 지금까지 작성한 코드입니다..wav 파일의 데이터를 배열이나리스트로 가져 와서 어떻게 플롯 할 수 있습니까?
import wave
harp=wave.open('/Users/williamweiss2/Desktop/Test 2/harp.wav','r')
print("Frame rate of Harp sample is",harp.getframerate())
print(harp) #I thought that opening the file would automatically make an array.
의견을 보내 주셔서 감사합니다.
http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.io. wavfile.read.html –
FFT를 단독으로 사용하는 것보다는 연주 된 음표의 음조 주파수를 결정하는 데 신뢰할 수있는 기능이 아닙니다. 피치는 심리 음향이므로 스펙트럼 주파수와 매우 다를 수 있습니다. 아마도 가중치 자기 상관, ASDF 또는 AMDF를 사용하여 피치 추정 알고리즘을 시도해보십시오. – hotpaw2
@ hotpaw2 고마워요. 필자는 클래스에 대해 이렇게하고 있으며 마지막 과제에서 FFT를 사용하여 .txt 파일의 내용을 변형 한 다음 샘플링 속도, 샘플 수 및 피치를 추정 한 하모니 간의 주파수 변화를 알았습니다. 나는 여기서도 똑같이하려고 노력하고있다. 나는 녹음 및 샘플링 속도에서 샘플 수를 얻을 수 있지만, 나는 그것을 할 수있는 형태로 데이터를 격리하는 데 어려움을 겪고있다 FFT 그것을 계수하고 계수를 음모. 내가 올바른 길을 가고 있다고 생각하니? –