Доступна библиотека libjpeg-turbo 3.0

Автор Сообщение
news_bot ®

Стаж: 6 лет 8 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
04-Июл-2023 10:56

Спустя пять лет с момента формирования ветки 2.x представлен релиз libjpeg-turbo 3.0.0, высокопроизводительной библиотеки для кодирования и декодирования изображений в формате JPEG. Libjpeg-turbo представляет собой совместимый на уровне API/ABI форк классической библиотеки libjpeg, нацеленный на обеспечение максимальной скорости кодирования и декодирования. Кроме стандартного libjpeg API библиотека предоставляет собственный TurboJPEG API и ряд расширений с моделями представления цвета, дающих возможность сжимать изображения в 32-разрядные пиксельные буферы (RGBX, XBGR) или декодировать из них. Код распространяется под тремя BSD-подобными лицензиями IJG, модифицированной BSD и zlib, бинарные сборки подготовлены для Linux (rpm, deb), macOS и Windows.
По сравнению с libjpeg библиотека libjpeg-turbo позволяет добиться ускорения операций кодирования и декодирования JPEG в 2-4 раза, благодаря использованию инструкций SIMD (MMX, SSE2, NEON, AltiVec VMX) на архитектурах x86, x86-64, PowerPC и ARM. На других архитектурах ускорение не столь значительное, но за счёт применения оптимизированных функций кодирования Хаффмана библиотека всё равно заметно быстрее libjpeg и близка по своим показателям к высококачественным проприетарным кодекам JPEG. Отдельно развивается mozjpeg, форк libjpeg-turbo, который движется в сторону оптимизации размера результирующих изображений.
Основные новшества:
  • Добавлена поддержка цветовой субдискретизации 4:1:1, позволяющей без потери качества преобразовывать, обрезать и поворачивать JPEG-изображения с субдискретизацией 4:1:1, а также распаковывать их и переводить в цветовую модель YUV.
  • Значительно ускорены вычисления оптимальных таблиц Хаффмана. Для мелких изображений (256x256) изменение позволило до двух раз сократить время сжатия.
  • Добавлена возможность применения арифметического энтропийного кодирования для JPEG-изображений с 12-битным представлением цвета на канал.
  • С целью устранения имевшихся ограничений и повышения расширяемости значительно переработан API TurboJPEG. Например, все Си-функции теперь снабжены префиксом "tj3". Многие флаги и режимы преобразованы из аргументов функций в общие параметры API.
  • В API libjpeg и TurboJPEG добавлена поддержка изображений с 12 и 16 битами цветности на канал в режимах с потерей и без потери качества.
  • Добавлен режим работы с JPEG-файлами без потери качества, который доступен для изображений с 8, 12 и 16 битами цветности на канал. Добавлена новая функция jpeg_enable_lossless() и опция командной строки "-lossless".
  • Удалены устаревшие поля, конструкторы и методы в TurboJPEG Java API.
В дальнейшем автор libjpeg-turbo намерен ограничить работу над проектом и выпускать только обновления с исправлениями ошибок. Разработка новой ветки 3.1 не начнётся пока не удастся получить финансирование работы над проектом. Сейчас получаемых для libjpeg-turbo средств хватает на 8-10 часов работы в месяц и в проекте наблюдается перерасход - при финальной стадии стабилизации ветки 3.0 ресурсы уже потрачены наперёд до сентября 2024 года. До получения финансирования работа над реализацией и рассмотрением новых возможностей для libjpeg-turbo будет приостановлена, а техническая поддержка выпусков будет ограничена, как минимум в течение следующих 15 месяцев. Основной доход автор libjpeg-turbo получает от других своих проектов - VirtualGL и TurboVNC, которым он намерен уделить первичное внимание, чтобы не повторить негативный опыт разработки ветки libjpeg-turbo 2.0, который привёл к тому, что из-за отсутствия контроля над трудозатратами разработчик был вынужден влезть в долги.
===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_libjpegturbo, #_jpeg
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 01-Ноя 08:39
Часовой пояс: UTC + 5