APNGと並んで互換性の低かったAnimated WebPについて。対応ブラウザは、Chrome、Opera、Winodws 10のMicrosoft Edge44以降、そしてFirefox 65以降である。画像投稿サイトはほとんど対応してないと思うので実用性は高くない。対応カラーフォーマットは YUV420p(YUVA420p)。APNGのように可逆圧縮だけではないので低容量でアニメGIFよりも高画質に作れるが互換性が低いのが弱点

2020年11月現在、ffmpegではAnimated WebPをデコードできない。1フレームのWebpならデコードできる。Patchworkにパッチが来ているが公式には組み込まれていない。
#4907 (Support decoding animated WebP images) – FFmpeg
[FFmpeg-devel] avformat/webpdec: WebP demuxer implementation – Patchwork

基本コマンド

ffmpeg -i input -c:v libwebp -lossless 0 -q:v 75 -preset default -loop 0 -an -fps_mode vfr output.webp

複数の静止画像で出力する。
ffmpeg -i input -c:v libwebp -lossless 0 -q:v 75 -preset default -loop 0 -an -fps_mode vfr output%03d.webp

公式ドキュメント:FFmpeg Codecs Documentation : libwebp

オプション

  • -lossless[int]
    可逆圧縮指定
    既定値:0(1が可逆圧縮)
  • -compression_level
    圧縮率の指定。数値が高いほど高圧縮でエンコードに時間がかかる
    既定値:4
    範囲:0から6まで
  • -quality、-qscaleは廃止予定
    圧縮品質の指定。数値が高いほど高画質。不可逆圧縮時に高い数値だとエンコードが長時間の高画質で大容量。可逆圧縮指定に高い数値だとエンコードが長時間で低容量
    既定値:75
    範囲:0から100まで
  • -preset[int]
    プリセットの指定
    • -1, none:プリセットを使わない。既定値
    • 0, default:自動指定
    • 1, picture:人物写真
    • 2, photo:風景写真
    • 3, drawing:線画など
    • 4, icon:小さなサイズで色彩豊富
    • 5, text:文字が中心

指定フレームだけを出力する場合はtrimフィルタを使い、リサイズや、フレームレートを減らすにはfps, scaleフィルタを使う。
ffmpeg -i input -vf fps=15,scale=320:-2 -c:v libwebp -lossless 0 -quality 75 -preset default -an -fps_mode vfr output.webp

関連記事

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)