- ChromiumコードベースにJpegXLデコーダーが統合され、ブラウザがJXL形式の画像を処理できるようになった
- 変更内容はGerritコードレビューページで 「Wire up JXL decoder」 というタイトルで確認できる
- このマージは JpegXL形式のサポートに向けた中核的なステップ であり、デコーダー接続作業が含まれている
- コードレビューはChromiumの srcリポジトリ内の変更(7184969) として登録されている
- Webブラウザにおける 次世代画像フォーマット対応の拡大 という点で意味がある
ChromiumのJpegXLデコーダー統合
- Gerritコードレビュー項目 「Wire up JXL decoder (7184969)」 は、ChromiumプロジェクトにJpegXLデコーダーを接続する変更である
- この変更はChromiumの srcリポジトリ 内で行われた
- コードレビュープラットフォームには chromium-review.googlesource.com が使われている
- タイトルどおり、JXL(JpegXL)デコーダーを ブラウザ内部に接続する(wire up) 作業を意味する
- ページには 追加説明やコードの詳細は表示されておらず、変更タイトルのみ確認できる
技術的背景
- JpegXLは 次世代画像圧縮フォーマット であり、既存のJPEGと比べて効率向上を目指すものとされる(原文での直接言及はなく、技術名のみ存在)
- Chromiumにデコーダーがマージされたことで、JXL画像処理機能をコードレベルで有効化するための基盤 が整った
- この変更は ブラウザエンジンのメディアデコード体系の拡張 に関する技術的進展である
文書の状態
- ページは Gerritコードレビューのキャッシュされたスナップショット として表示されている
- 「shadow DOMが隠されている」という警告文が含まれているが、実際のコード内容は表示されていない
- したがって、この文書で確認できる情報は 変更タイトルとレビュー識別子(7184969) のみである
1件のコメント
Hacker News の意見
Cloudinary のブログ記事を見たが、webp、jpegxl、avif、jpeg などを比較した古典的な名記事だった。
チャートがよく整理されていて、AVIF は非常に遅い。
関連セクションへのリンク
スクリーンショット参照
jxl-rs ライブラリは JPEG XL の Rust 実装だ。
比較的新しいプロジェクトだが、Rust なので安全性の面では安心感がある。
以前の Chromium の議論時には、このライブラリは存在していなかった。
Rust は過信を招くことがあり、脅威モデリングを省略してしまう場合もある。
むしろ注意深い C プログラマのほうが安全なこともあり得る。
検索結果へのリンク
最近 WebP と AVIF を比較してみたが、WebP はほぼ即座にエンコードされる一方で、AVIF は 1MP の画像に 20 秒以上かかった。
JXL はまだサポートが少ないので実運用では使えないが、WebP 並みの速度でより良い品質を期待している。
私の環境では 2MP の AVIF を 100ms 程度で生成している。
JPEG XL の**公開仕様書(spec)**に自由にアクセスできないのが残念だ。
また新しい画像フォーマットが増えたが、結局は変換なしでは使えない状況の繰り返しになるのではと心配している。
Microsoft Store リンク
Chromium のほうがむしろ遅い。
Wikipedia で見た JPEG XL の機能一覧を読むと、マルチチャネル画像やマルチページ文書のような興味深い機能がある。
良い点もあるが、だんだん TIFF のように複雑になってきている感じもする。
JPEG と JPEG-XL の間には、今でも多くの共通点がある。
新しい実装が既存の JPEG サポートまで統合すれば、コードサイズ削減が可能なのではないかと気になる。
issue #513 リンク
個人的には、WEBP のような新しいフォーマットより既存の JPEGを使い続けたい。
ほとんどのプログラムが対応しており、一般ユーザーには JPEG + PNG で十分だ。
簡単なアニメーションは GIF、複雑なものは動画で処理すればよい。
PNG より小さい容量で可逆エンコードが可能で、既存 JPEG を 20% さらに圧縮しつつ復元可能なトランスコーディングにも対応する。
HDR、ワイドガマット、プログレッシブ読み込みなど多様な機能があり、Web 配信にも理想的だ。
jpegxl.info 参照
Safari 14 以降、すべての主要ブラウザが対応し、Windows 10・macOS Big Sur 以降では標準搭載されている。
対応状況、ソフトウェア一覧を参照。
関連文章
JPEG XL、WebP、AVIF の論争は長く見聞きしてきたが、よく分かっていなかった。
ベンチマークを見ると JpegXL は WebP より圧縮速度とサイズの両方で優れているのに、なぜ Chromium が採用をためらっていたのか気になる。
また libjxl は C++ で 10 万行を超えるコードがあり、セキュリティ脆弱性のリスクがあった。
Rust 実装が成熟するにつれて、Chrome は再検討しているようだ。
デモ動画
JPEG XL がアニメーションをサポートするのか気になっていた。
詳細リンク