动画 WebP (.webp)

RFC 标准

WebP 是由 Google 开发的现代图像格式,为网页图像提供更优异的无损和有损压缩,同时支持 Alpha 透明度和动画帧。

将 JPG 转换为 WEBP

免费的浏览器端 JPG 转 WEBP 转换器。在您的设备上即时转换文件。

在线压缩 WebP

隐私保护 - 文件不会离开您的设备

检查与元数据

操作系统和文件分析器通过检查开头的二进制字节序列来识别 WebP 文件:

选择或将文件拖放到此处

隐私保护 - 文件不会离开您的设备

或粘贴 Ctrl+V
零网络传输隐私保证: 上传至外部服务器的数据为 0 字节。所有处理均在您的浏览器沙箱中本地完成。

字节级文件头签名 (魔数)

操作系统和文件分析器通过检查开头的二进制字节序列来识别 WebP 文件:

十六进制签名 (偏移量 0):

52 49 46 46 ?? ?? ?? ?? 57 45 42 50

ASCII 表示形式: RIFF????WEBP

标准化: RFC 6386 / RIFF Container Specification

技术规格

容器架构资源交换文件格式 (RIFF) 容器,带有 'WEBP' FourCC
压缩方式有损 VP8 预测帧内编码与无损 VP8L 空间熵编码
字节序RIFF 块大小和容器标签采用小端序 (Little-Endian)
色彩空间sRGB, 嵌入式 ICC 配置文件 (通过 VP8X 扩展标头)
通道与结构RGB + Alpha (每通道 8 位)
最大尺寸16,383 x 16,383 像素 (14 位无符号整数)
透明度有损和无损模式下均支持完整的 8 位 Alpha 通道透明度
流式传输与渐进式加载通过增量 VP8 块解码支持渐进式解码

技术对比矩阵:WebP 对比同类产品

技术属性WebP (当前)JPEGPNGAVIF
支持的压缩模式有损 (VP8) 和无损 (VP8L) 兼备仅有损仅无损有损 (AV1) 和无损兼备
Alpha 透明度支持 (有损和无损均支持)不支持支持支持
动画支持支持 (带帧延迟的多帧)不支持需要 APNG 扩展支持 (AVIF 图像序列)
HDR / 广色域仅 8 位 sRGB8 位标准8 位和 16 位10 位和 12 位原生 HDR
浏览器支持全球 97% 以上的用户使用的现代浏览器均支持100% 全面支持100% 全面支持93%+ 现代浏览器

常见损坏模式与十六进制恢复指南

浏览器无法显示 WebP 图像或显示损坏的图像图标。

根本原因: RIFF 有效负载长度标头 (字节 4-7) 与磁盘上的实际字节长度不匹配。

恢复方法: 重新计算总文件大小减去 8 字节,并修补偏移量 0x04 处的 4 字节小端无符号整数。

解码失败并显示 'Invalid FourCC: Expected WEBP'。

根本原因: 字节 8-11 不包含 ASCII 字符 'WEBP'。

恢复方法: 验证偏移量 0x08 是否包含 0x57 0x45 0x42 0x50 ('WEBP'),并且块标头与 'VP8 ' 或 'VP8L' 匹配。

安全分析与解析器攻击向量

在发生 CVE-2023-4863 漏洞之后,WebP 解析受到了严格的安全审查,导致所有主流网络浏览器普遍进行了沙箱加固。

已知攻击向量

  • CVE-2023-4863:解析无效的无损哈夫曼表时,libwebp 的 BuildHuffmanTable 函数发生堆缓冲区溢出,从而允许远程代码执行。
  • 解码超大动画帧画布尺寸时发生整数溢出。

防御性最佳实践: 确保所有客户端和服务器库都使用 libwebp 1.3.2 或更高版本。在内存沙箱化的工作线程中解码 WebP 文件。

历史渊源与里程碑

2020Apple Safari 14 增加了对 WebP 的原生支持,实现了主流浏览器 100% 的全面覆盖。
2012WebP 增加了无损压缩 (VP8L)、Alpha 通道透明度和动画功能。
2010Google 发布了作为开源图像格式的 WebP,以加速网页性能。

核心优势与特点

  • 在相同的 SSIM 质量下,有损 WebP 图像比同类 JPEG 图像小 25% - 35%。
  • 无损 WebP 通常比标准 PNG 小 26%。
  • 单一统一格式可处理照片、带透明度的图形以及轻量级动画剪辑。

技术局限与劣势

  • 最大尺寸限制为 16,383 x 16,383 像素,无法满足超高分辨率全景图像的需求。
  • 仅支持 8 位色彩深度 (无原生 10 位或 12 位 HDR 支持)。
  • 编码复杂的有损图像比传统的 JPEG 编码器需要消耗更多的 CPU 周期。

趣味技术冷知识

  • WebP 基于 Google 开源 VP8 视频编解码器的关键帧帧内预测算法。
  • WebP 使用的 RIFF 容器与经典的 Microsoft AVI 和 WAV 文件使用完全相同的容器架构。
  • 与 GIF 相比,文件大小取决于动画内容和编码设置,因此请比较实际结果。

常见技术问题

WebP 能完全替代 PNG 和 JPEG 吗?

WebP 适用于许多网页图像,但并不能在所有工作流程中取代 PNG 或 JPEG。请根据图像内容、透明度需求以及受众使用的浏览器或软件选择格式。

为什么 WebP 无损压缩比 PNG 更高效?

WebP 无损压缩使用了先进的空间预测器、色彩变换去相关、局部色彩缓存以及熵编码的 2D 变换,生成的文件通常比最优化的 PNG 文件小 26%。

WebP 支持动画吗?

WebP 支持动画图像。与 GIF 相比,文件大小取决于动画内容和编码设置,因此请比较实际结果。