Большой бенчмарк AVIF и JPEG XL показал реальную разницу в весе графики

Война форматов изображений наконец перешла из теоретических баталий в реальные тесты на железе, когда JPEG XL добрался до всех ключевых браузеров. Веб-разработчик и популяризатор стандартов Джейк Арчибальд решил проверить, насколько обещания нового формата соответствуют практике веб-дизайна и продакшена. Чтобы расставить точки над i, он написал открытый скрипт image-codec-bench и запустил масштабное сравнение кодеков на чипе Apple M4 Pro в MacBook Pro 2024 года. Графика тестировалась в практическом разрешении — шириной 1598 пикселей, что имитирует ретина-экраны блога автора при двойной плотности.
В исследовании сошлись актуальные библиотеки сжатия: энкодер avifenc на базе libavif 1.4.2, классический cjxl из сборки libjxl 0.12.0, альтернативный легковесный движок jixel 0.4.2 с коммитом f487299, а также cwebp 1.6.0 для оценки lossless WebP. Качество выравнивали не на глаз, а строгими алгоритмическими метриками. В ход пошли шкала ColorVideoVDP (где 10 баллов по шкале JOD означают полное отсутствие видимых артефактов) и SSIMULACRA2, созданная самими разработчиками JPEG XL, где 50 пунктов соответствуют среднему качеству, 70 — высокому, 80 — очень высокому, а 90 — визуальной идентичности оригиналу.
Результаты тестов по категориям
Цифры оказались холодным душем для тех, кто ожидал безоговорочной победы JPEG XL в повседневном веб-дизайне. Для привычного сжатия с потерями AVIF уверенно удержал лидерство практически во всех сценариях оформления сайтов, баннеров и витрин:
| Сценарий использования | Победитель и детали сравнения |
|---|---|
| Фото с потерями (Lossy) | AVIF побеждает. Файлы JPEG XL крупнее на 15–25% по умолчанию и на 6–20% при предельных усилиях энкодера. |
| Скриншоты и векторная графика | AVIF значительно лучше. JPEG XL выдает вес на 30–90% больше по умолчанию и на 20–70% больше на максимуме. |
| Прозрачность (Alpha-канал) | AVIF впереди. Версии через libjxl тяжелее на 31–44% по умолчанию и на 61–70% на максимуме; jixel кодирует прозрачность без потерь, из-за чего файлы в 2–3 раза больше AVIF. |
| Скорость и память кодирования | AVIF держит лучший баланс. Энкодер jixel работает быстрее и бережнее к памяти, но генерирует ощутимо более тяжелые файлы. |
| Скорость декодирования в браузере | AVIF быстрее в 2–3 раза на среднем качестве. При переходе к очень высокому качеству разрыв сокращается. |
| Прогрессивный рендеринг | Поддерживают оба. JPEG XL работает в Chrome и Firefox (+12% к весу файла), AVIF — пока только в Chrome, но весит меньше и декодируется быстрее. |
| HDR-изображения | AVIF надежнее. JPEG XL умеет работать с gain maps, однако кодирование пока экспериментальное, а браузерные декодеры их не понимают. |
| Транскодирование JPEG | JPEG XL побеждает без конкурентов: уменьшает исходный JPEG на 9–20% вообще без дополнительных потерь качества. |
| Сжатие без потерь (Lossless) | JPEG XL побеждает с отрывом. WebP уступает ему 9–17% по весу, а lossless AVIF для фотографий оказывается тяжелее на 30–120%. |
В реальной сборке интерфейсов и верстке ключевую роль играет выбор самого энкодера. Альтернативный jixel оказался приятным сюрпризом: он создает файлы компактнее официального libjxl почти во всех сценариях, спотыкаясь только на сложной полупрозрачности с мелкими деталями. При этом выкручивать настройки усилий (effort) в libjxl попросту бессмысленно — процесс пожирает память, тянется мучительно долго, а итоговый файл почти не худеет, иногда даже прибавляя пару процентов. Для AVIF и jixel, напротив, поднятие усилий честно окупается оптимизацией килобайтов.
Другой важный нюанс кроется в цветовой субдискретизации. Многие по привычке пережимают AVIF в режим 4:2:0 ради экономии, но тесты показывают, что половинное разрешение цвета почти не уменьшает размер файла, зато ломает тонкие цветовые переходы и мешает набрать высокий балл качества. Для витрин и продуктовых промо предпочтительнее оставлять полновесный режим 4:4:4, жертвуя лишь крупицами скорости кодирования.
Нас в этой расстановке сил подкупила прикладная ясность: эра слепого внедрения новых форматов ради красивой строчки в спецификациях закончилась. Единственная безоговорочная сверхсила JPEG XL прямо сейчас — это архивное сжатие старых каталогов с JPEG без пережатия пикселей и редкие задачи по lossless-графике, которая в живом вебе почти не встречается. В остальном продакшене — от рендеров интерфейсов до лукбуков — базовым выбором для верстки остается AVIF 4:4:4 с высокими настройками усилий, оставляя JPEG XL через компилятор jixel роль запасного плана на случай артефактов.
Экономия трафика на экранах пользователей по-прежнему достигается прагматичным кодеком, а не самым свежим плагином.


