WebP(ウェッピー)は、米Googleが開発しているオープン標準の静止画像およびアニメーション画像のフォーマット。ファイルの拡張子は.webp。
概要 代替文=|サムネイル|WebP画像の例 音楽のディスクジョッキーたち
2010年9月30日に仕様が公表され、オープンソースの各種ツールと共に提供が開始された。
ウェブサイトのトラフィック量軽減と表示速度短縮を目的としており、インターネットのWebページで広く使われている非可逆圧縮のJPEGや可逆圧縮のGIF、PNGの置き換えを意図する規格である。JPEGとは異なり、非可逆圧縮でもアルファチャンネルを扱える。
画像圧縮については動画規格WebMのベースであるVP8ビデオコーデックの技術を利用しており、コンテナ形式としてRIFFを採用しているRIFF Container。コンテナの部分を除くと、非可逆のWebPは1フレームのWebMである。
WebPの最大ピクセル数は16383x16383ピクセルFrequently Asked Questions | WebP | Google Developers。非可逆のサンプリングファクタはYCbCr 4:2:0のみ。
アルファチャンネル、ICCプロファイル、アニメーション、 EXIF/EMPメタデータに対応している(⇒#機能)。CMYKカラーモデルには対応していない。3D画像には将来対応する予定。
発音については公表時にGoogleは「Did you know? WebP is pronounced "weppy"」(WebPは"weppy"と発音する)と説明したことにより、ウェッピーとなった。なお、その説明は2012年には残っていない。
2024年11月、WebPはとして正式に規格化された。
機能
基本機能 WebPの基本機能は単一静止画の可逆・非可逆圧縮である。非可逆画像圧縮コーデックはVP8のキーフレーム圧縮を基本とする。
拡張機能 WebPはオプションで拡張機能を有効化できる。以下は拡張機能の一覧である:
アルファチャンネル 色設定: ICCプロファイルに基づく色管理 : アルファチャンネルが有効なアニメーション ファイルメタデータ: EXIF形式 or EMP形式のファイルメタデータ
評価 Googleの示した事例では、ファイルサイズは非可逆圧縮モードで(同一画像、同等画質の)JPEGと比較して25-34%小さくなり、可逆圧縮モードでPNGと比較して28%小さくなるとしている。また22%のファイルサイズ増加でアルファチャネルを追加できるとしている。可逆圧縮は、エンコードはPNGよりも時間がかかるが、デコードはPNGよりも高速であると主張している。一方、非可逆圧縮では、2013年10月に行われたMozillaの比較調査で、旧来のJPEGと大して変わらないという結果となった。
libwebp libwebpは、webpを取り扱えるライブラリである。C言語やJava、Go言語などが開発に使用されている。加えて、cwebpやdwebpなどのエンコード、デコード用のユーティリティも用意されている。
Linux、Windows、macOSにはプリコンパイルパッケージが用意されている。iOSにはフレームワークがあり、Androidでは、Android StudioのAPI レベル 18以上のプロジェクトで完全にサポートされる。
対応環境 OS Android - 非可逆圧縮は 4.0 以降、可逆圧縮は 4.3 以降WebP 画像の作成 | Android デベロッパー | Android Developers Microsoft Windows 10 Creators Update以降 macOS - Big Sur 以降 iOS - 14 以降
ウェブブラウザ Google Chrome 17 以降、Google Chrome for Android 25 以降 Mozilla Firefox 65以降 Microsoft Edge 18以降 Opera 11.10 以降 Safari 14以降 SeaMonkey 2.53.5以降
ビューアー IrfanView nomacs Pixelmator XnView Honeyview JPEGView PicView
エディター Adobe Photoshop (23.2以降Photoshop での WebP ファイルの操作 | Adobe) GIMP (2.10.0以降GIMP 2.10.0 Released - GIMP) CLIP STUDIO (3.0.0以降CLIP STUDIO PAINT バージョン3.0を提供開始 より描きやすく、制作を効率化する多数の新機能を追加)
コンバーター Google Official WebP Tools FFmpeg ImageMagick Squoosh XnConvert
Advanced Batch Image Converter PicWish Bandisoft Honeyview
ライブラリおよびプラグイン等 Squoosh CLI - Google製の画像圧縮コマンドラインインターフェース WebPJS - JavaScriptによるWebPライブラリ WebP QuickLook Plugin - macOSのQuickLook 用プラグイン Weppy - OS Xのウェブブラウザ向けのプラグイン ifwebp.spi - WebPファイルを表示するSusieプラグイン WebP Codec for Windows - Windows Imaging Component (WIC) に準拠したコーデック。導入することでWIC対応の各種ソフトウェアにてWebP画像の表示が可能になる。説明ページのみがリンク切れしているため、現在もダウンロードは可能。2024年7月現在でも、デコードのみの対応でエンコードには今後対応する予定。2016年1月以降は更新が行われていない。 Webp 画像拡張機能 - Windows上で使用できる、Microsoft Edge用の拡張機能。Microsoft Storeで配布されている。2017年前後はEdgeにWebpを読み込む機能が備わっていなかったため代替手段として用いられた。しかし、バージョン18以降のEdgeは標準でWebpのデコード機能を備え、後にはChromiumベースになったため、同プラグインの使用用途はほぼ無くなっている。
仕様 WebP は画像に特化した RIFF のサブセットである"The WebP container (that is, the RIFF container for WebP) ... The WebP file format is based on the RIFF" WebP Container Specification より引用。2024-11-12閲覧.。RIFFヘッダーは WebP File Header と呼ばれ、フォーマット名FourCCは WEBP でなければならない。コンテンツ及びメタデータに関するチャンクタイプが WebP 仕様により定められており、それ以外のチャンクは(RIFF仕様に基づき)unknown チャンクとして無視される"A RIFF chunk ... whose FourCC is different from any of the chunks described in this document, is considered an unknown chunk. ... Readers SHOULD ignore these chunks." WebP Container Specification より引用。2024-11-12閲覧.。
チャンクタイプは以下の 8 種類が存在する:
VP8: VP8コーデックで非可逆圧縮された単一静止画 VP8L: 可逆圧縮された単一静止画 VP8X: 拡張仕様の利用に関するメタデータ ICCP: ICCプロファイル ANIM: アニメーションのグローバル設定 ANMF: アニメーションを構成する単一フレーム EXIF: EXIF形式のファイルメタデータ XMP: EMP形式のファイルメタデータ
VP8チャンク VP8チャンクは FourCC VP8 をもち VP8 で非可逆圧縮された単一静止画を収納するチャンクである。
VP8Lチャンク VP8Lチャンクは FourCC VP8L をもち WebP lossless で可逆圧縮された単一静止画を収納するチャンクである。
VP8Xチャンク VP8チャンクは FourCC VP8X をもち RIFF 拡張仕様の利用に関するメタデータを収納するチャンクである"A 'VP8X' Chunk with information about features used in the file." WebP Container Specification より引用。2024-11-12閲覧.。
WebP の最も基本的な役割は単一静止画を収納することである"the basic use case of WebP (that is, a file containing a single image encoded as a VP8 key frame)." WebP Container Specification より引用。2024-11-12閲覧.。他にアニメーション等の拡張機能がオプショナルであるが"The WebP container provides additional support" WebP Container Specification より引用。2024-11-12閲覧.、基本機能のみを利用するならオプションON/OFFの明示的指定はファイル容量の無駄である。これを解決するため、WebP は VP8Xチャンクが存在しなければ基本機能のみ(全オプションOFF)と解釈する。その対として、オプションを1つでも利用する際は VP8Xチャンクを持ち、このチャンク内で全オプションの利用フラグと設定を明示する。
ANIMチャンク ANIMチャンクは FourCC ANIM をもちアニメーションのグローバル設定を収納するチャンクである"'ANIM' Chunk: ... contains the global parameters of the animation." WebP Container Specification より引用。2024-11-12閲覧.。
バックグラウンド色およびループカウント数を設定できる。
ANMFチャンク ANMFチャンクは FourCC ANMF をもちアニメーションを構成する単一フレームを収納するチャンクである"'ANMF' Chunk: ... contains information about a single frame." WebP Container Specification より引用。2024-11-12閲覧.。
キャンパス内におけるフレームのX/Y座標・Hight/Width・継続長・アルファブレンド設定・フレーム破棄設定をメタデータとして有し、末尾に Frame Data をもつ。Frame Data は LISTチャンク に似たチャンクで、アルファ・ビットストリーム・unknown のサブチャンク列を格納している。
EXIFチャンク EXIFチャンクは FourCC EXIF をもち EXIF メタデータを収納するチャンクである"Metadata can be stored in 'EXIF' or 'XMP ' Chunks." WebP Container Specification より引用。2024-11-12閲覧.。
ファイル全体のメタデータを収納するチャンクであるため、このチャンクかXMPチャンクのいずれか1つのみしか同時に存在できない"There SHOULD be at most one chunk of each type ('EXIF' and 'XMP ')." WebP Container Specification より引用。2024-11-12閲覧.。
XMPチャンク XMPチャンクは FourCC XMP をもち EMP メタデータを収納するチャンクである。
ファイル全体のメタデータを収納するチャンクであるため、このチャンクかEXIFチャンクのいずれか1つのみしか同時に存在できない。
脚注
注釈
出典
関連項目 WebPの元となったもの WebM WebPの姉妹プロジェクトである動画フォーマット VP8 WebMのビデオコーデック RIFF WebPのコンテナ形式 WebPと同様にJPEGの置き換えを目指している競合規格 JPEG 2000 JPEG XR AVIF - 実質的なWebP後継規格
外部リンク