検索してでっちあげたバッチファイルの覚え書き


 クリエイションキットが出て、MODがにょきにょきと生え始めている今日この頃、各国のドヴァキン達の冒険たけなわといった時期ですが…皆さんどうお過ごしでしょうか?
 実は、私まだ殆どMOD入れて遊んでなかったり…お仕事終わったらおうち帰ってきて寝る生活が悲しいなぁ。


 それはさておき、Skyrimは凄いボリュームの割に容量が小さくなったと評判です。
 その(多分)一助となっていると思われるのが音楽ファイルの圧縮方式、xwm。
 凄いですが…これ、殆どの再生アプリケーションで対応されてません。
 VLC media playerが対応していますが、Windows7の64bitだと、動作保証はされてないっぽい(?)みたいだし、何より、自分愛用のアプリで他の楽曲とシャッフルしてBGMに流したい。
 そんな時には如何にも不便。
 その辺を何とかしようとググって色々した事の覚え書き。



※(注)当然ながら著作物の私的使用の範囲内が前提でアリマス。


 ググってみると、wavに変換可能な「xWMAEncode.exe」というツールが存在するとWikiに書かれていました。


Skyrim Wiki JP」
http://wiki.skyrim.z49.org/


→[カスタマイズ・MOD → ツール類]の中の[VLC Media Plaer]の項目です。


 とりあえず、一番最初にやるべきゲームデータの圧縮(bsa)の解凍についても触れられています。
→「[Steamクライアント入れたドライブ]\Steam\steamapps\common\skyrim\Data\」の「Skyrim - Sounds.bsa」をお馴染みの「BSA Unpacker」等でアンパックすると、上記のxwm拡張子のファイルが沢山出てきます。


※soundに入ってる音声はwavですけどね。


 次に「xWMAEncode.exe」を手に入れますが…これは、 DirectXデベロッパーセンターのダウンロードページから「DirectX SDK 」を落とせば入ってます。
 「DirectX SDK ([月] [西暦]) (英語)」とかいうリンクですね。
 しかし、コレはexe形式のインストーラなので、まんま実行するといらないものまでがっつり入ってしまいます。
 なので、目的のツールだけ抽出します。


・利用ツール
→「7-zip(日本語ページ)」
http://sevenzip.sourceforge.jp/


 まぁ、TESシリーズとか、Fallout3、NVをやってたら、MODの解凍、圧縮の為に導入済みかとも思いますが。
 無ければ導入。
 普段から便利だしネ。


 導入したら、ダウンロードした「DirectX SDK 」のexeファイルを右クリックして[7-zip → 開く]で展開。
→「\Microsoft DirectX SDK ([月] [西暦]))\Utilities\bin\x86\」の中にあるので、適当にどこかに解凍する。


 後は、wikiに書いてある通り、「xWMAEncode.exe」を目的の「xwm」ファイルのある所において、コマンドプロンプトウィンドウからコマンドを打てばいいんですが…
 1ファイル1ファイル打つのもめんどい。
 という事で、更に検索して、For文でコマンドラインから連続で実行できるよという、記述を見つけましたが、いちいちコマンドプロンプトウィンドウを呼び出すのすらメンドイな…と物臭な発想で、集めた情報を切り貼り修正してバッチファイルをでっちあげました。


・「xWMAEncode.exe」でxwmファイルを連続でwav化する為のバッチ。


@echo on
cd /d %~dp0
mkdir %~dp0wav
for /r %%A in (*.xwm) do xWMAEncode %%A %~dp0\wav\%%~nA.wav
pause


→利用法。
1)上の5行「@echo on 〜 pause」をコピーして、テキストエディタ(notepadとか)に貼り付け「xWMAEncode_command.bat」とか拡張子以外は適当な名前をつけて保存。
2)「1)」で保存したbatファイルを「xWMAEncode.exe」と一緒に、変換したい「xwm」ファイルがあるフォルダにコピーします。
3)batファイルをダブルクリックすると、プロンプトウィンドウが自動的に起動して、「xWMAEncode.exe」を置いたフォルダに自動的に「wav」フォルダが作成され、そこにwav変換されたファイルが格納されます。


※そのままの仕様だと、ファイルを置いたフォルダから下全ての「xwm」ファイルがwavに変換され、「wav」フォルダに全部まとめて放り込まれます。
 「xWMAEncode.exe」を置いたフォルダのファイルだけ変換したい場合は、上のバッチの4行目forの次にある「/r」オプションを削除して下さい。