想问一下语音信号分帧加窗后做fft时怎么设置频率分辨率

想问一下语音信号分帧加窗后做fft时怎么设置频率分辨率

%     df = 2;
%     Nfft = fs/df+1   为什么我设置了频率分辨率后,做出来的频谱就不对了?是不是和窗函数有关系
    Nfft = fs;           
    f = (0:Nfft-1)*fs/Nfft;  
    win = hanning(fs);         
    inc = floor(0.3333 * fs);     
    frame = enframe(sig, win, inc);   
    fn = (length(sig) - fs) / inc + 1;
    L = floor(fn);
    y = 0;
    a = 0;
    for j = 1 : L                           
        frame1(j, :) = 2 * frame(j, :);     %这里为什么要乘2a = (abs(fft(frame1(j, :), Nfft)) / (Nfft / 2)) .^ 2 / 2;
        y = y + a;
    end
    y = y / L;                               
    y(1) = y(1) / 2;              
    Ly = 10 * log10(y / 4e-10);

频率分辨率应该是由信号的采样率和采样点数来计算出来的,不需要人为选定或设置这个分辨率。