WebpとAVIFをWindowsでローカルに使ってみる

WebpとAVIFをWindowsでローカルに使ってみる

ブラウザツールはいろいろあるのだが、ローカルでやるのがやはり便利なのでその方法を模索する。

sharpで画像を一括圧縮、WebP・AVIF変換する - Web production note
画像変換ライブラリsharpを用いて、画像をまとめて圧縮や変換(Webp・AVIF・JPG・PNG)できる方法をまとめました。

非公式なコマンドラインツールなどもあるが、開発が最新のバージョンに追随していなかったりするので、おとなしく公式実装を使うのがよさそう。

PNGやJPEG画像をAVIFフォーマットへ変換してくれるコマンドラインツール「cavif」がリリース。
PNGやJPEG画像をAVIFフォーマットへ変換してくれるコマンドラインツール「cavif」がリリースされています。詳細は以下から。

Webp

WebpはGoogleが作ったナウい画像形式。古臭いJPEGに比べて画質を保ったまま小さくできるのがウリ。

WebpのダウンロードはGoogle公式ページの「Windows版をダウンロード」から。

WebP のダウンロードとインストール | Google for Developers

libwebp-1.6.0-windows-x64 のようなフォルダーがダウンロードされるハズ。その中にある bin フォルダー以下に cweb.exe などの各種ツールが入っているので、 適当に C:\\program files\\libwebp-1.6.0-windows-x64\\bin\\ のように配置して、環境変数にパスを登録しておく。

使い方

公式サイトに詳しく説明がある。

cwebp | WebP | Google for Developers

WebpにはLossyとLosslessの圧縮モードがある。

非可逆圧縮

Lossyならこれ。

cwebp input_file -o output_file.webp

基本的にはこれでOK。引数などのパラメータはデフォルトが結構考えられてセットされているので、下手にいじらないほうがいいのかもなあという結論。

可逆圧縮

PNGやTiffのような可逆圧縮の代替として使いたいならLossless圧縮。

cwebp -lossless input_file -o output_file.webp

圧縮モードの指定を -z int 引数で行える。1から9まで指定ができる。デフォルトは6だが私は基本的に9を指定してる。オプション -q または -m が後で使用されると、このオプションの効果が無効になります。

AVIF

AVIFのお勉強サイトをGoogleが公開しているので、参考にする。

AVIF 画像の配信 | Google Codelabs

avifencを導入する

Releases · AOMediaCodec/libavif
libavif - Library for encoding and decoding .avif files - AOMediaCodec/libavif

ここから最新のリリースビルドをダウンロードする。

windows-artifacts.zip をダウンロードすればよい。

適当に C:\\Program Files\\windows-artifacts のように配置して、環境変数にパスを登録しておく。

使い方

たぶん、avifはLossyしかないハズ。

avifenc happy_dog.jpg example.avif

基本的にこのコマンドでOK。

カレントディレクトリ以下の全JPEG/PNG画像ファイルをWebpあるいはAVIFに変換する

Powershellワンライナーに。

画像ファイルを新しい形式に変換して、置換する。

💡
元ファイルは削除されるので、注意。

注意点

  • デフォルト品質を使用(avifencとcwebpのデフォルト設定)
  • 必ずバックアップを取ってからテスト実行してください
  • まずはWhatIfや小さなフォルダーでテストすることをお勧めします

AVIF Lossy

Get-ChildItem -Recurse -Include *.jpg,*.jpeg,*.png | ForEach-Object { $out = $_.FullName -replace '\\.(jpg|jpeg|png)$','.avif'; avifenc $_.FullName $out; if($LASTEXITCODE -eq 0) { Remove-Item $_.FullName } }

WebP Lossy (デフォルト品質)

Get-ChildItem -Recurse -Include *.jpg,*.jpeg,*.png | ForEach-Object { $out = $_.FullName -replace '\\.(jpg|jpeg|png)$','.webp'; cwebp $_.FullName -o $out; if($LASTEXITCODE -eq 0) { Remove-Item $_.FullName } }

WebP Lossless

Get-ChildItem -Recurse -Include *.jpg,*.jpeg,*.png | ForEach-Object { $out = $_.FullName -replace '\\.(jpg|jpeg|png)$','.webp'; cwebp -lossless $_.FullName -o $out; if($LASTEXITCODE -eq 0) { Remove-Item $_.FullName } }

動作説明

  • Get-ChildItem -Recurse -Include *.jpg,*.jpeg,*.png: カレントフォルダー以下の全画像を再帰的に取得
  • 拡張子を.avifまたは.webpに置換
  • 変換コマンド実行
  • $LASTEXITCODE -eq 0で成功確認後、元ファイルを削除

Read more

Capture Oneに待望のネガフィルム変換機能が来た

2026年4月3日、Capture One 16.7.4 がリリースされた。目玉はなんといっても Negative Film Conversion(ネガフィルム変換) の搭載だ。これまで Cultural Heritage エディション限定だったネガ反転処理が、ついに通常の Capture One Pro / Studio でも使えるようになった。 何が変わったのか 従来、Capture One でネガフィルムをポジに変換するには、Cultural Heritage(CH)エディションを使う必要があった。CH は文化財デジタル化向けの専用製品で、Base Characteristics ツールに Film Negative / Film Positive モードが用意されていた。しかし一般の写真愛好家がフィルムスキャンのためだけに CH を導入するのは現実的ではなく、多くのユーザーは Lightroom とそのプラグイン(Negative Lab

By Sakashita Yasunobu

雨の中、歩くべきか走るべきか

傘を忘れた日の永遠の問い、歩くか、走るか、いやいっそ雨宿りをするのか。物理で決着をつける。 モデル 人体を直方体で近似。上面積 $A_{\text{top}}$(頭・肩)、前面積 $A_{\text{front}}$(胸・顔)。雨は鉛直一様(落下速度 $v_r$、数密度 $n$)、距離 $d$ を速度 $v$ で直線移動する。 人体の直方体モデルは、上から見た水平断面が $A_{\text{top}}$、正面から見た鉛直断面が $A_{\text{front}}$ の二面で構成される。移動方向は水平、雨は鉛直に降る。 受ける雨滴数は、上面が $n v_r A_{\text{top}

By Sakashita Yasunobu

T-GRAIN・Core-Shell・旧式乳剤の定量比較

Kodak T-GRAIN、Ilford Core-Shell、旧式立方晶乳剤。写真フィルムの性能を左右する三つの乳剤技術を、特許文献と数式に基づいて比較する。 1. 出発点: 旧式乳剤の構造と限界 T-MAXやDeltaが何を改良したのかを理解するには、まず従来の乳剤がどのようなものだったかを押さえておく必要がある。 1980年代以前、標準的なハロゲン化銀乳剤はAgBrやAgBr(I)の結晶が立方体(cubic)か不定形(irregular)の形をしていた。Tri-XやHP5の祖先にあたるこれらの乳剤では、結晶のアスペクト比(直径対厚さの比)はおおむね1:1から2:1。三次元的にほぼ等方的な粒子が乳剤層にランダムに散らばっていた。 この形態が感度と粒状性のトレードオフに直結する。立方晶粒子を一辺 $a$ の立方体として近似すると、表面積と体積、そしてその比は次のとおりである。 $$ S_{\text{cubic}} = 6a^2, \quad V_{\text{cubic}} = a^3, \quad \frac{S}{V} = \frac{6}

By Sakashita Yasunobu

クジラはなぜがんにならないのか

体が大きい動物ほど細胞の数が多い。細胞が多ければ、そのうちどれかががん化する確率も高くなるはずだ。ところが現実には、クジラやゾウのがん発生率はヒトよりも低い。1977年、疫学者リチャード・ピートがこの矛盾を指摘した。以来この問いは「ピートのパラドックス」と呼ばれ、比較腫瘍学における最大の謎のひとつであり続けている。 種の中では予測通り、種の間では崩れる 同じ種の中では、直感どおりの傾向が確認されている。身長の高いヒトはそうでないヒトよりがんの発生率がやや高く、年齢を重ねるほどがんは増える。細胞の数が多いほど、細胞分裂の回数が多いほど、がん化の確率は上がる。 しかし種を超えて比較すると、この関係が崩壊する。シロナガスクジラの細胞数はヒトの約1000倍にのぼるが、がんの発生率がヒトの1000倍になるわけではない。哺乳類全体を見渡しても、体サイズとがんリスクの間に明確な正の相関は長い間見つかっていなかった。がんの発生率は種が異なっても約2倍の範囲にしか収まらないとされてきた。体サイズの差は100万倍を超えるにもかかわらず。 ゾウが持つ余分ながん抑制遺伝子 最もよく知られた説明は

By Sakashita Yasunobu