非可逆圧縮と可逆圧縮
ファイル変換をめぐる混乱の大半は、1つの考え方で説明できます。きちんと理解するのに2分しかかかりません。
公開日:
両者の違い
可逆圧縮は、ファイルをより効率的に記述することで小さくします。展開すれば、入れたものがビット単位でそのまま戻ります。ZIP、PNG、FLACはこの方式です。
非可逆圧縮は、情報を捨てることでファイルを小さくします。具体的には、人間が欠けていても気づきにくい情報です。JPG、MP3、AAC、H.264はこの方式で、捨てることが許されているからこそ、可逆圧縮では到底実現できない小さなファイルを達成できます。
失われたものは元に戻らない。ここが見落とされがちです
非可逆エンコーダーがいったん何かを捨てたら、それは失われます。あとからの変換で取り戻すことはできません。MP3をFLACに変換すると、MP3の欠点をそのまま含んだ大きな可逆ファイルができます。それ以上の劣化は止まりますが、すでに起きた劣化を元に戻すことはありません。
これはファイル変換に関する最もよくある誤解で、実際の作業を台無しにします。写真をJPGで何度も開いて編集し、保存し直すと、そのたびに少しずつ劣化し、最初は目に見えなくても、やがてはっきり分かるようになります。
トランスコードは劣化を積み重ねます
2つの非可逆形式の間の変換、たとえばMP3からOGGやM4AからMP3では、すでに一度エンコーダーを通った音声をデコードし、2つ目のエンコーダーに通すことになります。2つのエンコーダーは何を捨てても安全かについて異なる前提を持っているため、2つ目は、1つ目がすでに間引いた素材をさらに傷めます。
実用上のルール:常に、手元にある最良のオリジナルからエンコードしてください。WAVやFLACがまだあるなら、以前に作ったMP3からではなく、そちらからエンコードします。
これが問題にならないとき
多くの場合、本当に問題にはなりません。CDから取り込んで作った192 kbpsのMP3は、ほとんどの人がほとんどの機器で聞いても、元と区別がつきません。休暇の写真の品質0.92のJPGは、通常の表示サイズでは元の写真と区別がつきません。車の中で一度聞くだけのファイルで世代劣化にこだわるのは、無駄な努力です。
区別が重要になるのは、ファイルがマスターである場合、つまり、あとでもう一度編集したり、保存したり、再エンコードしたりするものです。マスターは可逆で保管し、配布用のコピーは非可逆にしてください。この習慣だけで、この記事で述べたほぼすべての問題を避けられます。
各形式の位置づけ
可逆:PNG、BMP、FLAC、WAV、そしてCSV、JSON、YAMLなどのデータ形式。データ形式では、1文字でも変われば、妥協ではなくバグになります。
非可逆:JPG、通常のモードのWebP、MP3、AAC、Vorbis、Opus、そしてH.264やVP8を含む、一般的なすべての動画コーデック。
両方を自分で試してみてください。非可逆の設定で画像を圧縮するか、WAVをFLACに変換して、可逆圧縮がサンプルを1つも変えずに音声を小さくするところを確かめてください。