音風景ブログ

目隠しテストによるエンコーダの音質評価などを行うブログです。

LAME コマンドライン指南

最新の2021年版もあります。
kamedo2.hatenablog.jp

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の違い

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


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


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

EACLAMEを組み込んで使う

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

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

-b 320 %source% %dest%

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

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

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


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