先日「WavPackを使ったDSDの圧縮」という内容を取り上げましたが、調べる過程でWavPackに関する情報が少ないことが判りました。
便利なのに、使われないのはもったいない!ということで、当サイトでWavPackでDSDを圧縮する方法を紹介します。
用意するアプリ
圧縮アプリ:
・エンコーダー:WavPack
・上記のフロントエンド:BatchEncoder、BatchEncoderの日本語化ファイル
再生アプリ:
・プレーヤー:foobar2000
・上記のコンポーネント:Super Audio CD Decoder (要バージョン1.0.4以上) ※
※再生アプリのセットアップ方法は、DSDネイティブ再生(foobar2000; SACD Decoder 1.0.0以降)を参照してください。
アプリの入手とインストール
アプリの入手
WavPack、BatchEncoder及びその日本語化ファイルを入手します。
1.?WavPackのページにアクセスし、WavPackのバイナリファイルをダウンロードします。
32ビット版のWindowsをお使いの場合は「WavPack Win32」、64ビット版のWindowsをお使いの場合は「WavPack Win64 (for 64-bit Windows)」をダウンロードします。よくわからない場合は、前者をダウンロードすることをお勧めします。
2. BatchEncoderのページにアクセスし、BatchEncoderのバイナリファイルをダウンロードします。
32ビット版のWindowsをお使いの場合はPlatformが「Windows 32-bit」になっているものを、64ビット版のWindowsの場合は「Windows 64-bit」のファイルをダウンロードします。好みでInstallerかPortableを選択してください。
3. BatchEncoderの日本語化ファイルのページにアクセスし、日本語化ファイルを入手します。原則、最新ファイルをダウンロードしてください。
アプリの日本語化
BatchEncoderを日本語化します。
1. BatchEncoderをインストールします。インストールにあたり特に注意点はありません。
2. BatchEncoderのインストール後、BatchEncoderのインストール先フォルダーに日本語化ファイル「ja-JP.language」を入れます。
インストーラーを使った場合のインストール先:
・x64版:C:\Program Files\BatchEncoder (x64)
・x86版:C:\Program Files (x86)\BatchEncoder (Win32)
3. BatchEncoderを起動し、BatchEncoderを起動し、メニュー[Language]→[Japanese (日本語)]を選択します。
3. 表示が日本語になれば、日本語化は完了です。
アプリ上のWavPack設定
1. 入手したWavPackのバイナリファイルを任意の場所に置きます。
2. BatchEncoderで、メニュー[オプション]→[形式の設定]を選択し、一覧から「WV (WavPack)」を選択します。さらにコマンドライン実行ファイルの場所の「…」ボタンから「WavPack.exe」を選択します。あとは「OK」をクリックして画面を閉じます。
DSDファイルをWavPackで圧縮する
いよいよDSDファイルをWavPackで圧縮します。
1. BatchEncoderを起動し、空白の部分にDSDファイルをドラッグ&ドロップします。必要に応じて出力先を指定します。指定しない場合は、元ファイルと同じ場所に変換後のファイルが出力されます。ファイルをドラッグ&ドロップした後、「変換開始」をクリックします。
2. すべてのステータスが完了になれば変換完了です。
WavPackで圧縮されたDSDファイル(WavPack DSD)を再生する
WavPack DSDを再生します。
1.?DSDネイティブ再生(foobar2000; SACD Decoder 1.0.0以降)を参照して、foobar2000をセットアップします。Super Audio CD Decoderのバージョンは1.0.4以降にします。
コメント
私はDACの再生環境を持っていないので、もしかしたらトンチンカンなコメントかもしれません。
foobar2kで再生できるのなら、そのままコンバートを試されては如何ですか?
foobar2kにはWavPack変換のプリセットも用意されていますし、そのままでだめなら外部実行ファイルを指定してのテンプレートを作る手があります。
CD-DAでですが、試してみたら簡単にチャプター付のアルバム変換ができました。
>_doiceさん
私がfoobar2000でWavPackへの変換機能がついているのを忘れていたということもあり、確かにごもっともなご指摘です。
早速試したところ、どうやら内部でいったんPCM変換→WavPack圧縮という処理を行っているらしく、WavPack DSDとは異なるファイルが出力されました。
私の環境ではDSD256の変換を行い、352.8kHz/24bitのWavPackが出力されました。
実は私自身が、DSDファイルをConvertメニューを使うのが初めてで、これをきっかけに内部動作を知ることができました。ありがとうございました。
いずれWavPack DSDを直接作れる日は来る気はしますね。
BatchEncoderを使ってwavpack DSDファイルを元のDSDファイル(.dff)にデコードすることは可能でしょうか?
プリセット編集からコマンドラインオプションに -r を入れれば、圧縮前の拡張子には一応なったのですが、ファイルが壊れているようで再生できないんです。
おそらくはBatchEncoderの形式の設定にあるIDの項目が適切でないのかもしれませんが、どうやったらDSDデコードの指定ができるのか分かりませんでした。
対策がありましたらご教示お願い致します。
@momoさん
まだ年始休暇で検証できる環境にいないため資料レベルですが、以下のオプションでいかがでしょうか。
WavPackの場合は、エンコードプログラムはwvpack.exeですが、デコードプログラムはwvunpack.exeになります。
–dffオプションを付けることにより、デコードした後のDSDを強制的にDSDIFFフォーマットにすることができます。
参考URL:Using WavPack Version 5.1.0
http://www.wavpack.com/wavpack_doc.html
お騒がせして申し訳ありません。原因が分かりました。
コマンドラインのテンプレートに$OPTIONSを入れた状態でコマンドラインオプションに「-r」を入れるとエラーになるようです。
「–dff」「–dsf」のように強制的な指名だと問題ありませんでした。もちろん、元のDSDファイルの拡張子と同じでないとそのままでは再生できませんが。
コマンドラインのテンプレートは、デフォルトの「$EXE -y $INFILE $OUTFILE」のままにしておくのが賢明でした。
年末年始のお忙しいところにご対応頂きありがとうございます!!