function [] = analyzeNoize( wavfile )
%ANALYZENOIZE ノイズが挿入された区間を検出する
%【出力】
% フレーム番号 ノイズなら1、ノイズでないなら0


% 音声信号の読み込み
[data,Fs,Bits] = wavread(wavfile);

% フレーム長
L = Fs / 100;

analyzeNoize = [];

%フレームごとに分割して分析
for count = 1 : L : (length(data) - L)  %Lで引くのはエラー対策暫定版
    wavdata = data(count:count+L-1);
    
    %ハニング窓をかける
    han_window = 0.5 - 0.5 * cos(2 * pi * [0 : 1/length(wavdata) : 1]);
    wavdata = han_window(1:length(wavdata))' .* wavdata;
    
    %離散フーリエ変換
    fftsize = 2048;   %フーリエ変換の次数, 周波数ポイントの数
    dft = fft(wavdata, fftsize);
    %振幅スペクトル
    Adft = abs(dft);
    %周波数スケール（サンプリング定理より、OHzからサンプリング周波数まで）
    fscale = linspace(0, Fs, fftsize);    %0〜Fsまでをfftsize個に分割
    %プロット（表示するのはサンプリング周波数の半分まで）
    %plot(fscale(1:fftsize/2), Adft(1:fftsize/2)); 
    %xlabel('周波数[Hz]'); ylabel('振幅スペクトル'); xlim([0,5000]);
    
    %表示した区間を、さらに前半と後半に分けて、それぞれのパワースペクトルの二乗和の平均をとり、その比を求める
    % ノイズだと1前後になる、音声だと2以上になる
    zenhan = Adft(1:fftsize/4);
    kouhan = Adft(fftsize/4:fftsize/2);
    proportion = sum(zenhan .* zenhan) / sum(kouhan .* kouhan);
    %disp(proportion);
    
    %pause();
    
    if proportion < 0.5
        analyzeNoize = [ analyzeNoize ; count 0 ];
    elseif proportion > 1.5
        analyzeNoize = [ analyzeNoize ; count 0 ];
    else
        analyzeNoize = [ analyzeNoize ; count 1 ];
    end
end

plot(analyzeNoize(:,2));

end

