Зображення WebP (.webp)

RFC Стандарт

WebP: це сучасний формат зображень, розроблений компанією Google, який забезпечує чудове стиснення з втратами та без втрат для вебзображень, підтримуючи як альфа-прозорість, так і анімовані кадри.

Конвертувати з JPG у WEBP

Безкоштовний конвертер з JPG у WEBP у браузері. Миттєво конвертуйте файли на своєму пристрої.

Стиснути WebP онлайн

Приватно - файли ніколи не залишають ваш пристрій

Аналіз та метадані

Операційні системи та аналізатори файлів ідентифікують файли WebP, перевіряючи початкову послідовність бінарних байтів:

Виберіть або перетягніть файли сюди

Приватно - файли ніколи не залишають ваш пристрій

або вставте Ctrl+V
Гарантія конфіденційності без передавання даних мережею: Жодного байта не передано на зовнішні сервери. Уся обробка відбувалася локально в ізольованому середовищі браузера.

Сигнатура заголовка на байтовому рівні (Magic Bytes)

Операційні системи та аналізатори файлів ідентифікують файли WebP, перевіряючи початкову послідовність бінарних байтів:

ШІСТНАДЦЯТКОВА СИГНАТУРА (ЗСУВ 0):

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

ПОДАННЯ В ASCII: RIFF????WEBP

Стандартизація: RFC 6386 / Специфікація контейнера RIFF

Технічні характеристики

Архітектура контейнераКонтейнер Resource Interchange File Format (RIFF) із чотирисимвольним кодом FourCC «WEBP».
СтисненняПредиктивне внутрішньокадрове кодування з втратами VP8 та просторове ентропійне кодування без втрат VP8L
Порядок байтів (Endianness)Зворотний (Little-Endian) порядок байтів для розмірів блоків RIFF і тегів контейнера.
Колірні просториsRGB, Вбудовані профілі ICC (через розширений заголовок VP8X)
Канали та структураRGB + Альфа (8 біт на канал)
Максимальні розміри16 383 x 16 383 пікселів (14-бітні цілі числа без знака)
ПрозорістьПовна 8-бітна альфа-прозорість каналу як у режимі з втратами, так і без втрат
Потокове та прогресивне завантаженняПідтримується поступове декодування блоків VP8.

Технічна матриця порівняння: WebP проти конкурентів

Технічний атрибутWebP (Поточний)JPEGPNGAVIF
Підтримувані режими стисненняЯк з втратами (VP8), так і без втрат (VP8L)Лише з втратамиЛише без втратЯк з втратами (AV1), так і без втрат
Альфа-прозорістьТак (як із втратами, так і без втрат)НіТакТак
Підтримка анімаціїТак (багатокадрова з затримками кадрів)НіПотребує розширення APNGТак (послідовності зображень AVIF)
HDR / Широке колірне охопленняЛише 8-бітний sRGB8-бітний стандарт8-бітний і 16-бітнийНативний HDR 10- та 12-бітної глибини
Підтримка браузерами97%+ глобальна підтримка у всіх сучасних браузерах100% універсальна100% універсальна93%+ у сучасних браузерах

Типові режими пошкодження та посібник з відновлення в шістнадцятковому форматі

Браузер не може відобразити зображення WebP або показує піктограму пошкодженого зображення.

Першопричина: Заголовок довжини корисного навантаження RIFF (байти 4-7) не відповідає фактичній довжині байтів на диску.

Відновлення: Обчисліть загальний розмір файлу, віднявши 8 байтів, і виправте 4-байтове беззнакове ціле число у форматі Little-Endian за зміщенням 0x04.

Декодер видає помилку «Invalid FourCC: Expected WEBP».

Першопричина: Байти 8-11 не містять символів ASCII «WEBP».

Відновлення: Перевірте, чи містить зміщення 0x08 значення 0x57 0x45 0x42 0x50 («WEBP») і чи відповідає заголовок блоку значенню «VP8 » або «VP8L».

Аналіз безпеки та векторів атак на парсери

Обробка WebP привернула значну увагу фахівців із безпеки після CVE-2023-4863, що призвело до повсюдного посилення ізоляції в усіх основних веббраузерах.

Відомі вектори атак

  • CVE-2023-4863: переповнення буфера в динамічній пам’яті у функції BuildHuffmanTable бібліотеки libwebp під час розбору некоректних таблиць Хаффмана без втрат, що дає змогу виконувати код віддалено.
  • Переповнення цілих чисел під час декодування занадто великих розмірів полотна анімованого кадру.

Рекомендації щодо захисту: Переконайтеся, що в усіх клієнтських і серверних бібліотеках використовується libwebp версії 1.3.2 або новішої. Декодуйте файли WebP в ізольованих робочих потоках з обмеженим доступом до пам’яті.

Історичне походження та віхи

2020Apple Safari 14 додає вбудовану підтримку WebP, завдяки чому WebP підтримують 100% основних браузерів.
2012WebP додає стиснення без втрат (VP8L), прозорість альфа-каналу та анімацію.
2010Google випускає WebP як формат зображень з відкритим вихідним кодом для прискорення роботи вебсайтів.

Основні переваги

  • WebP зі втратами може створювати файли меншого розміру, ніж JPEG за подібної візуальної якості, хоча результат залежить від зображення й кодера.
  • WebP без втрат може створювати файли меншого розміру, ніж PNG, для деяких зображень; результат залежить від зображення й кодера.
  • Один формат підтримує фотографії, графіку з прозорістю та невеликі анімації.

Технічні обмеження та недоліки

  • Максимальні розміри обмежені до 16 383 x 16 383 пікселів, що унеможливлює створення панорамних зображень ультрависокої роздільної здатності.
  • Підтримує лише 8-бітну глибину кольору (відсутня нативна підтримка 10-біт або 12-біт HDR).
  • Кодування складних зображень із втратами потребує більше тактів процесора, ніж кодування застарілими кодеками JPEG.

Цікаві технічні факти

  • WebP створено на основі алгоритмів внутрішньокадрового передбачення ключових кадрів відеокодека VP8 з відкритим кодом від Google.
  • Контейнер RIFF, який використовується у WebP, є точно такою ж архітектурою контейнера, що й класичні файли Microsoft AVI та WAV.
  • Розмір файла порівняно з GIF залежить від вмісту анімації та налаштувань кодування, тому порівняйте результати.

Поширені технічні запитання

Чи може WebP повністю замінити і PNG, і JPEG?

WebP підходить для багатьох вебзображень, але не замінює PNG чи JPEG у кожному робочому процесі. Формат слід обирати з огляду на вміст зображення, потребу в прозорості та браузери чи програми аудиторії.

Чому стиснення WebP без втрат є ефективнішим за PNG?

WebP без втрат використовує вдосконалені просторові предиктори, декореляцію колірних перетворень, локальний кеш кольорів і ентропійне кодування двовимірних перетворень. У результаті файли зазвичай на 26% менші за оптимізовані PNG.

Чи підтримує WebP анімацію?

WebP підтримує анімовані зображення. Розмір файла порівняно з GIF залежить від вмісту анімації та налаштувань кодування, тому порівняйте результати.

Пов'язані пари конвертації WebP

JPG до WEBP

Перетворення JPEG на WebP може зменшити розмір файлу за подібної візуальної якості, хоча результат залежить від вмісту зображення й параметрів кодування.

WEBP до JPG

Перетворення WebP на JPEG може полегшити використання нерухомого зображення у програмі без підтримки WebP. JPEG не зберігає прозорість чи анімацію.

PNG до WEBP

Перетворення PNG на WebP може зменшити розмір файлу зі збереженням прозорості; результат залежить від стиснення з втратами чи без них і вмісту зображення.

WEBP до PNG

Перетворення WebP на PNG створює нерухоме зображення для програм із підтримкою PNG; анімація WebP не зберігається, а втрачені деталі джерела зі стисненням із втратами не відновлюються.

WEBP до GIF

Перетворення анімованих файлів WebP на анімовані GIF поєднує сучасні формати растрової анімації зі старішими веб-стандартами, які вимагають широкої сумісності.

WEBP до PDF

Створіть односторінковий PDF із графіки WebP для документа або раунду узгодження. Браузер перемальовує її як зображення, тому дані та анімація WebP не зберігаються.