Pull to refresh

Современные форматы изображений или почему мы до сих пор на JPEG?

Level of difficultyEasy
Reading time5 min
Views4.5K

Формат JPEG появился в 1992 году и стал де-факто стандартом хранения фотографий в интернете. Спустя более 30 лет появляются всё более эффективные и продвинутые альтернативы: WebP, AVIF, JPEG XL и другие. Однако даже в 2025 году JPEG продолжает доминировать. Почему так происходит, несмотря на очевидные преимущества новых форматов? В этой статье мы проведем обзор форматов и разберёмся в причинах.

Обзор современных форматов изображений

JPEG

  • Кто и когда создал: Joint Photographic Experts Group, 1992

  • Качество: Среднее, потери при каждом сохранении

  • Сжатие: Базовое

  • Прозрачность: ❌

  • Анимация: ❌

  • Лицензия: Свободная

  • Поддержка: Абсолютно везде

  • Доп. возможности: только одно изображение, только 8-бит, без прозрачности, без метаданных кроме EXIF

WebP

  • Кто и когда создал: Google, 2010

  • Качество: Хорошее (lossy и lossless)

  • Сжатие: ~25–35% лучше JPEG

  • Прозрачность: ✅

  • Анимация: ✅

  • Лицензия: Свободная

  • Поддержка: Широкая (Chrome, Firefox, Safari с 2020, Android)

  • Доп. возможности: альфа-канал, анимация (многокадровость), EXIF, ICC, XMP, lossless режим

AVIF

  • Кто и когда создал: Alliance for Open Media (Google, Mozilla, Netflix и др.), 2019

  • Качество: Отличное (лучшая эффективность на сегодня)

  • Сжатие: ~50% лучше JPEG и WebP

  • Прозрачность: ✅

  • Анимация: ✅

  • Лицензия: Свободная

  • Поддержка: Расширяется (Chrome, Firefox, Android, частично Safari)

  • Доп. возможности: HDR, альфа, 8/10/12-бит, анимация, слои, ICC, EXIF, XMP, глубина цвета до 12 бит

JPEG XL

  • Кто и когда создал: Google и Cloudinary, 2020

  • Качество: Отличное, особенно при повторном сохранении

  • Сжатие: ~50–60% лучше JPEG

  • Прозрачность: ✅

  • Анимация: ✅

  • Лицензия: Свободная (BSD)

  • Поддержка: Частичная (Firefox nightly, Safari Tech Preview, Chrome экспериментально, отозвано)

  • Доп. возможности: обратимая конвертация из JPEG, слои, ресайз без потерь, перемасштабируемость, HDR, ICC, EXIF, XMP, глубина до 32 бит float

HEIC / HEIF

  • Кто и когда создал: MPEG Group, 2013 (широко продвигается Apple)

  • Качество: Отличное (основано на HEVC)

  • Сжатие: ~50% лучше JPEG

  • Прозрачность: ✅ (в HEIF, не всегда в HEIC)

  • Анимация: ✅

  • Лицензия: Проприетарная (HEVC требует лицензий)

  • Поддержка: iOS, macOS, частично Windows, плохо на Android

  • Доп. возможности: HDR, многокадровость (Live Photos), 10/12-бит, прозрачность, EXIF/ICC/XMP

FLIF

  • Кто и когда создал: Jon Sneyers и др., 2015

  • Качество: Без потерь, лучше PNG

  • Сжатие: ~50% лучше PNG, лучше JPEG (в без потерь)

  • Прозрачность: ✅

  • Анимация: ❌

  • Лицензия: Свободная

  • Поддержка: Практически отсутствует, проект не развивается

  • Доп. возможности: универсальность (один режим), адаптация к содержимому, поддержка альфа-канала

BPG

  • Кто и когда создал: Fabrice Bellard, 2014

  • Качество: Очень высокое

  • Сжатие: ~50% лучше JPEG

  • Прозрачность: ✅

  • Анимация: ✅

  • Лицензия: Патентованная (HEVC требует роялти)

  • Поддержка: Отсутствует в браузерах, используется только энтузиастами

  • Доп. возможности: альфа, глубина цвета, HDR, XMP/EXIF, анимация

Сравнительная таблица форматов

Формат

Качество

Сжатие

Лицензия

Поддержка

JPEG

Среднее

Базовое

Свободная

Везде

WebP

Хорошее

~25–35%

Свободная (Google)

Широкая

AVIF

Отличное

~50%

Свободная (AOM)

Расширяется

JPEG XL

Отличное

~50–60%

Свободная (BSD)

Частичная

HEIC/HEIF

Отличное

~50%

Проприетарная (Apple)

Ограниченная (Apple)

FLIF

Отличное (без потерь)

~50% (PNG)

Свободная

Почти нет

BPG

Отличное

~50%

Патентованная (HEVC)

Почти нет

Возможность адаптивной отдачи форматов

Да, современная веб-разработка поддерживает адаптивную подстановку изображений в разных форматах для разных браузеров. Это достигается с помощью HTML-тега <picture> или механизма content negotiation на уровне сервера. Пример использования:

<picture>
  <source srcset="image.avif" type="image/avif">
  <source srcset="image.webp" type="image/webp">
  <img src="image.jpg" alt="Пример изображения">
</picture>

Современные браузеры будут использовать AVIF или WebP, если поддерживают, иначе загрузят fallback — JPEG. На стороне сервера возможно:

  • использование CDN (например, Cloudflare, Akamai, Yandex Cloud), которые автоматически перекодируют изображения в нужный формат;

  • или реализация логики content negotiation через заголовок Accept, чтобы на лету выбирать лучший формат:

Accept: image/avif,image/webp,image/*,*/*;q=0.8

Эти подходы позволяют эффективно использовать новые форматы без потери совместимости со старыми браузерами.

Почему свободные форматы не победили?

1. Консерватизм индустрии

JPEG работает везде, от старых Android-планшетов до почтовых клиентов.

2. Несовпадение интересов игроков

  • Google развивает WebP/АVIF

  • Apple продвигает HEIC

  • Mozilla выступает за JPEG XL

В результате — так и нет единого стандарта.

3. Сложность и стоимость перехода

Нужно встраивать новые кодеки, переделывать backend/кеши/обработку превью, что невыгодно.

4. Низкая поддержка от Telegram, WhatsApp, Instagram, email-сервисов

Даже если вы отправите AVIF-картинку, она часто переконвертируется обратно в JPEG.

Заключение

JPEG прожил долгую жизнь благодаря стабильности, универсальности и поддержке на всех уровнях. Технически он отстаёт от AVIF, WebP, JPEG XL и др., но, к сожалению, смена стандарта требует сложных изменений во всей цепочке: от браузеров и смартфонов до CDN, CMS и мессенджеров.

Если же у вас есть влияние на стек технологий или вы работаете с изображениями, стоит обратить внимание на AVIF, WebP и JPEG XL — за ими будущее.

PS: Почему habr.com до сих пор не поддерживает новые форматы изображений, включая WebP? Они там сговорились что ли вместе с Павлом Дуровым, который упорно не хочет слезать с JPEG? )

PS: Комментарий от Павла Шляк, одного из разработчиков браузера LadyBird

Фактически всё кроме WebP — кошмар в плане проблем потенциальных.
Кривая поддержка в браузерах ИЛИ лицензионные ограничения вообще неочевидные местами. Намучались когда свой браузер делали в том числе.

> Mozilla выступает за JPEG XL

Они выступают за всё хорошее и против всего плохого. Они поддерживают вообще всё что могут по закону)

Банально в AVIF десять тысяч способов повернуть картинку (свой + exif).
В жизни все браузеры крутят по разному. Вкупе с CSS угадать поворот картинки которую загрузил пользователь и отобразить правильно — задача невыполнима.
Я много про это ругался в т.ч. с авторами стандарта CSS, но на легаси поведение браузеров оч много уже завязано в вебе.

То есть мы пытались сделать совместимость и со стандартом и с другими браузерами, а они банально между собой по разному показывают блин. Прям нормально всё сделано в плане стандарта лицензий и библиотек только у Гугла с WebP по моему мнению, хоть и по сжатию они не лучшие.

Ну вот из банального, открой в разных браузерах, удивись:
https://zpl.fi/exif-orientation-in-different-formats/

А ещё есть комбинация этого всего с
https://drafts.csswg.org/css-images/#the-image-orientation

То есть банально не-JPEGг может в разных браузерах бесконтрольно крутиться.
Потратил на это больше месяца и бросил.
https://github.com/LadybirdBrowser/ladybird/issues/2065
Отсюда и ещё много куда.

А ещё цветовые пространства!!!
С ними тоже Мега много проблем везде что не WebP и не JPEG.
Причем не только в браузерах.

Так что веб разработчикам я бы советовал наверное сегодня использовать только эти два формата, и последний только отдавать древним браузерам те современные все умеют нормально WebP.

WebP главный плюс — не что жмет сильнее, к что артефакты lossy сжатия без микроскопа не разглядеть, в отличие от JPEG. Что круто.

И про библиотеки для редких форматов. Надо не чтобы они были, надо чтобы они были ещё безопасными, а не дырявыми с кучей RCE.
Это камень в огород JPEG XL, например.

Мы кодеки в жесточайшей песочнице запускали, но даже так RCE в библиотеке это опасно, а аудитов там порой.. нет )

Для браузера это прям критично критично думаю сам понимаешь.

Поворот если что — это один из примеров. Там, правда, много проблем.

Only registered users can participate in poll. Log in, please.
Пора ли нам уже окончательно перейти на новые форматы растровых изображений?
64.95% Давно пора отправить JPEG на свалку истории63
35.05% Лучше старое, доброе, проверенное34
97 users voted. 23 users abstained.
Tags:
Hubs:
+13
Comments20

Articles