我有一個語音框架。當我計算LP殘差時,我無法真正估計出球場。 我需要找出每幀的音高週期。但是,當我使用頻域和時域時,它們都無法正常工作。任何人都可以幫我嗎? 我需要它find Pitch-synchronous windowing based on pitch tracking在語音框架中找到音高
對我的代碼,結果是一樣 感謝
的MATLAB代碼如下:
frame_length=0.03*fs;
frame=wave1((i-1)*frame_length+1:i*frame_length);
N=256;
Y1 = fft(frame,N);
f = 0 : fs/N : fs - 1/N;
N1 = length(Y1);
%Y1(1) = [];
power1 = abs(Y1(1:floor(N1))).^2;
nyquist = 1/2;
freq1 = (1:floor(N1/2))/floor(N1/2)*nyquist;
[val loc]=max(power1);
pitch_priod = round(fs*(1./f(loc)));
或
frame=wave1((i-1)*frame_length+1:i*frame_length);
min_pitch=floor(fs/600); % Pitch for men 50 to 300 Hz and for women 100 till 600 Hz
max_pitch=floor(fs/50);
y1=xcorr(frame);
y1=y1./(abs(max(y1)));
y2=y1(min_pitch:max_pitch);
[val loc]=max(y2);
pitch_priod=loc+min_pitch;
Tnx但鏈接無法打開。 –
woops,我修好了鏈接,我的壞 – ben