LAMEのエンコードモード
LAMEはエンコードの際、固定ビットレート(CBR)、平均ビットレート(ABR)、可変ビットレート(VBR)の3つのうち、いずれかのモードを使ってエンコードを行う。
固定ビットレート(CBR)
CBRは、デフォルトであり最も基本的なエンコードモードである。
このモードではファイル全体でどの部分でも同じビットレートを用いる。そのため、符号化が困難な部分も容易な部分も同じビット数が割り当てられるため、音質がまちまちである。つまり、符号化が複雑な部分は容易な部分に比べて低音質となる。
CBRには、出来上がるmp3のファイルサイズが正確に予測できるという利点がある。
平均ビットレート(ABR)
ABRモードでは、複雑な部分にはより高いビットレートを割り当て、さらに全体としては指定した平均ビットレートを維持する。結果としてABRはCBRよりも高音質となり、なおかつファイルサイズも狙い通りに出来上がるため、CBRに比べ推奨されている。
このモードは別の圧縮技術であるAAC, Liquid AudioのVBR処理に類似するものである。
可変ビットレート(VBR)
VBRモードでは、ビットレートを指定するのではなく、音質を指定する。エンコーダは各部分に費やす最適なビット数を選び、ファイル全部分において与えられた音質を維持するようにエンコードを行う。このため、同程度の(平均)ビットレートでも上記2つのモードに比べて高音質なデータが生成される。
VBRはクオリティーを指定することが出来るという利点があるが、一方、最終的なファイルサイズが予測できないという欠点がある。
ディスカッション
コメント一覧
はじめまして。MP3エンコードに未だにEAC+lameを使っていますw エンコードのコマンドラインオプションを解説しているサイトが非常に少なくなった中、こちらのサイトは貴重で、参考にさせてもらっています。
現在、EACは1.3、lameは3.100が最新だと思うのですが、いつも悩むのがコマンドラインオプションです。
最近は、ハイレゾも普及していますが、標準仕様のスピーカーの車でドライブしたりスマホ等で音楽を聴く程度ですし、そこまでのこだわりはない(よっぽどでなければ音質を聴き分けられるほどの耳を持っていない^^;)し、古い規格ではありますが、やはりMP3が一番使い勝手がいいと思っています。
ただ、MP3もビットレートの設定を320以上にできることもあり、容量との兼ね合いも含めてさらに悩ましいです。
所詮、圧縮音源、しかも非可逆圧縮ですし、音質的に限界があるのは当たり前、許容の範囲で聴ければいいと思ってはいるのですが。
基本的にはVBRでV 0設定のエンコードをしているのですが、最高音質はやはり245kbpsが限界というところなのでしょうか?
VBRで-Bを設定しても意味がないでしょうか?
VBRでさらに音質をよくする設定方法(コマンドライン)があれば、ご教授いただけるとありがたく存じます。
初歩的な質問で申し訳ございませんが、どうぞよろしくお願いいたします。
lameでVBRということだとV0が概ね最高音質ということになるかと思います。
-Bオプションは最大ビットレートを320kbpsより低く制約するオプションなので
指定するなら-bオプションで最小ビットレートを上げるのだと思いますが、
VBRでビットレートが下がる部分というのは、元々情報をあまり割り当てなくても
他の部分と同じ音質を維持できると判断された部分のはずなので、あまり変わらないような気はします。
(音質が向上したことがわかるかどうかは別として、mp3の規格内の設定なら最も高音質なのはCBRの320kbpsになります)
元々mp3は人間の耳の特性を利用して聴こえないはずの音声情報を上手く削るのが特徴なわけなので、
mp3を使う前提なら、自分が実際に聴いてみて音質の劣化に気付かない、上手く自分の耳を騙してくれる設定を見つけるのが、よいのではないかと思います。
ただ、いくら高音質設定にしても信号レベルでは確実に情報が失われているわけであって、その辺が気になるようならFLACとかの可逆方式にした方がよいかもしれません。