藤本健のDigital Audio Laboratory
第553回:iTunesのVBRとCBR、どちらの音が良い?
第553回:iTunesのVBRとCBR、どちらの音が良い?
AACエンコード後の音を比較検証
(2013/6/3 15:58)
MP3やAACのエンコードの設定に存在するCBRとVBR。どちらの設定が音がいいのだろうか? というテーマは古くからあったが、このDigital Audio Laboratoryではしっかりと検証をしたことがなかった。いつかやってみよう……と思いつつ10年近くたってしまったのだが、先日Facebookのタイムラインを見ていたら、「マニアックかつある一定のエンジニアしか解らない話」としてクラムボンのミトさんがまさにこのテーマでの書き込みをしていたのだ。ちょっと面白いので、改めて細かく検証してみることにした。
iTunesデフォルトのVBRよりも、CBRの方が音が良い?
ミトさんに確認をしたところ、「書き込みコメント、引用してもらって結構ですよ」というお返事をいただいたので、まずは、そのコメントを紹介すると以下のとおり。
クラムボン ミトさんのコメント
とある近々発売予定のアプリの仕事でマスター2Mix(最終音源)を"AAC+160kbps"で欲しいと言われ、おーそんなこともあるんだなあと思いつつ自分のMix音源(24/48)をiTunesに入れ早速エンコード。
(てか、「なぜPro Tools使ってるんだからそっちでしない? 」と言われそうだけど、基本相当厳格なオファーでもない限り、自分はマスターを24/48で納品することにしてる。そもそも自分のMacはおろかAVIDもAppleもそもそも信用してないのにエンコードとか正直どんな方式が良いのか分かんないし、、、)
で、してみたらなんか設定画面に見慣れないカテゴラリが。
よく分かんないけどデフォルトで"可変ビットレート(VBR)のエンコードを使う"っていうのにチェックが入ってたんで「え?、知りもしないエンコード方式入れてもらってもなあ、、、」と考えすぐにこの"VBR"を外したのと入れたのとをエンコードし聴き比べ。
結果、ビットレート落ちてるのに"VBR"のチェック外した方が音が良い、という内容に。
"VBR"入れると相対的な音の馴染みは良いのかもしれないけど、ちょっと訛る。で、外した方がメモリは軽いのに、むしろ音像はシャキ!っとしてぶっちゃけ業者受けは絶対こっちの方が良いと思う。
じゃあ、なんでわざわざこのチェックがデフォで入ってるの?? って言うのをググってみたら、なんかよく分かんないプログラマさんたちのブログを追っかけるハメになったのでこれから探る。
とにかく言いたいのは「余計なもんデフォで入れておくな」ということでした。
(・ω・)ノシ
このコメントを見て、さすがミトさんと思うと同時に、これが本当なのかを実際に検証してみると面白そうと思った次第だ。
ご存じの方も多いとは思うが、まず用語について確認していこう。VBRというのはVariable Bitrateの略で、可変ビットレートのこと。Constant Bitrate=固定ビットレートと対比して用いる言葉である。MP3やAACをはじめ、圧縮オーディオや圧縮ビデオでは1秒間にどれだけのデータを流すかで品質が変わるわけで、128kbpsは1秒当たり128kbit(=16KB)分のデータを流すことを意味する。この際、常に1秒間に128kbit流すのがCBRであり、情報量に応じて多く流したり、少なく流したり可変させるのがVBRだ。つまり激しく音が変化するときはビットレートを上げ、音の変化が少ないときはビットレートを下げることで、効率よく圧縮しようというのがVBRなのだ。ビデオの圧縮ではVBRが一般的だが、オーディオはというと、混在しているのが実情のようだ。
似た言葉にABRというものもある。Average Bitrate=平均ビットレートの略であり、可変させつつ平均のビットレートを固定するという方式だが、現状のMP3やAACの圧縮においてはVBRとABRは同義となっている。つまり平均128kbpsになるように可変ビットレートで圧縮するものをVBRと呼んでいるのだ(LAMEなど、VBRとABRを別々に扱っているものもあるが)。
この理論からすれば、やはりCBRよりもVBRのほうが効率がよさそうであり、よりよい音が実現できるはずだが、個人的にはどうもVBRが信用できず、音もイマイチというような印象を持っていた。だから、このDigital Audio Laboratoryでも圧縮オーディオの実験においては、連載スタートより13年近くずっとCBRを使ってきたという経緯があるのだ。とくに音質の実験をする上で、どこでビットレートが上がり、どこで下がるのか、その際、それぞれの時点のビットレートがいくつになっているかを正確に検証できない以上、比較もしにくいという問題があり、基本的にCBRを使ってきたわけだ。
とはいえ、こうしたエンコーダも進化してきているはずなので、VBRの性能が大きく向上している可能性はあるし、同じビットレートでCBRとVBRを比較した際、VBRが圧倒的にいい音ならば、やはりそちらを選ぶべきでもある。ミトさんの耳では、それでもCBRのほうがいいという結論を出していたようだが、これはやはり各自の耳で聴き比べてみるのがいいだろう。というわけで、ここでは素材を用意してみた。
VBRとCBRでエンコード後の音質を比較
何かの曲をリッピングしたりすると、公開する上で著作権上の問題が出てくるので、サンプリング素材などを活用しつつCubaseで24秒の曲データを作ってみた。Sample.wavという16bit/44.1kHzステレオのデータがそうだ。
おそらく音に変化を付けていったほうが違いがでるのでは……という考えから、冒頭はドラムのみ、2小節目でベースが入り、3小節目でパーカッションが追加、4小節目からギターが入る……というような構成になっている。たとえばハイハットの音に着目し、ベースが入ってきてどう変わるか、ギターが入ってどう変わるかなどを見ていくと、音の違いが比較的わかると思う。
これをミトさんと同様に、iTunesを使ってAACに圧縮していく。なお、iTunesのバージョンは11.0.3 for Windows(64bit版)。圧縮に関する設定は設定画面の一般タブにある「インポート設定」にある。このボタンをクリックするとデフォルトではAACエンコーダで、iTunes Plusという項目に設定されている。iTunes Plusとは256kbpsでVBRを意味するものだが、ここではいろいろと設定を変えていくので、カスタムを選ぶ。
この画面ではビットレートやサンプリングレート、チャンネル、そしてVBRかCBRかなどを設定できるようになっているが、確かにミトさんの指摘のとおり、デフォルトではVBRにチェックが入っている。これを外せばCBRになるわけだ。この画面のパラメータで重要なのはビットレートとVBR/CBRの切り替えの2つ。そこで、64kbps、128kbps、192kbps、256kbpsの4つのパターンのそれぞれでVBRの場合、CBRの場合、それぞれで圧縮を行なった。手順としては、前述のオリジナルのWAVファイルをiTunesにドラッグ&ドロップで持って行き、そのファイルを選択した上で右クリックをしてメニューを開く。この中から「AACバージョンを作成」をクリックすると、拡張子.m4aのAACファイルが生成されるのだ。
生成された8つのファイルとオリジナルをそれぞれ比較してみると、まずビットレートが上がるほど、オリジナルに近づいていくことは実感できる。やはり64kbpsの場合、明らかに音質が劣化しているのが分かるが128kbps以上になると、だんだん差がなくなり、細かいところをしっかり聴かないと違いが分からないほどだ。
オリジナルのWAV | original.wav(4.12MB) |
AAC 64kbps VBR | aac_064vbr.m4a(201KB) |
AAC 128kbps VBR | aac_128vbr.m4a(400KB) |
AAC 192kbps VBR | aac_192vbr.m4a(607KB) |
AAC 256kbps VBR | aac_256vbr.m4a(820KB) |
では今回のテーマであるCBRとVBRの差はどうだろうか? やはりここは同じビットレート同士で比較するわけだが、一般的にはビットレートが低ければ低いほど、VBRにとって有利だと言われている。というわけで、差がはっきり見えそうな64kbpsで比較してみよう。極端な違いが出るわけではないが、CBRとVBRではニュアンスが違うのは分かる。オリジナルと比較してみると、どちらも曇った感じの音になっているが、VBRのほうがよりピンボケしているように思えるのは気のせいだろうか?
128kbps、192kbpsでも、ボケた感じがするのは、音数が少ない冒頭部分でビットレートを下げているからなのだろうか……。256kbpsまで上がると、筆者には違いが分からなかったが、人によってはハッキリ認識できるのかもしれない。
AAC 64kbps CBR | aac_064cbr.m4a(195KB) |
AAC 128kbps CBR | aac_128cbr.m4a(387KB) |
AAC 192kbps CBR | aac_192cbr.m4a(570KB) |
AAC 256kbps CBR | aac_256cbr.m4a(751KB) |
では、これを周波数分析してみるとどうなるのだろうか? ここではefu氏のフリーウェア、WaveSpectraを使って比較してみることにする。このWaveSpectraでは直接AACのファイルを読み込むことができないので、いったんWAVファイルに変換することが必要。最初、いくつかのソフトを使って変換を試みたが、うまくいかない。そこで試しに、再度iTunesのインポート設定でインポート方法をWAVエンコーダに切り替えてみた。この状態でポップアップメニューを開くと「WAVバージョンを作成」という項目があるので、これを利用して、すべてのファイルを1つずつWAVへと変換してみた。結構地道な作業ではあったが、1つずつ繰り返していくことで、8つのWAVファイルが完成。オリジナルのWAVファイルを含め、これら9つをWaveSpectraで分析したものが、以下のグラフだ。
これを見ても分かる通り、グラフは24秒の曲のそれぞれの周波数成分の最大値を表示させたもの。パッと見比べてみても、ビットレートが上がるほどオリジナルに近づくことがハッキリとわかる。では、CBRとVBRを比較してみて、どうなのだろうか?
残念ながら同じビットレートならば視覚的に違いはまったくといっていいほど分からない。それぞれのグラフをアニメーションのように切り替えて表示させてみたが、ごく僅かな差しかなく、細かな凹凸の具合までほぼそのままだ。VBRの理論からすれば、もう少し差が出てもいいのでは…と期待していたが、それほどの違いは出ないようだ。64kbpsにおいてさえも、高域がちょっとでも持ち上がるということもないので、とくにVBRにするメリットはないといってもよさそう。しかも、聴いた感じでの音のクリアさはCBRのほうが優っていると感じたわけで、それならやはりVBRのチェックを外すのがいいように思う。もっとも、CBRのほうが、クッキリした音だと感じただけであり、それは人によって印象が違うかもしれない。そのほか、今回のケースでは、VBRに比べてCBRの場合はファイルサイズが若干ではあるが抑えられた。
あまりスッキリした結論にはならなかったが、ぜひ自分の耳で確認しつつ、今後のエンコーダの設定方法を決めていくといいだろう。