音声の線形予測分析
1. 単語音声の線形予測分析
音声の入った wav ファイルを lpfrmt というプログラム(コマンド)で分析します。 lpfrmt は ファイル内の全区間から Hamming 窓を使って分析フレームを逐次切り出して, 音声分析を行います。 default のフレーム長は 256 点,フレーム周期は 1/2 フレームですが, 今回はフレーム長を 512 点にするオプションを指定して分析します。 分析結果を格納するファイルの名前もオプションで指定します。 今回は,次の分析結果をファイルに格納することとします。 以下では file という表記を適当な名前に置き換えてください。
- テキスト形式の音声波形: file.txt
- 線形予測係数: file_a.txt
- ホルマント周波数: file_f.txt
- ホルマント帯域幅: file_b.txt
- FFT スペクトル: file_ffs.txt
- LPC スペクトル: file_lps.txt
そのために,下記をコマンドラインに入力し,実行してください。
lpfrmt -s 16000 -n 512 -w file.txt -a file_a.txt -f file_f.txt -b file_b.txt -F file_ffs.txt -S file_lps.txt file.wav
2. 分析結果の観察
分析が終了したら,まず,分析結果の入ったファイルが作成されたことを dir コマンド等で確認してください。
2.1. 線形予測係数
線形予測係数の入ったテキストファイル file_a.txt の中身を閲覧してみましょう。
分析結果の入ったファイルは全てテキストファイルですから,コマンドラインから more コマンド等で中身を見ることができます。
more file_a.txt
あるいはメモ帳のようなエディタで開くことも可能です。
notepad file_a.txt
このファイルでは,1 行が 1 分析フレームであり,各行には音声データ内でのフレームの開始時点 ( 256 pnt 16.00 ms であれば,256 標本点 16 ミリ秒)に続く a: の右に,当該フレームのデータから求められた線形予測係数が空白区切りで記されています。
2.2. ホルマントとスペクトル
続いて, プログラム frmtedit.exe を使って分析結果を観察します。
frmtedit
を実行してください。
frmtedit という標題のウィンドウが開いたら, まず,Formant Frequency (ホルマント周波数)と Formant Bandwidth (ホルマント帯域幅)の両欄に, 当該ファイルの名前(file_f.txt, file_b.txt) を入力してから (Browse ボタンを押して,ファイルを選択してもよい) Read ボタンを押してください。
すると,両ファイルの内容が個別のウィンドウ内に表示されます。 frmtedit での作業中はこれらのウィンドウを消さないでください。 操作の邪魔になるようであれば,ウィンドウを最小化してください。
その後,frmtedit ウィンドウ内の Waveform ボタンを押して音声波形ファイル (file.txt) を開きます。
さらに Spectrum ボタンを押して,LPC スペクトルと FFT スペクトルの入ったファイル (file_lps.txt, file_ffs.txt) を順に開いてみましょう。 時間(分析フレーム)と共に変化するスペクトルの様子を観察できます。
frmtedit を終了するには,frmtedit ウィンドウの Exit ボタンを押します。