# BGM の準備

KAG では、BGM として Wave系 ( 無圧縮 Wave と Ogg Vorbis 等 ) と MIDI シーケンスデータと CD-XA の オーディオトラックを再生できます。
準備をしよう を読んで、準備してください。
ここでは ( 一応チュートリアルっぽいものなので ) 、CD-DA を使う方法で行きますので、Config.tjs 内で `type` を `"CDDA"` 、`doubleBuffered=false` に設定します。
あれ、`cdVolume` は指定しなくていいの？ CD-XA じゃなくていいの？ということですが、今回は CD-ROM のドライブをこちらで指定していく方法にしますので、`cdVolume` は設定の必要はありませんし、ドライブ検索に必要な情報を持っている CD-XA を使う必要もありません。
さて、適当な音楽 CD を CD-ROM ドライブに挿入してください。

# とりあえず鳴らしてみよう

再生するために playbgm というタグを使います。また、再生停止には stopbgm というタグを使います。すると・・・
`[wait time=200]
*start|スタート
[cm]
[playbgm storage="e:3"]
再生中・・・停止するにはクリックしてください。[l]
[stopbgm]
`
さて、ここで playbgm の属性 storage に `e:3` と指定されています。`e:` は CD-ROM を再生させる CD-ROM ドライブ文字ですので、あなたの環境にあわせてください。その次の 3 は再生させるトラックです。
ここではチュートリアルなので `e:` をつけていますが、本来は Config.tjs の `cdVolume` で指定したボリュームラベルを持つ CD が再生します。`e:` のように再生するドライブを指定しないで単にトラック番号の数字のみをかくと、KAG は `cdVolume` で指定されたボリュームラベルを持つ CD-ROM ドライブを探しに行きます。
また、CD-DA でない形式、たとえば MIDI シーケンスデータを再生させたい場合は、storage 属性に再生させたいファイル名を指定するだけで OK です。

# フェードイン・フェードアウト

フェードイン・フェードアウトを行うには、fadeinbgm タグと fadeoutbgm タグを使います。
このとき、time 属性がありますが、これはフェードイン・フェードアウトを行っている間の時間を指定します。
`[wait time=200]
*start|スタート
[cm]
[fadeinbgm storage="e:3" time=5000]
再生中・・・停止するにはクリックしてください。[l]
[fadeoutbgm time=5000]
`
なお、これらのタグはフェードイン・フェードアウトの終了を待たないので、終了を待つには [wb] タグを使う必要があります。

# そのほかの BGM に関するタグ

BGM を入れ替える xchgbgm というタグがあります。Wave 系や MIDI 系では、クロスフェードも可能です (Config.tjs 内を参照してください)。
Wave 系で OggVorbis や TCWF 、 Micsoroft ADPCM を利用する場合はプラグインを指定する必要があるので注意してください ( 準備をしよう を参照してください )。これは 効果音も同じです。
Note
MIDI 系でクロスフェードを行うには「クロスフェードされることを意図して作られた」データが必要になります ( たとえば同時に再生する２つの曲では同じチャネルを使わない、など )。しかし、あまり現実的ではありません。