Преобразование коррекции объектива Adobe для LensFun / DarkTable

Я пытаюсь импортировать профили объективов Adobe в Lensfun (для использования с darktable). Я использую darktable 2:2.6.2-1 на Arch Linux, установленном через pacman, что привело к падению LensFun 0.3.2-7. (Я не использую пакеты darktable-git или Lensfun-git). Таким образом, скрипт LensFun-Convert-lcp не входит в мою установку. Я отдельно клонировал Lensfun из github, и запуск его с профилями конвертера Adobe DNG успешно генерирует _lcps.xml. Однако в корневом узле этого файла я вижу

<lensdatabase version="2">

Я запустил Lensfun-update-data, и база данных в файлах /var/lib/lensfun-updates/version_1/*.xml

<lensdatabase version="1">

Глядя на некоторые атрибуты, схемы разные. например, искажение имеет k1, k2, k3 в одном и a, b, c в другом.

Мне было интересно, как я могу загрузить эти профили в darktable.

===========================================

Обновлять

Итак, вот что я пробовал до сих пор:

  1. Удалены darktable и Lensfun. Установил Lensfun-git. Установил темный стол. Теперь модуля для коррекции объектива вообще нет :( Lensfun.get_database_version() равен 2.
  2. Удалены darktable и Lensfun. Установил Lensfun-git и darktable-git. Использует Lensfun db v2, и все подхватывается. Пользовательский интерфейс Darktable выглядит немного нелепо на мониторе 4k. Lensfun.get_database_version() равен 2.
  3. Установка darktable и Lensfun (ни git) заставляет все работать, но файл lcps.xml, преобразованный Adobe, не подхватывается. Lensfun.get_database_version() равен 1.

Есть ли способ заставить darktable (не darktable-git) использовать Lensfun-git? Или для Lensfun подобрать базы данных v2, когда Lensfun.get_database_version() возвращает 1?

Обновление 2

В сценарии 1 (lensfun-git + darktable non-git) запуск darktable из командной строки дает мне:

[iop_load_module] failed to open operation `lens': liblensfun.so.1: cannot open shared object file: No such file or directory

Обновление 3

Я создал симлинк отсутствующего файла на liblensfun.so.2, и darktable все нормально подхватил. Шаги в комментарии ниже.

Ответы (2)

Для профилей Adobe вам потребуется БД версии 2. Различия, однако, невелики: Помимо профилей Adobe, тег <real-focal-length>стал атрибутом <distortion>.

Darktable не будет заботиться о том, какую версию БД вы используете. В частности, профили Adobe будут работать с любой версией Darktable, так как он поддерживает API текущего Lensfun.

Я обновил вопрос тем, что вижу. darktable-git с Lensfun-git, кажется, собирает базы данных v2, но больше ничего не работает.

Итак, что работает для меня:

  1. yaourt -S Lensfun-git -> удаляет Lensfun (не git в процессе).
  2. компакт-диск / библиотека
  3. sudo ln -s liblensfun.so.2 liblensfun.so.1
  4. Запустите темную таблицу.

Я получаю сообщение об отказе в соединении при запуске LensFun-Update-Data, но видя, что обновления происходят нечасто, и что все мои объективы находятся в профилях Adobe, я доволен этим.