音風景ブログ RSSフィード

2011-10-27

最新LAME コマンドライン指南

2011年10月にリリースされた、最新版のLAME3.99で使えるコマンドラインを指南。

基本中の基本

lame [オプション] 入力ファイル [出力ファイル]

これがLAMEの基本。

lame -b 128 sample.wav sample.mp3

固定ビットレート(CBR): -b 192 または --preset cbr 192のように指定。数値部分には、192の他にも64 80 96 112 128 160 192 224 256 320などが有効。

lame --abr 128 sample.wav sample.mp3

可変ビットレート(ABR): --abr 192 or --preset 192のように指定。有効な数値はCBRと同じ。

lame -V2 sample.wav sample.mp3

可変ビットレート(VBR): -V2のように指定。有効な数値は0〜9.999で、数字は小さいほど高音質でファイルサイズも大きい。小数(例:-V2.3)も可。


最高音質のオプション

-b 320 固定ビットレートの320kbpsが、一般的なMP3フォーマットの最強設定。音の欠陥が生じるリスクは最小となる。極端な状況を除いては、下で解説するVBRの最強設定よりも音質がよいことはめったにない。

高音質のオプション

ハイファイ、静かな環境でのリスニング用。-V0(約256kbps)、-V1(約224kbps)、-V2(約192kbps)

このオプションを使うと、多くの人には、圧縮前のオリジナルと圧縮後のMP3の区別がつかない。聞き分けられる音質の違いが存在することはあるが、まれ。

持ち運び用のオプション

うるさい環境でのリスニングや低いビットレート用。ファイルサイズは小さい。-V4(約160kbps)、-V5(約128kbps)、-V6(約112kbps)

-V6は「許容できるレベル」くらいのMP3を出力する。

超低ビットレート

--abr 80(ステレオ出力)、--abr 56 -m m(モノラル出力)

超低ビットレート(100kbps未満)では、ABRが最良。

変換に時間がかかるけど高音質なオプション

-q 0


CBR,VBR,ABRの違い

CBRMP3の中で最も基礎的なエンコードモードで、どんな音が鳴っていようが(あるいは無音だろうが)それぞれのフレームに同じ数のビットが割り当てられる。利点は、エンコードする前からファイルサイズが予想できること、どのフレームも同じサイズなので、AVI動画に埋め込めるということ。開発はもう何年も前にストップしている。


VBRでは、ビットレート指定の代わりに、品質を示す数値指定でエンコードを行う。VBRは、いきなり難しくて複雑な音が出現した場合でも急激にビットレートを上昇させて対応できるので、CBRよりも合理的に音質を向上させることができ、全体のファイルサイズもCBRほど膨らさずにすむ。


ABRは、CBRVBR中間のモード。VBRとは違い、CBRと同じビットレート指定を行うが、必ずしもそれぞれのフレームに全く同じ数のビットを割り当てるわけではなく、音の複雑さによってビットレートを変動させることをある程度許す方式である。CBRよりも高音質。ファイルサイズは、音の内容によって若干ゆらぐ。


EACLAMEを組み込んで使う

日本語化したEACを起動したら、EACタブ>エンコードオプション>外部エンコーダをクリックして、エンコードに外部プログラムを使用するにチェックを入れる。現在最新のEAC V1.0 beta3では、残念ながら、EAC本体から指定できるデータとLAME3.99の仕様に整合性がとれていないので、2段目のエンコーダパラメータでは、LAME MP3 Encoderではなく、「ユーザー定義のエンコーダ」を指定。4段目には、自前で準備するなりRarewaresから落とすなりした最新のLAME.exeの場所を教えてあげよう。参照ボタンを押して、LAME.exeの場所を指定してください。その後は、以下の画像のように設定すればOK。

f:id:kamedo2:20120715092109p:image

画像ではVBRのV0(約256kbps)をオプションとして使っているが、ここは事情に合わせて書き換えてください。例えばさっき説明した最強設定を使いたい場合、

-b 320 %source% %dest%

と追加のコマンドラインオプション欄に入力します。変換が遅くてもいいからさらに最高音質を目指す場合、

-q 0 -b 320 %source% %dest%

と追加のコマンドラインオプション欄に入力します。入力ファイルを指定する場所に%source%、出力ファイルを指定する場所に%dest%を書くのを忘れないように。


これでEAC+LAME3.99の最強コンビが使用可能になったはずですが、確認のためにエンコードのテストをクリックして、動作確認しておきましょう。戻りコードに、エラーは発生しませんでした、と表示されればOK。

WAVEWAVE 2012/07/06 22:02 エンコード出来なくて困っていましたが、この解説のおかげで成功しました。
感謝します。

海 2012/07/14 23:19 EACの0.99b5+LAMEをずっと使っておりましたが、このたびWin7X64を導入するにあたり、最近のEAC+LAME事情を調べて、EACもLAMEもバージョンがずいぶん上がっていることがわかり、さっそく最新版を導入してみました。EACは64bit環境だとタイトルがうまく入らなかったり、ちょっとバグが目立つなぁという印象。
一番困ったのはLAMEの追加コマンドでした。
以前より可変ビットレートの-v 0を使用しておりましたが、-v 0は256kbps相当なんですね^^; 自分の無知さにやや頭痛…
最強設定は固定ビットレートの320なんですねぇ。。。知りませんでした^^;
最大限高音質、かつ、最少ファイルサイズとなると、やはり可変を使わざるを得ないかなと思っています。
初歩的な質問で申し訳ございませんが、-q 0とは何を意味するのでしょうか?また、%source% %dest%とは?? 理屈を知らず使っている愚かな自分ですToT それと、できましたら、EACでのエンコードのテストで出てくる結果についてご教授いただけると助かります。
とりあえずは意味をあまり理解しないままですが、-q 0 -v 0 %source% %dest%という追加コマンドラインでエンコードしてみようと思っています。

kamedo2kamedo2 2012/07/14 23:41 -qは、qualityの略で、エンコード時間を優先するか、品質を優先するかを決めるパラメータです。0-9が有効で、デフォルトでは3です。例えば0にすると、高品質なアルゴリズムを使うので時間が長くかかるかわりに音質は良くなります。

kamedo2kamedo2 2012/07/14 23:56 LAMEは、コマンドラインのエンコーダです。昔のDOSのように一つ一つコマンドを打ち込んで利用するのが本来の使い方ですが、EACにコマンドを指定しておくと、コマンドの打ち込みをEACが代行してくれるので便利です。%source%は、EACがリッピングしたWAVの場所のことです。%dest%は、できたMP3を出力する場所のことです。

海 2012/07/15 01:06 さっそくのご指摘をありがとうございます。、-q 0 -v 0 %source% %dest%という追加コマンドラインでCMPを選択したところ、なぜかwavファイルが出来上がってしまいます^^; ん〜なんなんだろうか。。。これはsourceのところに具体的な名前を入れなければならないというようなことでしょうか?^^;

kamedo2kamedo2 2012/07/15 08:29 普通、「エンコードが終了したらWAVファイルを削除」をチェックしなければ、まずWAVファイルができて、そのあとLAMEが呼び出されてMP3ができて、WAVもそのまま残ります。LAMEをうまく呼び出せてないのではと思います。そもそもLAMEをダウンロードしましたか? 最新版のLAME 3.99.5は、Rarewaresからダウンロードできます。http://www.rarewares.org/mp3-lame-bundle.php ダウンロードしたら、解凍して、その場所を「参照」ボタンを押してEACに教えてあげてください。

kamedo2kamedo2 2012/07/15 08:48 「エンコードのテスト」ボタンを押して、戻りコード:の部分に「エラーは発生しませんでした」と表示されるかどうか確認してください。そのボタンを押して、「詳細不明のエンコーダです!」と警告されるようなら、そもそもLAMEをダウンロードしていないか、うまくLAME.EXEの場所をEACに伝えられていません。

海 2012/07/21 00:07 すみません、waveファイルからMP3に変換されない件につきましては、EACの方の設定ミスでした。ユーザー定義のエンコーダーとしてLAMEの場所を指定してやって解決です。こんな初歩的なミスをしているとは思いませんでした^^; 失礼いたしました。
エンコードした音質とファイルサイズの両面から見て、-q 0 -v 0 %source% %dest% で十分満足という気がしています。
EACの解説HPでも追加のコマンドラインを詳しく解説しているところはなく、kamedoさんのHPは非常にありがたく、また勉強になりました。また何かあった際はいろいろと質問させていただきます。よろしくお願いいたします。本当にありがとうございました。

kazkaz 2013/01/07 16:25 色んな解説ページを試してダメで、
ようやくlameでエンコード出来ました。有難う。

torotoro 2014/06/18 23:12 参考になりました。ありがとうございます

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/kamedo2/20111027/1319720601