WaveSurferガイド
 

早稲田大学 人間科学部 菊池英明
 

(2004/06/12) 公開
(2004/08/02) 2チャンネルデータの解説追加
(2004/08/25) リファレンスガイド(機能一覧)へのリンクを追加
(2005/03/30) 2.利用ガイドに追記
(2008/03/14) ビデオデータの扱いについて追記
(2008/10/11) MacOSX10.5(intelMac)への対応

 

本文書では、WaveSurferについて解説します。WaveSurferはスウェーデンのKTHが開発・運用している音声分析ソフトウェアです。 開発元による解説もありますが、初心者にはやや情報・説明不足なので、ここではできるだけ初心者向けに網羅的に解説することにします。

[目次]

1. インストール

2. WaveSurferの利用ガイド

3. コンフィギュレーションファイル

4. 2チャンネルデータの利用方法

5. ビデオデータの扱い

6. 利用上の注意事項

7. 感想

 

リファレンスガイド(簡易ガイド)

1. インストール

(1)アーカイブファイルのダウンロード

http://www.speech.kth.se/wavesurfer/より、"Download"をクリックしてプラットホームに応じたパッケージを選択。Windowsの場合は"Binary release for Windows"を選択。以下、Windowsをプラットホームにした場合について説明する。

※MacOSX対応のバイナリもありますが、intelMacでこれを起動すると途中でソフトウェアが停止することがあります。(録音、ファイルオープンなどでもダメです) 類似の質問がKTHのuser forumに出ているけれど1年以上放置状態でわかりません。

※intelMacでは、音声を録音することができません。GarageBandというプレインストールのソフトウェアで音声録音できますが、モノラル録音ができず、WaveSurferでピッチ抽出ができません。どなたか解決された方がいたらお教え下さい。GarageBandを用いた音声録音->ファイル化方法

(2)アーカイブファイルの解凍

保存したアーカイブファイル("waversurfer-xxx-win.zip")を解凍()。(解凍する場所はどこでも良いが、通常はC:\Program Filesの下に解凍するとよい。)

解凍してできたフォルダの下にwavesurfer.exeができるのでそれをダブルクリックしてWaveSurferを起動。

次回から簡単にWaveSurferを起動するために、"wavesurfer.exe!"のファイルアイコンを右クリックして「スタートメニューにアイコンを追加」を選択しておくとよい。

2. WaveSurferの利用ガイド

2.1 音声ファイルのオープン

(1)メニューの"File"から"Open"を選択して、音声ファイルを指定する。

オープンできるファイルの種類はRIFF(*.wav)、AU(*.au)、AIFF(*.aif,*.aiff)、その他(*.smp, *.snd, *.sd, *.mp3, *.nsp, *.raw, *.alw)。[参考]

(2)"Choose Configuration"のリストボックスから、"Speech analysis"を選択すると、スペクトログラム、基本周波数の分析結果が表示される。 リストボックスに表示されるそれぞれのコンフィギュレーションの機能はこちらを参照。

(2004/06/12現在、v.1.6.4ではサイズの大きいデータの基本周波数分析に失敗する。v.1.6.3をダウンロードして利用すれば問題なし。)

対話などの複数チャンネルで記録された音声ファイルを、チャンネル毎に分析したい場合には、"n-waveforms"を選択する。複数チャンネルで記録された音声ファイルの扱いについては4.を参照。

2.2 音声の再生

(1)再生した音声を聞くには、範囲を選択してプレイボタン(右上の黒い三角のアイコン)をクリックする。範囲の選択は、マウスのドラッグで行う。

2.3 ラベルの入力

(1)ラベルを入力するには、マウスの右クリックで現れたメニューより"Create Pane"を選択し、さらにリストから"transcription"を選択する。

 

(2)作成されたレイヤー内で、マウスをクリックしてから文字を入力すれば、ラベルが入力される。

 

(3)ラベルの文字列の修正は、文字を選択して行う。
 

(4)ラベルを削除したい場合は、Shiftボタンを押しながらマウスを右クリックして現れたメニューより"Delete label"を選択する。
 

(5)入力したラベルファイルを保存する場合は、レイヤー内でマウスを右クリックして現れたメニューより"Save Transcription As"を選択する。 ラベルファイルの保存形式には以下のものが用意されている(あらかじめ、レイヤー内右クリックで"Properties"を選択し、"Label file format"で指定しておく必要がある)。通常はXwavesでも利用できるようにWAVES形式にしておくとよい。

HTK: HMM音声認識ツールキットのHTKで利用できる形式

ISIS:

PHONDAT:

BOSS2:

TIMIT: TIMITデータベースの形式

WAVES: ESPS/Waves+の形式。Xwavesで利用できる。

WaveSurfer: WaveSurfer独自の形式。

2.4 ラベル区間の音の再生

(1)ラベル区間の音を聞くには、区間内でマウスの中クリックをする。またはその区間内でマウスをクリックしてから、Shiftボタンとスペースボタンを同時に押す。 (サウンドデバイスの制御がうまくいかずに、表示されているラベル区間とはずれた区間が再生されることがある。この点ではXwavesに軍配があがる。

2.5 基本周波数の表示

基本周波数データウインドウ内右クリックから、"Create Pane"->"Pitch Contour"を選択すると、基本周波数を分析した結果が表示される。

"Save Data File..."を選択して、*.f0を保存する。これで生成された*.f0のファイルは、テキスト形式になっている。
"Properties"->"Pitch Contour"->"Pitch Method"がESPSになっていると、ESPS/Waves+形式で保存される。具体的には4列の数値が並び、これはF0, Voice Probability, RMS, 自己相関係数の順になっている。
3. コンフィギュレーションファイル

よく使う環境(例えばWAV形式の音声ファイルとスペクトログラムとWAVES形式のラベルファイルを同時に表示する、など)を、コンフィギュレーションファイルに保存しておくことができる。

 

WaveSurferにあらかじめ用意されているコンフィギュレーションの主なものを以下に説明する。

Demonstration: デモ用。音声波形、スペクトログラム表示。

HTK Transcription: HTKのTranscription(*.mlf)(認識結果)をスペクトログラムとともに表示。

IPA Transcription: IPAのTranscriptionをスペクトログラムとともに表示。

Spectrogram: スペクトログラムを表示。

Speech analysis: 音声波形、スペクトログラム、基本周波数を表示。

TIMIT Transcription: TIMITのTranscription(*.phn)をスペクトログラム、基本周波数とともに表示。

Transcription: Transcription(*.lab)をスペクトログラム、基本周波数とともに表示。

WAVES Transcription: ESPS/waves+のTranscription(*.lab)をスペクトログラム、基本周波数とともに表示。

Waveform: 音声波形を表示。

n-waveforms: 音声波形を表示。 複数チャンネルある場合はチャンネル毎に分割して表示。

standard: 音声波形表示。

自前のコンフィギュレーションファイル(設定ファイル)がある場合は、あらかじめふさわしい位置に置いておく(通常はC:\Documents and Settings\ユーザ名\.wavesurfer\1.6\configurations)。

分節音ラベリングのコンフィギュレーションファイルはこちら、韻律(X-JToBI)ラベ リングのコンフィギュレーションファイルはこちら。)

(1)メニューの"File"から"Open"を選択して、音声ファイルを指定する。


(2)"Choose Configuration"のリストボックスから、ふさわしい設定を選ぶ。この時点で、あらかじめ入力されたラベルファイルがオープンされる。

自前のコンフィギュレーションファイルをふさわしい位置に置いた場合にはここでその名前がリストボックスに表示され選択できる。

分節音ラベリングのコンフィギュレーションファイルを適用して音声ファイル・ラベルファイルを表示した様子を以下に示す。

4. 2チャンネルデータの利用方法

2チャンネルの音声ファイルを、チャンネル毎に分析したい場合には以下の方法を使う。

 

4.1 音声ファイルのオープン

(1)メニューの"File"から"Open"を選択して、音声ファイルを指定する。<1チャンネルデータの場合と同様>

 

(2)"Choose Configuration"のリストボックスから、"n-waveforms"を選択する。これで左右のチャンネルの音声波形が上下に分割されて表示される。(上がL, 下がRチャンネル)

4.2 音声の再生

1チャンネルデータの場合と同様に音声を再生すると、左右のチャンネルに分割されて出力される。片側のチャンネルだけを聞きたい場合には、ヘッドフォンの片側だけを聞くのが手っ取り早い。片側のチャンネルの音声を両チャンネルから出力させるには、以下の青い丸で囲んだアイコンをクリックし、再生したいチャンネルの音量をどちらも100%とし、再生したくないチャンネルの音量をどちらも0%とすればよい。

 

4.3 スペクトログラムの表示

1チャンネルデータの場合と同様に"Create Pane"->"Spectrogram"を選択すると、左右のチャンネルが混じったスペクトログラムが表示されてしまう。左右のチャンネル毎に分割するためには、一度スペクトログラムを表示させた後、そののPaneの中で右クリックをして"Properties"->"Show channel:"を0or1(0は左チャンネル、1は右チャンネル)に設定すればよい。

4.4 基本周波数の表示

1チャンネルデータの場合と同様に"Create Pane"->"Pitch Contour"を選択すると、左右のチャンネルが混じった基本周波数が表示されてしまう。実は、2チャンネルデータの音声ファイルから片側チャンネルの基本周波数を抽出する機能がWaveSurferにはない(FAQには"How can I display one specific channel of a multi-channel sound?"の項に"You can use Properties | Waveform | Show channel to control this, same for spectrograms etc."。とあるがWaveSurferのGUIには片側チャンネルの基本周波数を抽出・表示する機能がない。コンフィギュレーションファイルの"analysis::addPitch"機能にも、"analysis::addSpectrogram"にある"-channel"オプションがなく、ライブラリレベルでそうした機能がないように思われる)。

 

裏技として、あらかじめ片側チャンネルの音声データをファイルに分離しておき("Transform"->"Mix Channels"を利用)、そこから片側チャンネルの基本周波数データを抽出してファイルに保存する(基本周波数のpaneで右クリック->"Save Data File")。後は、4.1の後、"Create Pane"->"Pitch Contour"で一度両側チャンネルの混じった基本周波数を表示したうえで、右クリック->"Open Data File"で先ほど保存した片側チャンネルの基本周波数データを開く("Create Pane"->"Open Data File"で直接それぞれの基本周波数データを開こうとしてもうまくいかない)。

 

5. ビデオデータの扱い

WaveSurferはビデオ(動画)データも扱うことができます。

同種のソフトウェアとして、Anvilというものもありますが、こちらの使用に際しては作者の許可を電子メールで得る必要があり、2008/3現在、作者にお願いしても返答をいただけません。

 

5.1 インストール

まず、WaveSurferのHPから"Documentation"をクリックして"Plug-ins"->"Video"とたどります。"Installation"の項目の指示に従ってインストールを進めます。まずはQuickTimeをインストールして、その後、"Manual Installation(Windows)"の指示にしたがって進めます。なお、2008/3現在、QuickTime Player ver.7(無料版)のインストール時、"Media Export Components"なるもののインストールは選択できず、そのためMPEG形式のビデオファイルについては音声波形を表示して処理することができません(ビデオの再生はできます)。

指示にしたがって"video.zip"をダウンロードした後、展開し、指示どおり、WaveSurferのディレクトリにプラグインのファイルとコンフィギュレーションのファイルをコピーします。WaveSurferのディレクトリとは、上の3.で説明した場所です。プラグインのファイルとは、 "video.plug"と"QuickTimeTcl.dll"で、コンフィギュレーションのファイルとは"Video.conf"です。

これでインストールは完了です。

5.2 ビデオデータのオープン

WaveSurferを起動した後、"File"->"Open"でダイアログボックスが開きます。ファイルの種類のところで"Movies"を選択すると、ビデオデータが指定できるようになります。オープンしたいビデオデータを選択して下さい。なお、2008/3現在、MPEG形式のビデオファイルを正常にオープンすることができません(私だけかもしれませんのであしからず)。AVI形式であれば問題ありません。

ファイルを指定すると、ビデオウィンドウが現れ、続いて音声波形が現れ、ダイアログボックスが表示されます。ダイアログボックスの中から"Video"を選択すると、WaveSurferにシーン画面と音声波形画面が表示されます。これで表示は成功です。

5.3 いくつかの問題

 
6. 利用上の注意事項

○大きな音声ファイルを扱うことによって生じる問題は、"File"->"Preferences"->"Miscellaneous"->"Sound storage"で"keep on disk"を選択しておくことで解決できるものがあります。

 

○関係ありませんがこちらのWaveSurferもなかなか便利そうです。

7. 感想

○これまでXwavesを利用してきた筆者にとって、WaveSurferの使い勝手は必ずしも充分とは言えないように思います。Xwavesも初心者にはわかりにくいユーザインタフェース設計(例えばマウスアクションによるスクロール操作や、スクロールバーのコントロールなど)が多々見られましたが、慣れれば問題にはならないものでした。例えば10分を超える音声ファイル(シングルチャンネル、16bit, 16kHzサンプリング)の基本周波数を表示させて操作すると、Xwaves(on linux)とWaveSurfer(on WindowsXP)では、表示も操作も圧倒的に前者の方がスムーズです。表示までにかかる時間は我慢するにしても、拡大・縮小にとてつもない時間がかかり、基本周波数を一度開いてしまうとそれに直接関係しない操作にまで影響してきます。Xwavesでも30分以上の音声ファイルで問題が生じることがありましたが、これはラベル数が多かったことに問題があったようです(もちろんラベル数の制限などなくてしかるべきですが)。

Xwavesと比較して良いといえるのは、音声加工・変換の機能が簡単に使えることでしょう。もちろん、プラットフォームを問わずに利用できる点も非常に重要な利点です。現時点でも随時バージョンアップされており、開発者に直接質問やリクエストができることから、今後、よりよいソフトウェアに発展していくことが期待できます。


 

Copyright ©2004 KIKUCHI Hideaki All rights reserved.