Rust製WebPデコーダー「wpd」がlibwebpを最大3.19倍高速化

Memory-Safe WebP Decoding

Rust製WebPデコーダー「wpd」がlibwebpを最大3.19倍高速化

Halide Compressionが、libwebpより高速で安全なWebPデコーダー「wpd」を公開した。Rustで書かれ、手書きアセンブリを除けばメモリ安全を検証可能。libwebp比でシングルスレッドは損失あり1.19倍、可逆2.74倍、マルチスレッドでは損失あり2.68倍、可逆3.19倍高速。libwebpの機能をほぼ網羅し、BSD 2-Clauseライセンスで提供される。

libwebpは過去より安全になっている可能性は高いが、十分にファジングされているからといってメモリ安全を「解決」したわけではない。
  1. jessa0

    関連するものとして、Signal Messengerのwebpsanクレートがあります。これはwebpコンテナの構文をlibwebpに渡す前に検証するものです。ただし、実際のピクセルデータのデコードは行いません。webpの仕組み上、ピクセルデータを完全にデコードするにはキャンバス全体を確保する必要があり、それではwebpsanが完全なデコーダーになってしまうからです。

    https://docs.rs/webpsan/latest/webpsan/

  2. omoikane

    WuffsベースのWebPデコーダーが現在どうなっているかは分かりませんが、安全性と速度という同じ目標を共有しているので、比較する価値のあるもう一つの実装でしょう。

    https://github.com/google/wuffs/tree/main/std/webp

  3. computerbuster

    コード: https://github.com/halidecx/wpd

この日のほかの記事

2026-10-03