zenpix

2026 · C, AVIF, WebP

CLI・ネイティブライブラリ・WASMで利用できるAVIF / WebP / PNG変換ライブラリ。

特徴

  1. 01

    decode・resize・AVIF / WebP / PNG encodeを一つのAPIで扱い、CLI・ネイティブライブラリ・WASMの各環境から利用できるようにする。

  2. 02

    実際にこのサイトの画像変換にも使っている。2026年7月2日の入稿ログに含まれる画像では、4.5〜6.9MBのPNGを長辺1920pxのAVIFへ約1.7〜2.1秒で変換し、38〜130KBになった。この値は当時の入力と設定に限る。decode・Lanczos-3リサイズ・YUV 4:4:4 AVIF encodeを一つのパイプラインとして扱い、native版とWASM版で実行環境を分けている。WASM版はブラウザ上で完結するためサーバーが不要で、静的ページから利用できる。

用語

JPEG
写真や塗りの多い画像に広く使われる非可逆圧縮フォーマット。圧縮のたびに画質が劣化し、透過には非対応。
PNG
劣化のない可逆圧縮フォーマット。透過に対応し、イラストや図版に適している。ファイルサイズはJPEGより大きくなりやすい。
GIF
最大256色・可逆圧縮・アニメーション対応のフォーマット。色数が少ないため写真やイラストには不向き。
HEIC
iPhoneのデフォルト撮影形式。HEIF規格をベースに高品質・高圧縮率を持つが、対応環境が限られる。
AVIF
非可逆・可逆の両方に対応する画像フォーマット。入力と設定によってはJPEGやWebPより小さくでき、クロマ形式としてYUV 4:4:4も選べる。圧縮率や見た目はencoder、quality、入力画像に左右される。
WebP
Googleが開発した画像フォーマット。非可逆・可逆の両方に対応する。AVIFとの圧縮効率や見た目の差は、入力・encoder・quality設定に左右される。
YUV 4:4:4
画像の色を「明るさ(輝度)」と「色み(色差)」に分けて記録する方式がYUV。4:4:4は色差を間引かず、4:2:0は色差のサンプル数を減らす。4:4:4であることは、非可逆encode全体がlosslessであることを意味しない。
Lanczos-3
高品質なリサイズアルゴリズム。エッジのシャープネスを保ちながら縮小・拡大できる。
WASM
WebAssemblyの略。ブラウザ内でネイティブに近い速度で動く実行形式で、サーバーなしで処理できる。