JA EN

AVIF 導入ガイド - ブラウザ対応状況とフォールバック戦略の実践

· 約 9 分で読めます

AVIF とは何か - AV1 動画コーデックから生まれた画像フォーマット

AVIF (AV1 Image File Format) は、AV1 動画コーデックのフレーム内圧縮技術を静止画に応用した画像フォーマットです。Alliance for Open Media (AOMedia) が策定し、Google、Apple、Microsoft、Netflix、Amazon など主要テック企業が参画するオープンかつロイヤリティフリーの規格です。2019 年に仕様が確定し、2020 年から主要ブラウザでの実装が始まりました。

AVIF の最大の特徴は圧倒的な圧縮効率です。同等の視覚品質で比較した場合、JPEG より 50% 以上、WebP より 20-30% 小さいファイルを生成できます。Netflix の検証では、同じ SSIM スコアを維持しながら JPEG 比で 50%、WebP 比で 25% のファイルサイズ削減を達成しています。

技術的には、AVIF は HEIF (High Efficiency Image File Format) コンテナに AV1 コーデックでエンコードされた画像データを格納する構造です。10 ビット・ 12 ビットの色深度、HDR (PQ/HLG)、広色域 (BT.2020)、アルファチャンネル、アニメーションをサポートし、現時点で最も機能が豊富な画像フォーマットと言えます。

ただし、AVIF にはエンコード速度が遅いという明確な弱点があります。同じ画像を WebP でエンコードする場合の 5-10 倍の時間がかかります。このため、リアルタイムでの画像変換が必要なユースケースでは、事前エンコードまたは CDN のオンザフライ変換機能の活用が必須です。

ブラウザ対応状況 2024 - 実用レベルに達した互換性

2024 年時点で、AVIF は主要ブラウザの大半でサポートされ、グローバルカバレッジは約 93% に達しています。ただし、WebP の 97% と比較するとまだ差があり、フォールバック戦略が必須です。

非対応の主要環境としては、古い iOS (15 以前)、古い macOS (Monterey 以前) の Safari が挙げられます。日本国内では iPhone ユーザーの iOS アップデート率が高いため影響は限定的ですが、企業の社内ブラウザや教育機関の端末では古い OS が残存している場合があります。

Can I Use のデータを自社のアクセス解析と照合し、実際のユーザーベースでの AVIF 対応率を確認することを推奨します。Google Analytics 4 のブラウザレポートで、Safari 16.1 未満のシェアが 5% 以下であれば、AVIF を積極的に採用する判断が妥当です。

picture 要素によるフォールバック戦略の実装

AVIF を安全に導入するための核心技術が、<picture> 要素によるプログレッシブエンハンスメントです。ブラウザが対応するフォーマットを上から順に評価し、最初にサポートされているものを使用します。

基本的なフォールバックチェーンは以下の構造です:

<picture>
  <source srcset="image.avif" type="image/avif">
  <source srcset="image.webp" type="image/webp">
  <img src="image.jpg" alt="説明文" width="800" height="600">
</picture>

この構造により、AVIF 対応ブラウザは最も効率的な AVIF を、WebP のみ対応のブラウザは WebP を、どちらも非対応の古いブラウザは JPEG をダウンロードします。ブラウザは type 属性を見て対応可否を判断するため、非対応フォーマットのダウンロードは一切発生しません。

レスポンシブ対応を組み合わせる場合は、各 <source>srcsetsizes を設定します:

<picture>
  <source srcset="img-400.avif 400w, img-800.avif 800w, img-1200.avif 1200w" sizes="(max-width: 600px) 100vw, 50vw" type="image/avif">
  <source srcset="img-400.webp 400w, img-800.webp 800w, img-1200.webp 1200w" sizes="(max-width: 600px) 100vw, 50vw" type="image/webp">
  <img src="img-800.jpg" srcset="img-400.jpg 400w, img-800.jpg 800w, img-1200.jpg 1200w" sizes="(max-width: 600px) 100vw, 50vw" alt="説明文" width="800" height="600">
</picture>

この構成では、フォーマット × 解像度の組み合わせで最適な画像が自動選択されます。ファイル数は増えますが、ビルドツールで自動生成すれば運用負荷は最小限です。

AVIF エンコード設定の最適化 - 品質とサイズのバランス

AVIF のエンコード設定は、用途に応じた最適値を選択することが重要です。主要なパラメータとその推奨値を解説します。

実際のコマンド例として、avifenc を使用する場合: avifenc --min 20 --max 32 --speed 6 --yuv 420 input.png output.avif で、品質範囲 20-32、速度 6、4:2:0 サブサンプリングのエンコードが実行されます。sharp (Node.js) では sharp(input).avif({ quality: 65, speed: 6 }).toFile(output) が同等の設定です。

ビルドパイプラインへの AVIF 統合 - 自動化の実践

AVIF を本番環境で運用するには、ビルドパイプラインに組み込んで自動生成する仕組みが不可欠です。手動変換は現実的ではありません。

Node.js (sharp) による実装: sharp は libvips をバインディングしており、AVIF エンコードに対応しています。ビルドスクリプトで元画像から AVIF、WebP、JPEG の 3 フォーマット × 複数解像度を一括生成します。sharp の AVIF エンコードは libavif を内部で使用しており、品質と速度のバランスが良好です。1000 枚の画像を処理する場合、並列度 4 で約 10-15 分 (Speed 6 設定) が目安です。

Webpack / Vite プラグイン: vite-plugin-image-optimizerimage-minimizer-webpack-plugin を使用すると、ビルド時に自動的に AVIF 変換が実行されます。設定例として、Vite では imageOptimizer({ avif: { quality: 65 }, webp: { quality: 75 } }) のように宣言的に指定できます。

CDN のオンザフライ変換: Cloudflare Images、CloudFront + Lambda@Edge、imgix などの CDN サービスは、リクエスト時に Accept ヘッダーを解析し、AVIF 対応ブラウザには自動的に AVIF を返します。この方式ではビルド時の変換が不要で、オリジンには元画像 (JPEG/PNG) のみを配置すれば済みます。ただし、初回リクエスト時のエンコード遅延 (100-500ms) が発生するため、キャッシュウォームアップの戦略が必要です。

CI/CD での品質検証: AVIF 変換後の品質を自動検証するステップを追加します。dssim (構造的非類似度) で元画像との差分を計測し、閾値 (例: DSSIM 0.001 以下) を超えた場合にビルドを失敗させることで、過度な圧縮による品質劣化を防止します。

AVIF 導入の判断基準と移行ロードマップ

AVIF の導入を検討する際の判断フレームワークと、段階的な移行計画を提示します。

導入すべきケース:

慎重に検討すべきケース:

段階的移行ロードマップ:

移行の効果測定には、Google Search Console の Core Web Vitals レポートと、RUM (Real User Monitoring) データを併用します。AVIF 導入前後で LCP の 75 パーセンタイル値を比較し、500ms 以上の改善が確認できれば移行は成功と判断できます。

関連記事

WebP のメリットと対応状況 - 次世代画像フォーマットの実力

Google が開発した WebP フォーマットのメリット、デメリット、ブラウザ対応状況を解説。JPEG や PNG からの移行判断に必要な情報をまとめます。

画像圧縮アルゴリズムの深層 - DCT、ウェーブレット変換、予測符号化の仕組み

画像圧縮の核心技術を深掘り解説。JPEG の DCT、JPEG 2000 のウェーブレット変換、H.265/AV1 の予測符号化、エントロピー符号化の数学的原理を理解します。

WebP から AVIF への移行判断 - コスト対効果と実装戦略

WebP 導入済みサイトが AVIF に移行すべきかの判断基準を解説。追加の圧縮効果、移行コスト、段階的な実装戦略を具体的なデータとともに紹介します。

画像圧縮ベンチマーク 2024 - JPEG, WebP, AVIF 実測比較

JPEG、WebP、AVIF の圧縮性能を実測データで比較。写真、イラスト、スクリーンショットなど画像種別ごとのベンチマーク結果と最適フォーマットの選定基準を解説。

次世代画像フォーマットの展望 - JPEG XL と WebP2 が変える未来

JPEG XL、WebP2、AVIF など次世代画像フォーマットの技術的特徴と将来性を比較分析。各フォーマットの圧縮性能、ブラウザ対応状況、移行戦略を詳しく解説します。

コンテントネゴシエーションで最適な画像を配信 - Accept ヘッダーと CDN の連携

HTTP コンテントネゴシエーションを活用し、ブラウザの対応フォーマットに応じて WebP や AVIF を自動配信する仕組みを解説。CDN 設定と Vary ヘッダーの正しい運用方法を紹介します。

関連用語