H.264からAV1へ — コーデック世代交代の実際
20年使われ続けるH.264と、ロイヤリティフリーを掲げて登場したAV1。符号化効率・計算量・ライセンスという3つの軸で世代交代の実際を解き、どちらをいつ選ぶかの判断基準まで1から解説する。
要点
- 動画を圧縮しないと、フルHDで1秒あたり約190メガバイトになり、2時間の映画は1テラバイトを超える。
- H.264とAV1の基本構造は同一で、予測・変換・量子化・エントロピー符号化の4段構えである。
- 全コーデック共通の判断基準はレート歪み最適化(RDO)で、J = D + λR を最小にする選択を採用する。
- AV1は最大128×128のスーパーブロックや方向予測56通りなど、各段の道具を増やして効率を上げた。
- 効率の代金はエンコードの計算量で払うが、エンコードは重くデコードはずっと軽い。
出典: ITU-T Recommendation H.264: Advanced video coding for generic audiovisual services · ITU-T Recommendation H.265: High efficiency video coding · A Technical Overview of AV1 · The AV1 Constrained Directional Enhancement Filter (CDEF) ほか1件(末尾)
動画は「そのままでは送れない」
圧縮していない動画の大きさを想像してみます。フルHD(1920×1080画素)、1画素3バイト、毎秒30枚。掛け算すると1秒あたり約190メガバイト、2時間の映画なら1テラバイトを超えます。光回線でも生では流せません。私たちが日常的に動画を見られるのは、これを数百分の1に縮める圧縮技術=ビデオコーデックがあるからです。
コーデックは「言語」に似ています。送り手(エンコーダ)と受け手(デコーダ)が同じ文法を共有して初めて通じる。だから一度普及した言語はなかなか入れ替わりません——世界中のスマホやテレビに「読める文法」が焼き込まれているからです。世代交代とは、技術の優劣だけでなく、この巨大な互換性の網をひっくり返す作業です。
系譜: H.264からAV1までの20年
- H.264/AVC(2003年): ITU-TとMPEGが共同策定。BD、地デジ、YouTube、ビデオ会議まで浸透し、20年以上たった今も「どこでも再生できる」最大公約数です。
- H.265/HEVC(2013年): H.264の後継。「同じ画質で約半分のビットレート」を目標に設計されましたが、後述するライセンス問題で普及が鈍りました。
- VP9(2013年): Googleがロイヤリティフリーで公開した対抗馬。YouTubeが大規模採用。
- AV1(2018年): Amazon・Google・Netflix・Microsoft・Mozilla・Cisco・Intelらが設立した Alliance for Open Media(AOMedia) が策定した、ロイヤリティフリーのオープン規格。VP9の後継であり、事実上「HEVCのライセンス混乱への業界の回答」です。
各世代はおおむね「同じ画質で前世代より数割少ないビットレート」を狙って設計されています。配信事業者にとってビットレート削減はそのまま転送コストの削減なので、この数割に世代交代を賭ける価値が生まれます。
どの世代も骨格は同じ
意外かもしれませんが、H.264もAV1も基本構造は同一です。動画圧縮の基礎で扱った4段構えです。
- 予測: 画面内の近くの画素(イントラ予測)や前後のフレーム(インター予測・動き補償)から「たぶんこうなる」を作り、実際との差分だけを残す
- 変換: 差分をDCT系の変換で周波数成分に分解する
- 量子化: 人間の目に効きにくい成分を粗く丸めて情報を捨てる(ここが非可逆)
- エントロピー符号化: 出やすい値に短い符号を割り当てて詰める
世代交代とは、この骨格の各段の道具を増やし、選択肢を細かくすることです。革命ではなく、改良の積み重ねです。
判断基準は1本の式に集約される
道具が増えると「どの道具を使うか」を選ぶ基準が要ります。全コーデック共通の基準がレート歪み最適化(RDO)です。
この式が言っているのは要するに、「画質の悪さ と、使うビット数 を、天秤 で足し合わせたコスト が最小になる選択をせよ」ということ。(Distortion=歪み)は元画像との誤差、(Rate)はその選択に必要なビット数、(ラムダ)は「1ビットを画質どれだけと交換するか」の相場です。エンコーダはブロックの分割方法から予測モードまで、あらゆる候補についてこの を見積もり、最小のものを採用します。
量子化がどう画質とビット数を交換するかは、静止画で体感するのが早道です。
AV1は何を積み増したのか
H.264との差分として代表的な強化を挙げます。
ブロック分割の自由度。H.264は16×16画素の「マクロブロック」が基本単位でした。AV1は最大128×128のスーパーブロックから4×4まで、多様な形に再帰分割できます。空や壁のような平坦な領域は大きなブロックで一気に、輪郭の込み入った領域は細かく、という配分が効きます。
予測モードの物量。イントラ予測はH.264の4×4ブロックで9方向だったのに対し、AV1は方向予測だけで56通り。インター予測にも、回転や拡大縮小を近似するワープ動き補償や、複数の予測を混ぜる合成予測が入りました。
ループ内フィルタの世代交代。ブロック境界を均すデブロッキングに加え、AV1はリンギングを抑えるCDEF、失われたディテールを復元するループ復元フィルタを持ちます。さらにフィルムグレイン合成——ノイズは圧縮の天敵なので、いったん除去して統計量だけ送り、再生側で合成し直す——という発想の転換も入りました。
エントロピー符号化。H.264のCABACが0/1の2値算術符号化を積み重ねるのに対し、AV1は多値シンボルを直接算術符号化し、確率表を文脈ごとに適応更新します。この段の理屈はエントロピー符号化で扱った通りで、「出やすいものを短く」の徹底です。
効率の代金は計算量で払う
道具を増やした代金は探索のコストで払います。RDOは候補を見積もって最小を選ぶ仕組みなので、分割の形×予測モード×変換の種類…と選択肢が増えるほど、組み合わせは掛け算で膨らみます。
実際、AV1のリファレンスエンコーダは公開当初、実用をためらう遅さでした。IntelとNetflixが主導したSVT-AV1などの最適化実装と賢い枝刈りで、現在は配信用途で現実的な速度に収まっています。ここで大事なのが、エンコードは重いがデコードはずっと軽いという非対称性。1回圧縮して何百万回も再生する配信では、重いエンコーダでも元が取れます。
コードで比べる
ffmpegなら両世代を同じ入口で試せます。
# H.264(x264): 20年分の最適化が入った定番
ffmpeg -i in.mp4 -c:v libx264 -crf 23 -preset medium out_h264.mp4
# AV1(SVT-AV1): presetの数字が小さいほど遅く・高効率
ffmpeg -i in.mp4 -c:v libsvtav1 -crf 32 -preset 6 out_av1.mp4
注意が1つ。-crf の値はコーデック間で互換性がありません。x264のcrf 23とSVT-AV1のcrf 32は「たまたま近い画質になることが多い」だけの別スケールです。画質を揃えて比べるときは、目視に加えてVMAFやSSIMで確認します。
ライセンス — もう1つの世代交代の理由
H.264の特許は MPEG LA(現 Via-LA)のパテントプールに集約され、料率も上限も明快でした。しかもエンドユーザーに無料のインターネット動画には使用料を課さないと表明されたため、Webでの採用が一気に進みました。
HEVCはここで躓きます。特許権者が複数のプールと独立権利者に分裂し、総額がいくらになるか見通せない状態が長く続きました。この不確実性を嫌った大手テック企業群がAOMediaを設立し、メンバーが特許を相互に無償許諾するロイヤリティフリー規格としてAV1を作った——というのが政治面の経緯です。
ただし「ロイヤリティフリー」は「訴訟リスクゼロ」ではありません。AOMedia非加盟の権利者を代弁すると称するプール(Sisvelなど)がAV1向けライセンスを掲げており、主張の当否には争いがあります。大規模採用の前に法務確認を挟むのが通例です。
採用判断: 何を見て決めるか
技術の優劣だけでは決まりません。判断軸は3つです。
- 視聴デバイスの分布。AV1をソフトウェアデコードすると古い端末ではCPUと電池を大きく消費します。ハードウェアデコーダ搭載機が自分の視聴者層にどれだけあるか。
- エンコード費用と配信費用の比。視聴回数が多いほどビットレート削減の利益がエンコード費を上回ります。人気コンテンツから順にAV1化し、ロングテールはH.264のまま——という段階移行が定石です。
- ライセンスの許容度。HEVCの料率交渉を引き受けられる体力があるか、ロイヤリティフリーを優先するか。
実際の大手配信も「全面切り替え」ではなく、同じ動画をH.264とAV1の両方で持ち、端末の能力に応じて出し分ける方式を採っています。世代交代は置き換えではなく、長い併走です。
現場ではこう使う
動画配信のエンコードエンジニアが新規タイトルの配信仕様を決めるとき、この記事の内容がそのまま作業項目になります。触るのは -crf(品質)、-preset / -cpu-used(速度と効率の天秤)、-g(キーフレーム間隔)あたりで、画質検証はVMAFをリファレンスに回します。解像度×ビットレートの段組み設計はビットレートラダーの仕事です。
落とし穴を3つ。第一に、再エンコードは劣化が累積する——H.264で圧縮済みの素材をAV1に変換しても、H.264で捨てた情報は戻りません。可能な限り高品質なマスターから起こすこと。第二に、crf値をコーデック間で流用しないこと。「同じcrfなのに画質が変」という問い合わせの多くはこれです。第三に、ハードウェアデコード非対応端末への配信。フォールバックにH.264系を必ず残さないと、再生はできても発熱・電池消費でユーザー体験が壊れます。
面接で「なぜ今もH.264が現役なのか」と問われたら、互換性・エンコードの軽さ・ライセンスの見通しやすさを、AV1の効率優位と対にして答えれば筋が通ります。
次に読む
まとめ
- H.264とAV1の骨格は同じ。世代交代の実体は各段の道具の物量と、それを選び切るRD最適化
- 効率の代金はエンコード計算量で払う。1回圧縮して大量に再生する配信ほど元が取れる
- AV1誕生の半分は技術、半分はHEVCのライセンス混乱への反作用
- 採用判断は「視聴デバイスの分布 × 視聴回数 × ライセンス許容度」。全面置換ではなく併走が実際の姿
コメント
コメントにはログインが必要です