Декодер изображений PNG из стандартной библиотеки языка программирования Wuffs работает в 1.22–2.75 раза быстрее, чем libpng (широко используемая реализация PNG декодера на C с открытым исходным кодом), C-библиотеки libspng, lodepng и stb_image, а также самые популярные библиотеки для работы с PNG на Go и Rust.Статья рассказывает о том, как именно достигается такая производительность. Читать далее
AV1 становится всё более значимым видеоформатом, которому требуется безопасный и производительный декодер. Исходя из этой идеи, мы в тандеме с командой из Immutant создали rav1d, портировав на Rust написанный на С декодер dav1d. Перед вами первая из двух статей, посвящённых решению этой задачи. — Джош Аас, глава проекта Prossimo организации ISRG Читать дальше →
Самый миниатюрный PNG в мире весит 67 байт и представляет собой один чёрный пиксель. Выше вы видите его в 200-кратном увеличении. Красота, не так ли? Состоит этот файл из четырёх частей: Сигнатура PNG, одинаковая во всех файлах этого формата: 8 байт. Метаданные изображения, включая его…
Работая над багом под названием "разная цветокоррекция у видео и его скриншота", я наткнулся на интересный текст, простыми словами описывающий то, что происходит с цветом в PNG. Ниже представлен перевод приложения к спецификации PNG, которое может и устарело, но всё равно полезно для общего развития. Читать далее