Основные преимущества 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.
Комментарии (24)
Keyten
28.01.2016 00:31+4А ещё есть APNG, WebP и пару других старательно продвигаемых форматов картинок. Интересно было бы сравнение. Впрочем, в WebP же нет анимации?
Давно пора сделать единый формат, поддерживающий основные виды сжатия (выбирая лучший из них в каждом случае), с альфа и анимацией.encyclopedist
28.01.2016 02:04+3Такая попытка когда-то была, называется TIFF. Там можно выбирать из кучи алгоритмов сжатия, разные разрядности и т.д… Проблема со всеми такими «универсальными» форматами в том, что каждое приложение будет поддерживать своё подмножество этого формата, и он перестанет быть совместимым.
Wesha
28.01.2016 03:01-1Давно пора сделать единый формат, поддерживающий основные виды сжатия (выбирая лучший из них в каждом случае), с альфа и анимацией.
joann
28.01.2016 01:34+3MPEG LA announced their HEVC license which covers the essential patents from 23 companies. The first 100,000 «devices» (which includes software implementations) are royalty free, and after that the fee is $0.20 per device up to an annual cap of $25 million
https://en.wikipedia.org/wiki/High_Efficiency_Video_Coding
Нет спасибоkhim
28.01.2016 03:00+3Заметим, что H.264 это не остановило и, в конечном итоге, CISCO согласилась платить 25 миллионов в год (хотя она наверняка и так за свои продукты отстёгивала), так что Firefox получил-таки поддержку H.264.
Но именно в таком порядке: можно хоть обплюсоваться на разных форумах, но ничего не будет пока-то кто-нибудь не согласится играть роль CICSO — и даже в этом случае формат должен обнаружиться для начала на куче веб-сайтов. В соответствующем баге желающих как бы не видно, маньяков, которые поддерживают на своих сайтах BPG через соответствующий JavaScript шим тоже немного, так что и обсуждать нечего.
JPEG2000, JPEG XR — былы тоже очень неплох для своего времени — и где они? Вот и BPG, с огромной вероятностью там же будет.
Если у какого-то формата и есть шанс — так это у WebP (и то немного), всё остальное — увы, без шансов. Со времён написания этой статьи ничего не изменилось, однако.monah_tuk
28.01.2016 05:27+1У HEVC, по сравнению с AVC, значительно более драконовская политика лицензирования.
А вообще, Фабрис очень многое делает just for fun, чего только эумулятор x86 на JS стоит. А про формат BGP у него на сайте чуть ли не с год назад читал. Новость как-то запоздала :) Кстати, у него же на сайте есть ссылка на JS рендерер: webencoder.libbpg.org/show.html
Londoner
28.01.2016 02:44Ну, будем надеяться, что внедрив поддержку этого формата, Firefox, наконец, научится правильно поворачивать фотографии, сделанные смартфонами.
FishDude
28.01.2016 06:05— Плохое сжатие пиксель-арт-подобных картинок (т.е., чего угодно, отличного от фото).
— Очень медленный.sashabeep
28.01.2016 13:19Для пиксель-подобных картинок в начале 0-х я использовал свой алгоритм кодирования на основе таблиц с однопиксельной ячейкой, потом развил до сокращения последовательностей и разжатия через JS. Интернеты тогда были медленные, а экономия, даже на фотографиях была приличная.
L3333437
28.01.2016 09:51+2Видео совершенно не отличается по качеству
Вы бредите? Я один вижу размытие (как на плохом jpg) в bpg и более четкую и насыщенную картинку в mp4?MrShoor
28.01.2016 21:46Нет, не один. bpg действительно отличается в худшую сторону.
Вверху mp4, внизу bpgShannon
28.01.2016 22:01Дело не в bpg, а в выбранном качестве «практически не отличается на глаз» автором эксперимента (возможно в погоне, чтобы файл обязательно весит меньше чем mp4)
Если файл будет весить столько же, сколько mp4, то качество будет лучше чем у mp4, не говоря уже про гифкуMrShoor
28.01.2016 23:34Никто не спорит. Просто то, что для автора «практически не отличается на глаз» может вполне отличаться для другого человека, и в этом ключе правильнее было бы добавить в сравнение bpg с размером сопоставимым размеру mp4. Чтобы читающие могли увидеть, что при этих условиях bpg действительно лучше.
impwx
28.01.2016 13:20Даже если не брать в расчет заметно более низкое качество, на примере мой браузер напрочь зависает на ~8 секунд при открытии страницы.
Shannon
28.01.2016 22:09«Более низкое» качество решается увеличением параметра качества (размер при том же качестве всё равно будет меньше чем mp4, так как здесь bpg использует кодек x265 против x264)
Да и в любом случае это качество намного лучше качества 33 метровой гифки
Браузер подвис потому что нет нативной поддержки браузером, и декодирование производится блокирующим однопоточным js-кодом с выводом результата на канвасimpwx
28.01.2016 22:39Тогда формат более целесообразно сравнивать с MP4, а не с гифками — и все равно, фундаментальные ограничения налицо: звук не планируется даже в перспективе, модель лицензирования подозрительная, текущая реализация неюзабельна, а нормальной в браузерах скорее всего никогда не будет. При таких исходных данных проект мог бы взлететь только за счет мегакорпорации типа Google или Facebook, в масштабах которой экономия трафика могла бы оправдать затраты на внедрение, но с этой точки зрения у проекта тоже есть фатальный недостаток — not invented here.
7313
28.01.2016 15:35Судя по страничке это обычный проект «для фана на выходных». Т.е. он, как и 99% подобных проектов, в любой момент может неожиданно умереть когда автор к нему охладеет.
khim
29.01.2016 01:06+2Вы на странику PNG давно смотрели? И ничего — формат поддерживается чуть ли не каждым утюгом. Ну там было «очень надо»: припёрся злой Unisys и, как слон в посудной лавке, утопил кучу проектов (скажем очень популярный в свой время XV). Поскольку развите GIFа в результате этой разрушительной деятельности было остановлено на версии 89го года и он так и не получил полутонов и альфа-канала (только «прозрачный цвет»), то людям пришлось-таки поддерживать PNG. А что может продвинуть BGP?
Regis
Firefox сейчас ориентируется на исключительно полностью открытые форматы. Так что ждать поддержки этого формата от Лисы — бесмыссленно. Да и от Хрома не стоит.
sashabeep
Cтарожилы помнят, например, про 264, которого «никогда не будет в firefox»
Regis
Что, кто-то уже вызвался оплачивать все лицензии для BPG?