xaファイルの作り方

DTXManiaの曲データを作る際に問題となるのが、「音のファイルの大きさが非常に大きい」ことです。
一般的なWAVEファイル(44kHz 16bit stereo)の場合、おおよそ1分間の長さにつき10MBの大きさになります。このような大きさでは、人に配布するのも大変です。 (最近はそうでもないような気もしますが・・)

そのため、通常は「圧縮」することによってサイズを小さくするのですが、映像や音声といったファイルは通常の圧縮方法ではなかなか小さくなりません。? そこで、oggやmp3, xaといった特殊な圧縮方法を用います。
(どう特殊なのかに興味がある方は、「非可逆圧縮」というキーワードで独学してみて下さい)

さて、DTXManiaでは、oggとmp3, xaという3つの圧縮音声データを扱えます(*1)。ここでは、WAVEファイルからxaファイルを作成する方法について説明します。

(*1) WAVEファイルの中に、 mp3などの特殊な圧縮をしたファイルを詰め込むというワザがあるため、この表現は厳密には誤りなのですが、まぁ気にしなくていいです。


 ? 「Xaらっぱ〜」を使って簡単に変換するやり方

ここでは、「Xaらっぱ〜」を使って、簡単にWAV→XAの変換を行う方法を説明します。

まず、「Xaらっぱ〜」と「WAV to XA」の二つを入手して下さい。ダウンロードはこちらからどうぞ。どちらも、作者さんのサイトがなくなっている関係で、勝手ながらDTXManiaサイトに転載させていただいてます。

これらの2つのアーカイブを展開して、 同じフォルダに入れて下さい。例えば、下図のようになります。

また、XAに変換したいWAVEファイルを準備して、どこかのフォルダにまとめて入れておいてください。

ここまでで、準備は完了です。

さて、それではXaらっぱ〜を使ってみましょう。 XaWrapperを開いて下さい。下図のようなウインドウが表示されると思います。

次に、「ターゲットファイルディレクトリ」の横にある「参照」をクリックして、変換したいWAVEファイルが入っているフォルダを選択して下さい。すると、「変換ファイルリスト」に、そのフォルダ内のWAVEファイルの一覧が表示されます。

もし変換しなくても良いファイルがあれば、それをクリックして選択しておいて、 [削除]をクリックして下さい。

また、「変換後ファイル出力ディレクトリ」の横にある「参照」をクリックして、変換後のXAファイルを出力するフォルダを指定しておいて下さい。

ここまでできたら、「変換開始」をクリックすれば、なにやら黒いウインドウ (DOS窓) が出てきて、変換作業が開始されます。変換が終わったところで、「変換後ファイル出力ディレクトリ」で指定したフォルダを見て下さい。 XAファイルがちゃんとできているかと思います。
(WAVEファイルの種類によっては、XAファイルができていないことがあります(後述)。ですから、 XAファイルができていることを必ず確認して下さい。)

「Xa.exeが見つかりません。」と表示されて変換されない場合は、 xa(.exe) が XaWrapper(.exe)と同じフォルダに入っているかどうかを確認して下さい。

「出力ディレクトリパスの指定がされていません。」と表示されて変換されない場合は、「変換後ファイル出力ディレクトリ」の横にある「参照」をクリックして、変換後のXAファイルを出力するフォルダを指定してから、「変換開始」をクリックするようにして下さい。

何もエラーが出ずに変換が終わったように見えるのに、ある特定のWAVEファイルに関してだけはXAファイルが出力されていない、という場合は、変換しようとしたら、"not PCM format." といったエラーが出て、変換できなかった場合。?をご参照下さい。

? なお、ウインドウの右にある「変換形式」は最初「XAエンコード」になっていると思いますが、これを「WAVデコード」に変更すると、 XAファイルをWAVファイルに逆変換することができます。

XAファイルの波形を編集したりしたい場合には、これを使って一旦WAVEファイルに戻してから、各種WAVEファイル編集ツールを使って編集し、最後にまたXAファイルに変換し直すことになります。

また、「変換データ設定」の「圧縮ビット数」は最初「8Bit」ですが、これを「6Bit」や「4Bit」にすることで、より小さなサイズのXAファイルを作ることができます。

ここの数字を小さくすればするほど、XAファイルもより小さくなりますが、その分音質は悪くなります。

ですから、例えば

  • ハイハットは音質が悪いと耳につくので、「8Bit」で圧縮する。 多少サイズが大きくなっても、ハイハットのWAVEファイルは 元々サイズがそれほど大きくないのでOK。
  • バスドラム、スネア、タムの音質はそれほど気にはならないので、 「4Bit」でめいっぱい圧縮。
  • クラッシュシンバルは中間の「6Bit」で圧縮。
  • BGMは(もしXAにするなら)サイズの影響が大きいので、 「4Bit」にする。

といった使い分けをすることで活用できます。
%%筆者は面倒なので全部「6Bit」でやっちゃいますが・・(^_^;;%%


 ? DOS窓をそのまま使うやり方

xaに変換するためには、xa.exeというプログラムを使うのですが、このプログラムをダブルクリックすると一瞬ウインドウが出てすぐ閉じてしまい、いったいどうやって使えばいいのかさっぱり分からない・・・という人が多いと思います。ここでは、(Xaらっぱ〜を使わずに) 直接xa.exeを使う方法について説明します。

まず、「WAV to XA」(5040)を入手して下さい。ダウンロードしたら、展開?しておいてください。

次に、いわゆる「DOS窓」を開いて下さい。Windows98/98SE/Meの場合は「MS-DOS プロンプト」、 Windows2000/XPは「コマンド プロンプト」がそれです。 いずれも、スタートメニューの [プログラム] → [アクセサリ] あたりにあると思います。

正しく開けた場合、↓このようなウインドウが開くはずです。

話を簡単にするために、例えばエクスプローラーで、**Cドライブのアイコンをクリックしてから、**ウインドウ上にあるメニューの[ファイル]-[新規作成]-[フォルダ]を順にクリックして、 「temp」という名前のフォルダをCドライブ直下に作ったとします。

こんな感じで作業用のフォルダ(c:\temp)を作る。

次に、そのフォルダに、xa(.exe)と、変換したいwavファイルをコピーします。

ここまでで、下準備が完了。 ここから、実際に変換作業を行うことにします。

まず、「今参照しているドライブ」をCドライブにするために、

c:[Enter]

と入力します。(C: と入力して、[Enter]キーを押します。)
これで、画面の表示の左端がC:になったと思います。 (C: の後には何か書いてあることがありますが、無視して下さい)
注: 右の図では分かりやすくするために、わざと一旦d:と入力しています。

次に、「今参照しているフォルダを変更」するために、CD (CHDIR) コマンドを使います。

cd \temp[Enter]

(または chdir \temp[Enter] )
ここまでで、「今参照しているドライブとフォルダ」が、先程準備したドライブとフォルダ(c:\temp)になりました。

このフォルダにあるファイルの一覧を見てみましょう。

dir[Enter]

これで、「今参照しているフォルダにあるファイル」が一覧表示されます。

ここで、xa.exe や wavファイルがあることを確認します。もしないのでしたら、下準備も含めてどこかに間違いがないかを再確認して下さい。

xa.exe とかがちゃんとあるようでしたら、いよいよWAVからXAへの変換です。例えば snare.wav というWAVファイルがあったとして、これをXAファイルに変換するためには、

xa snare.wav[Enter]

と入力します。そうすると、なにやら表示された後、snare.xa というファイルができると思います。本当にできたかどうかはどう確認するかというと・・そう、

dir[Enter]

ですね。

他にもファイルがあると思いますので、順番にファイルを変換していって下さい。

xa *.wav[Enter]

とすると、フォルダにあるWAVファイルすべてをXAファイルに変換することになり、入力が楽です。

また、上図の例では、最後に

xa[Enter]

とだけ入力しています。すると、xa.exeの使い方の簡単な説明が出てきます。それを良く読むと、

xa -e8 snare[Enter]

とすれば、もっとも音質の良い形でsnare.xaへの変換ができるとか、

xa -p snare[Enter]

とすれば、その場でsnare.xaの再生ができるとか、

xa -d snare.xa[Enter]

とすれば、XA→WAVという「逆変換」ができるとかいうことも分かると思います。

変換が終わったら、コマンドプロンプトのウインドウを閉じて、最初のエクスプローラーをもう一度見て下さい。

xa.exe やwavファイルをコピーしたところに、xaファイルもできているはずです。これをコピーして使って下さい。
(もしできていなかったら、一度ファンクションキーの[F5]を押してみて下さい。)


 ? 変換しようとしたら、"not PCM format." といったエラーが出て、変換できなかった場合

「Xaらっぱ〜」を使っているとわかりにくいのですが、「確かに変換したはずなのに変換後のXAファイルが見あたらない」ということがあります。その時は、変換中の画面をよく見て下さい。 "not PCM format." というエラーが出ていることがほとんどです。

これは、WAVEファイルが特殊な形式になっている場合に発生します。 (RIFFチャンクつきMP3ファイルなど。)

対策は、「特殊な形式でないWAVEファイルを使う」しかありません。 RIFFチャンクつきMP3ファイルでしたら、SCMPXを使って CONVERT - Single file - Decode to wav とすることで元の(特殊でない)WAVEファイルに戻すことができますが、このような場合も含めて、普通は(CDのリッピングをやり直すなど) 「元のWAVEファイルを作り直す」方がいいと思います。


DTXMania Q&A