The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Выпуск библиотеки декодирования изображений SAIL 0.9.0-pre12

27.03.2021 09:28

Опубликовано несколько значительных обновлений библиотеки декодирования изображений SAIL, предоставляющей переписанный на С ребрендинг кодеков из давно не поддерживаемой программы просмотра изображений KSquirrel, но с наличием высокоуровневого абстрактного API и многочисленными улучшениями. Библиотека готова для использования, но всё ещё непрерывно улучшается. Бинарная и API совместимость пока не гарантируется. Демонстрация.

Особенности SAIL

  • Быстрая и простая в использовании библиотека;
  • Написана на C11 c биндингами к C++17;
  • Поддержка форматов изображений реализована динамически загружаемыми кодеками, которые можно удалять и добавлять независимо от клиентской части;
  • Чтение из файла, памяти, собственных источников;
  • Поддержка многостраничных и анимированных изображений;
  • Поддержка популярных форматов всё же делается с помощью соответствующих библиотек libjpeg, libpng, и т.д.
  • Кросс-платформенность: Linux, Windows, macOS;
  • "Прощупывание" (probing) - получение информации об изображении без декодирования пикселей;
  • Человеческие названия сущностей (никаких FIMULTIBITMAP);
  • Чтение и запись ICC профилей;
  • Отдаёт RGBA или BGRA пиксели;
  • Отдаёт исходные пиксели (например, CMYK) если поддерживаются кодеком;

Список изменений с момента прошлой публикации:

  • Значительно улучшено и упрощено API. Было:
    
       struct sail_context *context;
       SAIL_TRY(sail_init(&context));
    
       struct sail_image *image;
       unsigned char *image_pixels;
    
       SAIL_TRY(sail_read(path, context, &image, (void **)&image_pixels));
    
       ...
    
       free(image_pixels);
       sail_destroy_image(image);
    

    Стало:

    
       struct sail_image *image;
       SAIL_TRY(sail_read_file(path, &image);
    
       ...
    
       sail_destroy_image(image);
    
  • Добавлены форматы BMP, GIF, TIFF;
  • Доступность в VCPKG на всех платформах кроме UWP;
  • Опубликованы сравнительные тесты производительности;
  • Биндинг C++ переведён на C++17;
  • Функции выделения памяти собраны в одном месте, чтобы их было легко заменить на свои, но на данный момент это можно сделать только перекомпиляцией;
  • Пользователи теперь могут использовать CMake find_package() для подключения SAIL;
  • Добавлена возможность статической компиляции (SAIL_STATIC=ON);
  • Добавлена возможность компиляции всех кодеков в одну общую библиотеку (SAIL_COMBINE_CODECS=ON);
  • Начата работа по добавлению тестов на основе µnit;

Рекомендуемый метод установки

  • Linux - vcpkg, также доступны Debian rules
  • Windows - vcpkg
  • macOS - brew


  1. Главная ссылка к новости (https://github.com/smoked-herr...)
  2. OpenNews: Доступна библиотека декодирования изображений SAIL
  3. OpenNews: Facebook опубликовал Spectrum 1.0.0, библиотеку для работы с изображениями
  4. OpenNews: Компания Intel опубликовала библиотеку для шумоподавления и фильтрации изображений
  5. OpenNews: Релиз фреймворка для обработки изображений G'MIC 2.2
  6. OpenNews: Google развивает новый формат изображений WebP 2
Автор новости: Хвосторог Обыкновенный
Тип: Программы
Короткая ссылка: https://opennet.ru/54842-sail
Ключевые слова: sail, image
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (20) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 11:54, 27/03/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >SAIL, предоставляющей переписанный на С ребрендинг кодеков из давно не поддерживаемой программы просмотра изображений KSquirrel

    Сначала подумал что они его с ассемблера переписали переписали :)

     
  • 1.2, adolfus (ok), 12:54, 27/03/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ну и как ей открыть тифф с дюжиной каналов на пиксел (spp=12)?
     
     
  • 2.3, Аноним (3), 14:03, 27/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А сами данные как закодированы? Jpeg?
     

  • 1.4, Иваня (?), 15:17, 27/03/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Чем оно лучше ImageMagick?
     
     
  • 2.5, Аноним (5), 18:03, 27/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    У sail лицензия MIT
     
  • 2.6, data man (ok), 18:51, 27/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Вопрос из категории "чем тёплое лучше мягкого?".
     
     
  • 3.12, Аноним (12), 01:54, 28/03/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вопрос из категории сравните A с Б и ты либо можешь или генеришь спам
    Ты что выбрал?
     
     
  • 4.17, data man (ok), 12:58, 28/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Кто-то прогуливал "Основы информатики", когда изучали «спам»?
     
  • 2.13, Аноним (-), 03:17, 28/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну хотя-бы тем что HG не используют, как те позорнки...

    Извините, если у меня трабл даже с тем чтобы либу склонить, юзать ее в своем софте я и подавно не буду.

     
     
  • 3.18, Аноним (18), 12:39, 29/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, если даже это проблемы вызывает, та вам - в MacOS!
     
     
  • 4.19, Аноним (-), 17:15, 29/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Это еще зачем? Скорее юзерам HG - в маздайку. В линухе не любить git как-то криво, в нем линух разрабатывается, однако.
     

  • 1.7, Аноним (7), 21:37, 27/03/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Чем это лучше, чем OpenCV?
     
     
  • 2.8, Аноним (8), 22:28, 27/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Тем, что не целый огромный завод.
     
  • 2.9, Аноним (3), 22:58, 27/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Opencv - это библиотека компьютерного зрения, это совершенно другая область.

    Сравнивать нужно с freeimage или devil.

     
     
  • 3.15, Аноним (-), 04:29, 28/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    С libsdl_image нормальное сравнение вроде. Тот примерно о том же.
     
     
  • 4.16, Аноним (3), 09:45, 28/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    С libsdl-image в новости есть бенчмарк, там он значительно медленнее.
     
     
  • 5.20, Аноним (-), 17:15, 29/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Я про общую идею либы и фичи.
     
  • 2.14, Аноним (-), 04:28, 28/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Чем это лучше, чем OpenCV?

    Сравнили легковушку с товарняком...

     

  • 1.10, Михрютка (ok), 23:52, 27/03/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >>>библиотеки, предоставляющей переписанный на С ребрендинг кодеков

    i'm calling the grammar gestapo

     
     
  • 2.11, Аноним (11), 00:25, 28/03/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Некий функционал, который делает ребрендинг кодеков
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2021 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру