PNG был обновлён впервые за 22 года — новая спецификация поддерживает HDR и анимацию

Спрос на субтитры в HDR-контенте привёл к этому обновлению.

Спрос на субтитры в HDR-контенте привёл к этому обновлению.
2029 Заголовок: Самая крупная в мире утечка данных, вызванная эксплойтом нулевого дня в популярном рендерере PNG 3.0
Сообщается, что вредоносный код был встроен в анимированное изображение, на котором злоумышленник неоднократно щёлкает левым яичком.
Это было связано с тем, что они добавили в него «шорты» и списки друзей.
Ой
Бьюсь об заклад, это был один щелчок, и он запускал это по кругу.
Но это обратно совместимо с устаревшей версией, которую нельзя обновить?
Да, это была моя первая мысль. Сколько немного устаревших программ, которые больше не обновляются, не смогут открыть новую версию? Надеюсь, она сделана так, что просто переключается на старый формат и игнорирует дополнительную информацию, чтобы, по крайней мере, можно было загрузить файл.
Популярные приложения для редактирования фото и видео, такие как Photoshop, DaVinci Resolve и Avid Media Composer, уже поддерживают его, наряду с Chrome, Safari и Firefox. iOS и macOS от Apple также совместимы с новым стандартом файла.
Это всё, что упоминается в статье. Надеюсь, вы правы насчёт обратной совместимости.
Я имею в виду, что именно так и работают анимированные .gif-файлы. Если каким-то образом вам удастся загрузить его в просмотрщик, который не поддерживает функцию анимации, он по крайней мере добросовестно отобразит первый кадр.
Как, черт возьми, вам удалось бы сделать это в наше время, я не понимаю, но были довольно длинные годы в начале 90-х, когда с таким можно было столкнуться.
Говоря об анимации, ваш браузер, вероятно, уже поддерживает APNG. APNG существует уже 21 год и имеет неплохое распространение. Но теперь он официально входит в клуб.
Тем не менее, APNG-файлы занимают много места, и это достаточно старое решение для анимированной графики с альфа-каналом. Не рассчитывайте, что все вдруг начнут делать APNG. Существует причина, по которой люди держались от него подальше.
Некоторые вещи — это просто оформление тропы, проложенной коровой: анимированные PNG существуют уже 20 лет, и, например, Firefox поддерживает их с марта 2007 года.
Формат PNG состоит из блоков (чанков), каждый из которых имеет определённую роль, и предусматривает возможность использования новых "стандартизированных" блоков наряду с пользовательскими, которые поддерживались ранее. Вероятно, PNG, созданный с помощью нового программного обеспечения, которое не использует новые функции или использует только дополнительные функции, будет в той или иной мере оставаться читаемым более старым программным обеспечением.
Вероятно, это означает, что появятся новые PNG-файлы, которые старое программное обеспечение не сможет открыть.
Это имеет смысл, не так ли? Есть ли способ обойти это при добавлении новых функций в формат файла?
Альтернатива — создать другой формат файла для ясности, но это не совсем то, что вы хотите делать.
Да, именно поэтому это так здорово
Я скажу, если смогу найти новые файлы для тестирования.
Даже JPEG не всегда обратно совместим. Я загрузил изображение в своё программное обеспечение, которое использует внутренне какую-то старую библиотеку, и там поменялись местами синий и красный каналы.
Я, вероятно, получу множество минусов за использование запретного слова, но я попросил ИИ сделать краткое изложение с ссылками о прямой и обратной совместимости новой версии PNG:
!
Исходя из последних результатов поиска, новая спецификация PNG (Третье издание) и её эталонная библиотека (libpng) сохраняют сильную обратную совместимость, одновременно вводя современные функции. Вот подробный анализ совместимости:
png_struct
/png_info
с версии 1.5.0) гарантирует, что старые приложения, использующие функции png_get_*
/png_set_*
, остаются совместимыми. Прямой доступ к структурам, устаревший с версии 1.4.x, может перестать работать в libpng 2.0.x (только C99). png_image_free()
) были исправлены в libpng 1.6.37 и новее, что делает новую библиотеку более безопасной при декодировании старых файлов. IHDR
или IDAT
, остались без изменений. mDCv
. Старые библиотеки игнорируют HDR-данные, переходя на SDR, что может привести к искажению цветов. eXIf
игнорируются устаревшими декодерами, что приводит к потере таких метаданных, как GPS или информация об авторских правах. Сценарий | Совместимость | Ключевые аспекты |
---|---|---|
Старый PNG → Новый lib | ✅ Отлично | Устаревшие файлы работают без сбоев; безопасность улучшена. |
Новый PNG → Старый lib | ⚠️ Частично | Базовый рендеринг работает, но HDR/APNG/EXIF игнорируются. Есть риски безопасности. |
Новые функции | 🔧 Условно | Требуются обновлённые приложения (например, Photoshop, браузеры) и поддержка ОС. |
Для разработчиков: используйте png_get_valid(png_ptr, info_ptr, PNG_INFO_mDCv)
, чтобы проверить поддержку HDR и обеспечить альтернативные варианты.
!<
минусующие: это неправильно?
Анимированный PNG пытается стать расширением спецификации PNG более 20 лет.
Да, это был один из способов иметь анимированный аватар на форумах BB.
В последнее время я видел их использование в виде анимированных стикеров для чата (например, в Signal).
На самом деле существует лишь несколько приложений, которые это поддерживают, что здорово, но многие путаются, когда видят файл APNG с кадрами.
Вероятно, всё ещё поддерживается больше, чем Webp и Webm
Я бы поклялся, что анимированные PNG были вещью во времена Macromedia Fireworks. Действительно старюсь с такой ссылкой.
Существовало два разных расширения для анимированных PNG: MNG и APNG. Ни одно из них так и не стало популярным. Полагаю, теперь надеются добиться большего, интегрируя это непосредственно в основной стандарт.
APNG — это то, что они используют в версии 3, так что всё, что многим библиотекам нужно сделать, это обновить этот код для HDR.
наверняка это просто, правда?
Мне не хватает тех времён, когда все крутые сайты использовали Flash. Думаю, Macromedia его по какой-то причине уничтожила. Вероятно, из-за проблем с безопасностью, да и тогда он довольно сильно нагружал пропускную способность, но с его помощью создавались динамичные веб-дизайны.
Flash имел множество проблем. Веб-разработчики праздновали его смерть.
Текущая ситуация с мегабайтами JavaScript довольно плоха, но в то время все еще работало немало пользователей с dial-up, а мобильный веб только начинал развиваться — на EDGE и едва 3G. Загрузка занимала минуты.
Кроме того, Стив Джобс был против Flash, и именно это, по моему мнению, в конечном итоге привело к его исчезновению.
Flash был катастрофой с точки зрения безопасности, не считая уязвимостей в безопасности. Он был просто разработан без каких-либо функций безопасности. Также он был ужасно неэффективен в своей основной задаче, которой предполагалась векторная анимация. Он заполнил нишу в то время, когда браузеры и стандарты еще не были столь продвинутыми.
Со временем проблемы Flash так и не были решены, но раздутость программного обеспечения продолжала расти. Тем временем HTML получил лучшие спецификации, JavaScript значительно улучшился, особенно когда все стали придерживаться примерно одного стандарта (спасибо Microsoft, что наконец сдались…), и интерпретатор Flash стал очень избыточен по сравнению с самим браузером.
Некоторое время редакторы Flash могли экспортировать в HTML5, и вы получали примерно тот же результат, но с гораздо меньшими требованиями к ресурсам, поэтому естественно мало было стимулов держать Flash Player.
Я не уверен, можно ли "убийство Flash" приписать их автору или потере интереса.
Также стоит отметить, что существуют альтернативные Flash-плееры для запуска старых SWF-файлов, и некоторые сайты используют их совместно с простой конвертацией в видео для Flash-анимаций, которые не были динамичными.
Вздыхая, я скучаю по Macromedia. В любом случае, я тоже помню, что такое существовало. Полагаю, это никогда не было официальной частью спецификации.
Я скучаю по Fireworks. Для меня это было лучшее. Я никогда не мог справиться с Photoshop или его альтернативами.
С тех пор я остановился на Krita, Aseprite и Inkscape. Но я всё равно скучаю по рабочему процессу, к которому привык с Fireworks.
Здорово, что Папуа — Новая Гвинея всё ещё получает обновления /s
Неужели это убийца GIF? Если PNG может содержать примерно такое же количество кадров и ограничения по времени, но с немного лучшим качеством изображения, возможно, именно так.
Прощай, GIF, привет, PNG?
Это произносится как "пэн-джи" или "пинг"?
jng
PNG, как "PNG"
gif почти был заменён mp4 в эпоху раннего imgur
Джиксэл поезд чух-чух
PNG с поддержкой HDR, которые не выглядят отвратительно на SDR-дисплеях? Запишите меня в список!
Теперь, если кто-нибудь не возражает, объясните, пожалуйста: PNG против JXL?
JXL плохо поддерживается, но он предлагает без потерь кодирование более гибким и гораздо более эффективным способом, чем PNG.
В принципе, JXL теоретически может заменить PNG, JPG, а также EXR.
Интересно, я скачал обои GNOME к месяцу гордости, чтобы посмотреть, как они выглядят, и файлы оказались в формате JXL. Раньше никогда не встречал их в реальной жизни.
ПНГ ПНГ!
У меня всё ещё нет HDR-дисплея. Надеюсь, что в ближайшем будущем какой-нибудь VR-шлем его поддержит.
Их следовало бы оставить это умереть, потому что почти всё остальное в наши дни в каком-то смысле лучше:
https://en.wikipedia.org/wiki/PNG#Comparison_with_other_file_formats
Что ты говоришь, брат, это по-прежнему мой основной вариант для сохранения прозрачности!, Я точно не в курсе всех деталей обновления, но мне приятно, что ему уделяют внимание
Я абсолютно ненавижу WebP. Худший формат из всех.
Что не так с форматом webp? Он поддерживает анимацию, сжатие без потерь, сжатие с потерями и прозрачность. Анимация в webp имеет меньший размер, чем в gif.
Может быть, я просто новичок, но мне всё ещё кажется, что PNG — это тот формат, который позволяет обеспечить без потерь при хранении изображений.
Все остальные форматы из этого списка, которые считаются "лучше", поддерживают или могут использовать сжатие с потерями. Я не уверен, как заставить приложения использовать сжатие без потерь, поэтому для меня все эти форматы с возможностью сжатия с потерями — это скорее минус.
Вы прочитали свой собственный источник перед тем, как публиковать этот комментарий?
Да? Ты сделал?
Пример:
AVIF
AVIF — это формат изображений, разработанный Альянсом за Открытые Медиа (Alliance for Open Media). AVIF был создан этой организацией, чтобы компенсировать недостатки других кодеков изображений, таких как PNG, GIF и WebP.
AVIF обычно имеет меньший размер, чем WebP и PNG. AVIF поддерживает анимацию, тогда как PNG — нет.