2011年8月28日

音楽DVDからMP3を作成する

最近、会社の行き帰りの道中でウォークマンを聴いてます。

JAZZが好きでダイアナ・クラールのライブDVDをもってるんですが、
これをMP3にして持ち歩けないかなーと、試行錯誤した記録です。
 

Diana Krall / Live In Paris
Diana Krall / Live In Rio
















今回MP3化したのはこの2枚。

まずはDVD DecrypterでChapterごとにAC3(Doluby Digital)を抜く。
どちらもDTSでも記録されているんですが、聴き比べたところAC3のが音質がよかった。
DTSはいかにもデジタル的な音で暖かみが感じられず、
AC3は中低音の豊かさがありJazzには向いてるような。

さて、AC3を抜いたはいいけど、どうやらAC3から一旦WAVE形式にしないといけないみたい。
色々調べたら、BeSweetというのが変換精度がよさそうなので、こいつを使って変換することに。
で、更にここからLAMEを使ってMP3に変換するんですが、一個一個やるのはかなりメンドイ・・・。

ということで、生まれてはじめてバッチファイルというのを作って自動化してみました。


@echo off

cd /d "%~dp0"

:start

if "%~1" == "" goto end
if "%~x1" == ".ac3" (
    echo [ %~nx1 ]
    echo AC3 -^> MP3 変換を実行します。
    echo.
   
    pause
   
    echo.
   
    BeSweet -core^( -input "%~1" -output "%~dpn1.wav" -2ch ^) -azid^( --maximize ^)
    lame -V 0 --vbr-new "%~dpn1.wav" "%~dpn1.mp3"
    del "%~dpn1.wav"
   
    echo.
) else if "%~x1" == ".AC3" (
    echo [ %~nx1 ]
    echo AC3 -^> MP3 変換を実行します。
    echo.
   
    pause
   
    echo.

    BeSweet -core^( -input "%~1" -output "%~dpn1.wav" -2ch ^) -azid^( --maximize ^)
    lame -V 0 --vbr-new "%~dpn1.wav" "%~dpn1.mp3"
    del "%~dpn1.wav"
   
    echo.
) else if "%~x1" == ".dts" (
    echo [ %~nx1 ]
    echo DTS -^> MP3 変換を実行します。
    echo.
   
    pause
   
    echo.
   
    BeSweet -core^( -input "%~1" -output "%~dpn1.wav" -2ch ^) -azid^( --maximize ^)
    lame -V 0 --vbr-new "%~dpn1.wav" "%~dpn1.mp3"
    "%~dpn1.wav"
       
    echo.
) else if "%~x1" == ".DTS" (
    echo [ %~nx1 ]
    echo DTS -^> MP3 変換を実行します。
    echo.
   
    pause
   
    echo.
   
    BeSweet -core^( -input "%~1" -output "%~dpn1.wav" -2ch ^) -azid^( --maximize ^)
    lame -V 0 --vbr-new "%~dpn1.wav" "%~dpn1.mp3"
    "%~dpn1.wav"
       
    echo.
) else (
    echo [ %~nx1 ]
    echo 処理できないファイル形式です。
    echo.
   
    pause
   
    echo.
)

shift
goto start

:end

pause

BeSweet.exeとlame.exeとこのバッチファイルを同階層に置いておき、
AC3かDTSファイルをこのバッチファイルにドロップすると自動的に変換してくれます。
拡張子の小文字と大文字を無視する(Perlでいう正規表現のiオプション)みたいな
書き方がわからなかったので、無駄に条件分岐させています^^;


BeSweetのオプションはぶっちゃけよく理解できてないです。
とりあえず2ch化するのと音量を最大化(ノーマライズ ?)するオプションだけ付けてます。
この辺りとかLAMEのオプションは必要に応じて書き換える必要があるけど、
全部ドロップしてあとはエンター連打でいいので、楽に変換できました^^v

バッチファイルって何かと便利なのでこれからも勉強してこっと。