32blogby StudioMitsu
ffmpeg12 min read

AV1 vs H.265 vs H.264:コーデック比較ガイド

AV1・H.265・H.264の3大コーデックを圧縮効率・画質・速度・互換性で比較。FFmpegでの具体的な設定例とCRF等価表も掲載。

FFmpegAV1H.265H.264コーデック動画圧縮
目次

動画を圧縮しようとしてFFmpegのドキュメントを開くと、コーデックの選択肢が多すぎて迷う。H.264、H.265、AV1――それぞれ「高品質」「高圧縮」「最新」と書いてあるが、実際に何を選べばいいのかわからない。

この記事では、この3つのコーデックを圧縮効率・エンコード速度・互換性・FFmpegでの使い方という軸で僕が比較する。読み終わればどのコーデックを選ぶべきか、自分のユースケースに合った判断ができるようになる。

3つのコーデックの位置づけ

コーデックの選択は「どれが最強か」ではなく、「いつ登場して、誰が管理していて、どんなトレードオフがあるか」を理解することから始まる。

H.264(AVC) は2003年に登場した。MPEG-LAというコンソーシアムが特許を管理し、商用利用にはライセンス料が発生する。ただし2024年以降、多くのユースケースでロイヤリティは実質的に無効化されており、現在は事実上フリーで使える状態だ。20年以上の歴史を持ち、あらゆるデバイスと環境に対応している。

H.265(HEVC) は2013年に標準化された。H.264の後継として設計され、同等画質でおよそ40〜50%のビットレート削減を実現する。ただし特許管理が複雑で、複数の特許プールが存在する。この複雑さがブラウザサポートの不均一さにつながっている。

AV1 は2018年にリリースされた。Googleを含む大手テック企業が設立した「Alliance for Open Media(AOMedia)」が開発し、ロイヤリティフリーで誰でも無償で使える。

圧縮効率の比較

同じ画質(VMAF/SSIMで評価)を維持したときのビットレートを比較すると、世代が新しいほど効率的だ。

一般的な目安として:

  • AV1 は H.264 比でおよそ 50% のビットレート削減 が可能
  • H.265 は H.264 比でおよそ 40〜45% の削減
  • AV1H.265 の差は 10〜20% 程度(コンテンツによる)

たとえば H.264 で 8 Mbps が必要な映像なら、H.265 で 4.5 Mbps、AV1 で 4 Mbps 以下に抑えられることが多い。ストリーミング配信や長期保存でこの差は大きく効いてくる。

ただし「圧縮効率が高い = 常にAV1を選ぶべき」ではない。エンコード速度と互換性という現実的な制約があるからだ。

エンコード速度の現実

AV1の最大の弱点は長らくエンコード速度だった。初期の libaom-av1 エンコーダーはH.264の数十倍の時間がかかり、実用に耐えないケースも多かった。

現在は SVT-AV1 (Scalable Video Technology for AV1)の登場でこの状況が大きく変わっている。

エンコーダーコーデック相対速度品質
libx264H.264基準(1x)良い
libx265H.265約0.3〜0.5x良い〜優秀
libaom-av1AV1約0.05〜0.1x優秀
libsvtav1AV1約0.3〜0.6x優秀

SVT-AV1のPreset設定(0〜13)でさらに速度と品質を調整できる。Preset 6〜8が実用的なバランス点だ。

デバイス・ブラウザ互換性

コーデックを選ぶときに見落としがちなのが、再生側の互換性だ。

H.264 はほぼあらゆる環境で再生できる。スマートフォン、古いテレビ、Webブラウザ、すべてで動く。2026年時点で最も互換性が高いコーデックだ。

AV1 はChrome、Firefox、Edge、Safariのモダンブラウザすべてでサポートされている。AndroidとiOSの最新デバイスでもハードウェアデコードが普及している。2023〜2024年以降のスマートフォンなら問題ない。

H.264H.265AV1
Webブラウザ全対応不安定全対応
iOS/macOS全対応全対応最新のみ
Android全対応部分対応最新のみ
旧デバイス全対応部分対応非対応が多い

FFmpegでの具体的な設定

H.264(libx264)

最も安定した選択肢。CRF 23がデフォルトの基準値だ。

bash
# H.264 基本エンコード
ffmpeg -i input.mp4 \
  -c:v libx264 \
  -crf 23 \
  -preset slow \
  -c:a aac -b:a 128k \
  output_h264.mp4

-presetultrafast から veryslow まで選べる。遅いほど同じCRFでファイルサイズが小さくなる。日常的な用途には mediumslow で十分だ。

H.265(libx265)

H.264より圧縮効率が高い。同等画質のCRFはおよそ28が目安だ。

bash
# H.265 エンコード
ffmpeg -i input.mp4 \
  -c:v libx265 \
  -crf 28 \
  -preset slow \
  -tag:v hvc1 \
  -c:a aac -b:a 128k \
  output_h265.mp4

-tag:v hvc1 はAppleデバイスでの再生互換性のために付けておくと安心だ。

AV1(libsvtav1)

現時点で最も圧縮効率が高い選択肢。

bash
# AV1(SVT-AV1)エンコード
ffmpeg -i input.mp4 \
  -c:v libsvtav1 \
  -crf 30 \
  -preset 6 \
  -svtav1-params tune=0 \
  -c:a libopus -b:a 128k \
  output_av1.mkv

-preset は 0(最高品質・最低速)から 13(最低品質・最高速)。6 が品質と速度のバランス点だ。音声は libopus との組み合わせが相性がいい。

バッチ処理の例

複数ファイルをまとめてAV1に変換するスクリプトだ。

bash
#!/bin/bash
# batch_av1_encode.sh
# 使い方: bash batch_av1_encode.sh *.mp4

for input in "$@"; do
  filename="${input%.*}"
  ffmpeg -i "$input" \
    -c:v libsvtav1 \
    -crf 30 \
    -preset 6 \
    -c:a libopus -b:a 128k \
    "${filename}_av1.mkv"
  echo "完了: ${filename}_av1.mkv"
done

CRF等価表

CRFは「Constant Rate Factor」の略で、数値が小さいほど高品質・大きいほど低品質になる。コーデックによってスケールが異なるため、等価な画質を出すための目安を示す。

品質レベルH.264 (libx264)H.265 (libx265)AV1 (libsvtav1)
高品質(配信・保存)CRF 18〜20CRF 22〜24CRF 24〜26
標準品質(日常用途)CRF 23CRF 28CRF 30
低品質(軽量配信)CRF 28〜30CRF 32〜34CRF 36〜38

この表はあくまで目安だ。コンテンツ(アニメ・実写・スポーツなど)によって最適値は変わる。実際には数パターン試してVMAFスコアや主観評価で判断するのがいい。

等価の目安として覚えやすい数字は:

  • x264 CRF 23 ≈ x265 CRF 28 ≈ libsvtav1 CRF 30

AV1の詳細なエンコード設定については FFmpegとSVT-AV1を使った最適エンコード設定 に詳しくまとめている。

用途別のおすすめ

状況に応じてコーデックを選ぶ判断基準を僕なりにまとめる。

Web配信・ストリーミング(最優先: 互換性) → まず H.264 を基準に。視聴者が最新デバイス中心なら AV1 も検討する。H.265は避ける。

長期アーカイブ・バックアップ(最優先: 容量効率)AV1 一択。エンコードに時間がかかっても一度やれば終わり。50%の容量削減は長期で効く。

動画編集の中間素材(最優先: エンコード速度)H.264ultrafast プリセット。圧縮効率より速度が重要な場面だ。

Appleデバイス向け配信(最優先: デバイス互換性)H.265 が最適。iPhoneやMacでのハードウェアデコードが保証されており、H.264より小さいファイルサイズになる。

YouTube・SNSへのアップロード(最優先: 再エンコード後の品質) → プラットフォーム側が再エンコードするため、元の品質が高ければコーデックはあまり関係ない。ただし AV1 でアップロードするとYouTubeがAV1で配信してくれる場合がある。

FFmpegを使った動画圧縮の全体的なワークフローについては FFmpeg動画圧縮ガイド も参考にしてほしい。

まとめ

3つのコーデックを比較してきた。結論をシンプルにまとめると:

  • 互換性が最優先 → H.264
  • ファイルサイズ削減が最優先 → AV1(SVT-AV1)
  • Appleエコシステム向け → H.265

H.265は「互換性が低いのに中途半端」という位置づけになりつつある。Web配信ならAV1が追い抜いてきており、Apple向けならH.265が強い、という棲み分けが2026年時点での現実だ。

FFmpegでAV1エンコードを試すなら、まずは libsvtav1 + -preset 6 + -crf 30 からスタートして、用途に合わせてパラメーターを調整していくのがおすすめだ。