BPG (Better Portable Graphics) — новый графический формат, цель которого заменить JPEG там, где качество или размер файла имеют значение. Именно так описывает BPG создатель этого формата — гениальный программист Фабрис Беллар, автор таких программ как LZEXE, FFmpeg, QEMU и др.

Основные преимущества BPG
  • Высокая степень сжатия. Файлы гораздо меньше, чем JPEG при таком же качестве.
  • Поддержка большинством веб-браузеров через маленький Javascript-декодер (56 КБ в gzip).
  • Основан на подмножестве открытого стандарта видеосжатия HEVC.
  • Поддержка тех же форматов цветности, что и в JPEG (grayscale, YCbCr 4:2:0, 4:2:2, 4:4:4) для снижения потерь во время конвертации. Альфа-канал поддерживается. Цветовые пространства RGB, YCgCo и CMYK тоже поддерживаются.
  • Нативная поддержка от 8 до 14 бит на канал для расширения динамического диапазона.
  • Возможно сжатие без потерь.
  • Различные метаданные (такие как EXIF, профили ICC, XMP) можно внедрить в файл.
  • Поддержка анимации.

Именно последний пункт даёт возможность предположить, что BPG заменит в интернете анимированный GIF. В самом деле, он лучше по всем параметрам.

Следующий архив содержит исходный код утилит командной строки bpgenc, bpgdec и bpgview (под Linux) и соответствующей библиотеки libbpg. Там же исходный код Javascript-декодера.

libbpg-0.9.6.tar.gz

Бинарник под Windows (64 бит): bpg-0.9.6-win64.zip

Неофициальное зеркало Github.

При сжатии анимаций BPG показывает MP4-качество, при этом файлы имеют меньший размер, чем оригинальные файлы MP4.

Вот пример видеофрагмента mp4 и bpg на 25 fps.

mp4, 927 КБ
bpg, 518 КБ (на веб-странице)

Видео практически не отличается по качеству. GIF-анимация такого же качества будет иметь размер 33,8 МБ.

Очевидно, что GIF-анимация устарела. Даже Imgur, который славился хостингом GIF-анимаций, использует конвертер GIFV для конвертации GIF в нормальное видео WebM или MP4.

На форуме Bugzilla десятки участников проголосовали за поддержку BPG в браузере Firefox, но разработчики пока воздерживаются от этого, потому что стандарт HEVC не совсем патентно чист.

Подробнее сравнение WebP и BPG см. в статьях на Хабре: 1, 2.