頻出データに短いコードを割り当てる圧縮アルゴリズム——JPEG、MP3の基礎。ワークフロー:圧縮ファイルの再エンコードがなぜ劣化を招くか説明する。
圧縮された画像フォーマット(毎日使用しています)を扱う場合、1952年にデビッド・ハフマンが開発したアルゴリズムがバックグラウンドで動作しています。これはシンプルで巧妙な原理に基づいています。頻繁に出現する値には短いビットシーケンスが割り当てられ、まれな値には長いビットシーケンスが割り当てられます。これにより、理論上は情報が失われることなくストレージを節約できます。
セットやポストプロダクションでは、通常これを直接気にする必要はありません。エクスポートボタンを押し、JPEGまたはH.264を選択すれば完了です。しかし、ハフマン符号化は、これらのフォーマットがこれほど小さくなる理由の中核です。JPEGはDCT変換(離散コサイン変換)の後にこれを使用して、変換された係数を圧縮します。MP3もオーディオで同様のことを行います。エンコーダーはデータを分析し、頻度をカウントし、最適なコードツリーを生成し、デコーダーがデコードできるようにルックアップテーブルとともに、最も短いコードのみを保存します。
あなたにとって重要になるのは「世代落ち」です。JPEGを開くと、それは解凍されます。ハフマン符号化は元に戻されますが、DCTの量子化で破棄された情報は失われています。画像を再度JPEGとして保存すると、ハフマン符号化が再計算されます。再圧縮するたびに品質の低下が深刻になります。そのため、中間フッテージはロスレスフォーマット(ProRes、DNxHD)または非圧縮でアーカイブします。この場合、ハフマン符号化はまったく機能しません。
実用的なヒント:大きなRAWシーケンスや高解像度のプロキシを保存する必要がある場合は、ロスレスコーデックを検討してください。ハフマン符号化はそこで可逆ですが、より多くのストレージを必要とします。これはDCPワークフローやアーカイブポリシーで関連性があります。カラーリストは、アーティファクトのある圧縮で作業する必要がない場合に感謝するでしょう。要するに、ハフマン符号化はファイルを小さくする目に見えない働き手ですが、量子化が関わる場合は決してロスレスではありません。