from
Penarayuz
by Ozgur Emekli
Tool (GUI) for music audio transcription
|
| [fmutlak,nadlar,accur]=fbul(ostidx,oftidx,w,fs,data)
|
function [fmutlak,nadlar,accur]=fbul(ostidx,oftidx,w,fs,data)
load frekanslar
if min(length(data))>=2
data=data(:,1);
end
for m=1:length(ostidx)
fre=fft(data(ostidx(m)*w:oftidx(m)*w));
[u1 fdegerler(m)]=max(abs(fre( ceil(length(fre)/fs*100):round(length(fre)/fs*2000))));
fdegerler(m)=fdegerler(m)+ceil(length(fre)/fs*100)-1;
fdegerler(m)=fdegerler(m)/(length(fre)/fs);
end
% Her bir spektrumun max deerine karlk gelen x deeri temel frekans
% olarak belirleniyor:
for n=1:length(fdegerler)
asort=sort(abs(deger-fdegerler(n)));
[u2(n) nindx]=min(abs(deger-fdegerler(n))); % Notann ismi iin notann frekans
accur(n)=u2(n)/asort(2);
nadlar{n}=nota{nindx}; %deerinin en yakn olduu nota frekans bulunuyor:
fmutlak(n)=deger(nindx);
% fdegerler: Tespit edilen frekans
% fmutlak: Tespit edilen frekansn en yakn olduu nota frekans
end
|
|
Contact us at files@mathworks.com