
Ричард Хьюс выпустил первую стабильную версию фреймворка colord, обеспечивающего централизованное управление цветопередачей в системе.
Дистрибутивы Linux с GNOME в качестве основной рабочей среды поставляются с colord уже два года, равно как и некоторые дистрибутивы с KDE (например, Kubuntu). Поэтому выпуск версии 1.0 — по сути, констатация давно свершившегося факта: управление цветом в Linux общедоступно.
Проект был запущен в конце 2010 года, через год после начала работы над GNOME Color Manager. Исходная задача colord — предоставить простой системный инструмент для привязывания цветовых профилей к устройствам. Позднее во фреймворк были перенесены функции генерирования цветовых профилей.
Colord активно использует тэги `dict’ в ICCv4 для записи метаданных о профилях и устройствах, чтобы упростить и автоматизировать подбор профиля под задачу (например, считать параметры печати вроде типа бумаги и выбрать нужный профиль). Эти метаданные используют подмножество тэгов, определённое спецификацией, разработанной сообществом OpenICC, а также некоторые специфичные для colord тэги метаданных.
Работа над подсистемами Linux
Уже на раннем этапе разработки возникла необходимость обеспечить применение colord во всей подсистеме печати Linux, включая CUPS, Ghostscript, Foomatic и GTK+. В настоящее время все эти проекты официально поддерживают colord.
Что касается пользовательских приложений, фреймворк поддерживается в dispcalGUI (калибровка и профилирование мониторов) и в darktable (фоторедактор). Кроме того, фреймворк дополнительно устанавливает атомы _ICC_PROFILE в X.org для других приложений (GIMP, Inkscape, digiKam, Rawstudio и пр.).
Буквально на днях Ричард Хьюс добавил поддержку colord и в Weston, новый графический сервер на основе протокола Wayland. Общая реализация управления цветом в Weston также написана им, и в ней предусмотрено два механизма назначения ICC-профилей: запись в конфигурационный файл и применение подключаемого модуля управления цветом. Colord стал первым таким модулем. Вторым, по всей видимости, будет Oyranos Кая-Уве Бермана.
Таким образом разработчики рабочих окружений при переходе с X.org на Weston/Wayland получают возможность реализовывать управление цветом так, как им удобнее: через публичный API в Weston, либо через фреймворки (colord, Oyranos). Основная масса пользователей, впрочем, работает с Unity, GNOME и KDE, где о них уже позаботились.
Основная цель работы Ричарда над Weston — возможность реализовать аппаратно-ускоренное полноэкранное управление цветом:
Отдельным приложениям не придётся полностью реализовывать управление цветом. Поскольку речь идёт о Wayland. а не об X.org, мы можем дать приложениям высокоуровневый API, через который они смогут «сказать» серверу: «использовать управление цветом для этого виджета не надо», или «у этого виджета на входе то же цветовое пространство, что и у камеры Nikon D60». Сделав управление цветом частью протокола, мы можем избежать грязных хаков, которые предлагалось добавить в X11.
Впрочем, не стоит ждать, что Weston и Wayland придут на смену X.org уже завтра. Хотя тулкиты вроде GTK+ давно поддерживают новый протокол, лишь около половины приложений GNOME могут работать с новым сервером. Сейчас Ричард занимается портированием gnome-settings-daemon и gnome-control-center и считает, что полностью GNOME сможет работать в Weston/Wayland не раньше следующего года.
Драйверы для колориметров и спектрофотометров
Перенося функции генерирования профилей из GNOME Color Manager в colord, Ричард столкнулся с необходимостью упростить работу с сенсорами вроде Colorvision Spyder, X-Rite Colormunki и пр. Изначально проект использовал исключительно инструментарий ArgyllCMS, который прекрасно справляется с задачей, но вынуждает применять, мягко говоря, нетипичные интерфейсные решения из-за необходимости читать вывод консольных утилит.
Поэтому в дополнение к имеющемуся решению Ричард написал для colord собственные драйверы, поддерживающие следующие устройства:
- Pantone Huey;
- X-Rite ColorMunki;
- ColorHug.
Последний из них — колориметр с открытой спецификацией, разработанный, собираемый и продаваемый самим Ричардом.
Что нового в версии 1.0
Помимо исправлений и улучшений стоит отметить появление публичного API для преобразований растровых данных между различными комбинациями RGB и CMYK. Для выполнения преобразований используется LittleCMS v2.
Ричард собирается использовать этот API для реализации цветоуправляемого предпросмотра печати в GTK+. API очень прост и (во всяком случае, пока) не подразумевает использование более продвинутых технологий вроде связующих (device-link) профилей.
Что дальше
По словам Ричарда, выпуск colord 1.0.0 знаменует собой окончание работы на ключевыми функциями, заложенными в идею проекта. В планах на ближайшее будущее:
- улучшенная утилита colormgr;
- более эффективный и быстрый ассистент калибровки и профилирования;
- больше собственных драйверов (встроенная поддержка i1 Display на очереди);
- библиотека, которая будет использоваться ArgyllCMS на Linux вместо ucmm.
Ничего скачивать и компилировать не нужно: в ближайшие дни обновление появится в пакетных репозиториях вашего дистрибутива.
Отлично, отлично.
Нормальный Save For Web для darktable и GIMP, а лучше вменяемый редактор с кривыми для работы в 16-битном Lab с этой функцией — я и продам свой Macintosh. Ну, один из них. :)