How to get frequency using auto-correlation ?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hello, I need to get fundamental frequency using auto-correlation function. I have 3 5 second speech recordings. It has been told to me that I should use hamming window. I need to split a recording into smaller parts and then use autocorrelation for every single part. At the end I have to show that frequency on a graph. I would be thankful for any help.
clear all;
[y, fs] = audioread('kid.wav');
frame_duration= 0.1;
frame_len = frame_duration*fs;
fs= 44100;
f_size= fs*frame_duration;
n_f=round(length(y)/f_size);
temp=0;
w= hamming(512);
for i=1 : n_f
frame(i,:)= (y(temp +1 : temp + f_size));
temp= temp+f_size;
end
댓글 수: 1
Brian Hemmat
2019년 12월 31일
Take a look at the pitch function in Audio Toolbox. The default algorithm, normalized corrrelation function, does basically what you're describing.
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Audio I/O and Waveform Generation에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!