ファイル形式の選び方
はじめに†
可逆圧縮コーデック†
可逆圧縮とは(Lossless Compression)†
CD等に収録されている音楽を元のデータをそのまま保ちながらファイルの圧縮(ランレングス符号化やハフマン符号化等)をする。すなわち音質は元の音(CDならばCDの音質)のままで容量の節約になる。
- ファイル容量を抑えつつ音質が劣化しない。
- 可逆圧縮でも劣化が起こるという情報*1が流れているが全くのデマである。
- どのくらい圧縮できるかは音の内容による(例えば人の話し声だけならば1/4程度に圧縮できるが、騒がしい音楽やホワイトノイズに近いようなものはあまり圧縮が効かない)。そのため、コーデックの優劣は圧縮率で決まる。
- 一般に不可逆圧縮に比べて圧縮率が低い。
- インターネットでの配布やストリーミングには向かない(規格上対応しているコーデックもあるが)。
WAV(PCM)†
FLAC(Flee Lossless Audio Codec)†
- Opus等と共にオープンソースで開発されている。サポートしているソフト・機器が他の可逆圧縮コーデックに比べて桁違いに多い。
- 以前Apple製品は対応してなかったが、2017年後半にiOSとiTunesで対応した。
- エンコード・デコードはかなり速いが、圧縮率はそこそこである。
- プリセットは10あるが、圧縮率はあまり変わらない。
- 上級者にとっては機能的に不十分なところがある。
可逆圧縮でも音質は劣化する!と言い張るカルト的な連中のためにFLACでありながら全く圧縮をしない(WAVファイルをFLACでコンテナした)FLAC Uncompressedというオプションもある。ただし現在foobar2000で読み込みはできるが、書き出しはdBpowerAmpかXrecode 3(共に有償)を使う必要がある。
TAK(Tom's lossless Audio Kompressor)†
- FLACをベースに開発された新しいコーデックで、(後述の)Monkey's Audioと同等の高い圧縮率でありながらFLAC以上のエンコード・デコードの速さを誇る。
- GUIのエンコーダ・デコーダがあるので、foobar2000のConvert機能を使わなくても非常に分かりやい。
- エラーに強く、ファイルの欠損は250ミリ秒以内に収まるという。
- APEv2タグが使える。内部cueシートの埋め込みも可能。
- プリセットが15と豊富で、圧縮率と速度の調整を柔軟に変更できる。
- 機器の対応はないが、android版・iOS版のfoobar2000で対応する。ソフトも対応が進んできている。
- 以前はアップデートによる互換性が問題になったが、現在は安定している。
参考:http://michisugara.jp/archives/2011/foobar2000_playing.html
APE(Monkey's Audio)†
- とにかく圧縮率が高いコーデックで、かなり昔から存在する。
- 古参な故サポートしているソフトも多く、一部機器でも再生出来る。
- デコードが遅めで、シークがもたつく時がある。またエラーに弱い。
- 昔からオープンソースで開発されている。
- FLACより圧縮率が高く、エンコードもやや早い。(TAKには及ばないが)
- エンコーダの機能が豊富で、ハイブリッドモード(不可逆圧縮されたファイルと補正ファイルを作り、前者だけでも再生できるが両者を組み合わせて可逆圧縮として再生できるというもの)や自己解凍機能等がある。
- ハードウェアの対応を謳うが、再生出来る機器は殆ど無い。
ALAC(Apple Lossless Audio Codec)†
- Apple社が開発したコーデックで、かつてはクローズドソースだったが、2011年にオープンになった。
- 機能や圧縮率はFLACとほぼ同等。
- macでは標準的な形式として再生できるが、Windowsではかなりマイナーでありソフトのサポートもそこそこ。
- 機器ではApple製品とSony製品(WalkmanやXperia)のみが対応。それ以外は皆無。
- 標準拡張子がm4aで、AACの拡張子(mp4コンテナ)と同じになってしまうでファイル名だけでは2つの区別がつかない。
- エラー耐性が不十分。
- 参考:http://michisugara.jp/archives/2013/foobar2000_alac.html
TTA(The True Audio)†
- 圧縮率を高めつつエンコード・デコード速度を重視したコーデックだったが…TAKの登場により立ち位置を失った(どちらの面でも負けるため)。
- 唯一の利点はMatroskaでコンテナ出来ることぐらいであろうか。
- しかし唯一の利点であるMatroskaでコンテナしてしまうと、Matroskaはfoobar2000と相性が悪いため正常に再生できない事が多い。またcueシートも制約がかかる。
参考
- こちらもハードウェアの対応を謳うが、再生出来る機器は殆ど無い。
可逆圧縮のまとめ†
自分に合うものがわからない人はとりあえず以下の二つから選ぶのをおすすめする。
- パソコン以外の機器(スマホ)でも再生したい⇒FLAC
Apple信者であればALACでもいいだろう。今後はApple社もFLACの流れになると思われる。
- 圧縮率と速度のバランスをとりながら、パソコンで再生できればいい。⇒TAK
不可逆圧縮コーデック†
不可逆圧縮とは(Lossy Compression)†
人間には聞こえにくい高い周波数(16kHz~18kHz以上)をカットしたり、知覚心理学に基づく知覚符号化を行ったりして大幅に圧縮をする。ハードディスクの容量がまだ小さかった時代には重宝されたが、現在ではインターネットでの音楽配信に使われることが多い。
- 可逆圧縮に比べて非常に圧縮できる。
- 音楽データを改変するので音質が劣化する。
- ユーザーが目標のビットレートを指定するので予めファイル容量が計算できる(プリセット形式であってもおおよそ計算可能)。そのためコーデックの優劣は同じビットレートでの音質で決まる。
- MP3やAACのような国際規格として定められているものは様々なエンコーダが存在し、同じコーデック・ビットレートであってもエンコーダによって音質が異なる。
MP3†
- 言わずと知れた不可逆圧縮の先駆けとも言えるコーデック。現在これを再生できない機器はまずない。
- 通常LAMEというエンコーダが使われる。2017年10月には実に5年ぶりの更新がされた(3.99→3.100)。
- かつてよく使われた午後のこ~だはLAME 3.88の派生版で、ここでの成果(SIMD命令の最適化等)は後のLAMEに反映されている。
- 比較的音質が悪いと言われるが、現在では320kbpsでCDとの区別が難しいほどの音質を誇る。
AAC(Advanced Audio Coding)†
- 現在主流のコーデックで、音声つきの動画をエンコードするとどのソフトでも既定ではこれになる。またbluetoothのコーデックにも採用されている。
- 基本的にMP3を上回る性能を持ちながら殆どの機器で対応しているので、分からないときはとりあえずAACにすれば間違いない。
- たくさんのエンコーダがあり、同じビットレートであっても全く音質が違ったりする。Nero AACやlibfaac(ffmpeg内蔵のやつ)がよく用いられるが、音質重視ならばqaacを使う。
参考:http://d.hatena.ne.jp/kamedo2/20120102/1325523424
- 低ビットレート向けにHE-AACv1やv2も存在するが、音楽ファイルで使うことはないだろう。
Vorbis†
- 商業利用等ではライセンス料が必要なMP3やAACに対抗すべく、フリーな動画・音声フォーマットの開発しているoggプロジェクトの一つでSpeexの後継。現在はOpusへ開発が移行している。
- 性能的には(q)aacに匹敵する。
Opus†
WMA(Windows Media Audio)†
- Microsoft社が開発したコーデックで、大抵は動画コーデックのWMVと一緒に使われる(というかWMVコンテナはWMV+WMAの組み合わせしか出来ない。)。
- 古参なため、クローズドソースの割には機器の対応が多い(MP3非対応でWMAが使えるICレコーダーなんかも多かった)。
- 音質は悪くないがAACに及ばす中途半端な上、Windows以外ではあまり相性が良くないのであまり普及してない。
- ただし他のコーデックにはないDRM(Digital Rights Management:著作権保護)機能があるため、かつてはダウンロード販売の主力の形式だった(今は殆どFLACもしくはWAVに置き換わった)。
- 派生規格としてWMA Pro(アルゴリズムを一新),WMA Lossless(可逆圧縮),WMA Voice(人の声に最適化)があるが、互換性は全く無い上に殆ど使われない。
- 公式のエンコーダを使う場合はExpression Encoderというソフトを使う必要がある。
不可逆圧縮まとめ†
自分に合うものがわからない人はとりあえず以下の二つから選ぶのをおすすめする。
- とにかく音質と容量を優先したい→Opus(128kbpsもあれば十分)
- 対応機器で困ることがないようにしたい→AAC(192kbpsにすればおそらく不満はなくなる)
不明点があればHydrogenaudioで尋ねるとよい(投げやり)。
累計閲覧数:12648
本日閲覧数:6
昨日閲覧数:9