RawDigger 0.9.20 RC4

Господа фотографы, прежде всего фовеонщики!

Выпущен очередной релиз кандидат RawDigger 0.9.20:

Основное изменение: поддержаны (в LibRaw) уменьшенные варианты RAW камер Sigma DPx Merrill и SD1. Для "среднего" размера, который с точки зрения Сигмы ~3300x2200 показывается его истинный размер (4800x1600), при этом, как и для других форматов с "неквадратными пикселями", RGB-рендеринг выключен.

Помимо этого, исправлена ошибка в разборе выдачи exiftool.

Прочие изменения - это на самом деле изменения в LibRaw:

  • Поддержаны DNG без тега Compression (считаются uncompressed)
  • Поддержаны новые камеры: Panasonic GM1, Sony A7 и A7R (хотя в списке About - Supported Cameras их пока нет, но к релизу будут)

LibRaw 0.16 Alpha2

Тем временем, зарелизилась LibRaw 0.16 Alpha2.

Основные изменения касаются Фовеонов:

  • LibRaw теперь знает размер черной рамки на всех фовеоновских камерах.
  • Для SD1 и всех Merrill-ов есть приемлемый цветовой профиль.
  • Для DPxx (pre-Merrill) цветовой профиль весьма приблизительный.
  • Исправлен memory leak в используемой библиотеке x3f-tools.
Но и для остальных камер произошли заметные изменения:

RawDigger 0.9.20 (RC3)

Граждане фотографы-сигмоводы,

пришло время потестировать очередную вариацию на тему работы с Foveon (других изменений нет):

Изменения:

  • Появился RGB-рендеринг. Достаточно приличный для камер SD1 и DP (и Merrill и нет) и весьма условный для старых камер (SD9-SD15 и Polaroid x530). Для старых камер, собственно, используется профиль от DP-не-Merrill, потому что никаких других данных нету.

    Результаты RGB-рендеринга можно экспортировать, естественно.

  • Появилось знание о координатах черной рамки у всех камер.
  • Для камер на "Merrill-сенсоре" (SD1, DPn-Merrill) уровень черного считается автоматически.

Про Mac OS X и совместимость (и ленивый линкер)

По случаю выхода XCode5 взялся я проверять, а что у этой штуки с backward compatibility, не сломалось ли чего, будет ли работать на Mac OS 10.5, к примеру...

И, надо сказать, результаты меня расстроили (помимо необъяснимой проблемы с VMWare

Для начала я наткнулся на широко известную проблему с ___bzero, на которую все кто мог уже наступили:

dyld: lazy symbol binding failed: Symbol not found: ___bzero
  Referenced from: ....
  Expected in: /usr/lib/libSystem.B.dylib

Лечение нашлось быстро: -mmacosx-version-min=10.5 эту проблему лечит.

Дальше стало хуже:

posix_memalign(), если попросить у нее мегабайтиков 100 (меньше не пробовал), на 10.5 не справляется. Причем, сайт developer.apple.com полагает, что эта функция появилась только в 10.6. Удивительное рядом - она вызывается, правда результат ее вызова неудовлетворительный (в коде поведение одинаковое что при ейной ошибке, что при исполнении без ошибок но и отсутствии аллокации, в детали не вдавался).

Сделал K (меньше N) экспериментов, убедился что на 10.5 malloc (у меня!) возвращает всегда 16-byte aligned, временно сделал затычку (ну и написал в TODO, что надо бы анонимный mmap() в это место).

Варез начал запускаться и местами работать. А местами - падать (не при запуске, в процессе). Потому что нашлось сразу две новые фишки:

  • __ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l (или, если человеческим языком, то std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long)). Каковой __ostream_insert на самом деле используется в std::string, а std::string - в std::runtime_error.
  • У этой самой макоси - ленивая линковка, поэтому падает оно не при запуске, со словами "символ не нашелся", а на рантайме (weak linking).

Конкретную проблему я порешал, запретив использование RawSpeed на 10.5 (и posix_memalign() и __ostream::insert - обе проблемы были в RawSpeed), но осадок остался.

Дивлюсь я на небо, та думку гадаю:

  1. (деструктивная часть): "Программа запускается и как-то работает" в этой вашей Макоси не означает ничего. Мы просто могли не дойти до места, где потребуется (и не найдется) нужный символ. Тестирование обычным способом становится веселым.
  2. (конструктивная): а как бы проверить, что все символы, которые у моей софтины (и всех используемых библиотек вообще-то) в действительности присутствуют? Погуглил все известные слова, не нашел.

RawDigger 0.9.20 (Release Candidate)

Граждане фотографы,

особенно снабженные камерой с сенсором Foveon (или интересом к таковой камере),

потестируйте пожалуйста RawDigger 0.9.20:

Изменения в этой версии таковы (пишу чуть подробнее, чем в Changelog):

  1. Поддержка Foveon:
    • Поддержан как старый формат файлов (Sigma SD9-SD15, Polaroid x530), так и новый (SD1, DPxx).
    • Файлы с Foveon показываются только в режиме RAW-display (composite и поканально), RGB-рендеринга нет.
    • Все прочие действия с RAW доступны: можно смотреть гистограмму, можно экспортировать CGATS, можно экспортировать сами RAW-данные как TIFF.
  2. Вычитание уровня черного работает и для полноцветных форматов (Foveon, sRAW, Kodak YCC и проч). Для sRAW/Kodak оно было не нужным (оттого и не работало), а вот у Foveon есть желание покрутить черный для проверки качества линеаризации.
  3. Увеличена точность вывода значений с плавающей точкой (и на экран, при показе среднего/сигмы, и в CGATS/CSV файлы). Интересуюсь: не нужно ли эту точность регулировать, вдруг кому надо 10 значащих цифр (float их все едино не даст, но вот вдруг кому надо 7-8).
  4. Из соображений совместимости, работа с RawSpeed отключена на Mac OS X 10.5
  5. Исправлена ошибка: при копировании в clipboard строчки из таблицы Samples программа не падает если цветовых каналов в файле менее 4.

Осторожно: VMWare Workstation 10/Player 6

Какое-то время назад вышла VMWare Workstation 10 и Player 6.

Я пощупал, мне понравилось:

  • Не падает так, как падала 9-я версия WS
  • Пропал многолетний глюк с курсором на втором мониторе: если попользоваться моей VM с FreeBSD9, то на втором и третьем мониторе мышиный курсор становится неправильным (на первом мониторе все отлично)
Ну и поапгрейдился. И счастливо пользовался несколько недель, пока не пришла пора проверить совместимость нового Apple XCode 5 со старыми версиями Mac OS X (так то я пользовался в VM только Mac OS 10.8, да и то редко, хакинтош быстрее).

Выяснилось ужасное: Mac OS X 10.6 перестала быть совместимой с приложениями на Qt 4.8 (других не запускал, держу эту 10.6 только для тестов). Они падают на инициализации приложения, причем в разных местах, в зависимости от версии компилятора.

С 10.7 и 10.8 проблемы не замечено, впрочем она там особо и не изучалась, хватило 10.6

Спасся даунгрейдом обратно и переустановкой макосей (потому что Hardware проапгрейдил и как обратно вернуться - не знал). Те же самые бинари - работают.

Такие дела.

P.S. Заодно набрел на багу в 10.5: posix_memalign() в ней есть, но не работает.

Про Foveon

Привинтив к LibRaw не-GPL-ную поддержку Foveon, я, естественно, тут же собрал RawDigger с ней (публичной версии пока нет, идет внутреннее тестирование) и накормил его самплами с разных камер.

Я никоим образом не претендую на какую-то полноту (за этим, к примеру, вот сюда), мне хотелось составить личное впечатление, насколько это возможно сделать по доступным самплам. Качественно я фовеону уже удивлялся, теперь захотелось удивиться количественно (понятно, я мог поудивляться и пораньше, использовав dcraw -D, но при наличии собственного инструмента лепить что-то из палок и веревок откровенно лень).

В качестве предмета для изучения была взята Sigma SD1 Merill (снимки колорчекера брались с imaging-resource.com), впрочем DP1 Merill выглядит примерно так же.

Перейдем теперь к собственно разжиганию содержательной части.

FreeBSD 9-STABLE + USB3 = ?

И, блин, алаверды к предыдущему посту.

Флешка, SanDisk Extreme 64Gb USB3, куплена чтобы у FreeBSD-box работать загрузочным диском, SATA-порты кончились. И что бы вы думали:

ugen1.1: <XHCI root HUB 0x1b6f> at usbus1, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen1.2: <Extreme SanDisk> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (200mA)
И, соответственно, не 200Mb/sec, а 30.

Материнка на Z68 (та самая многострадальная, которая портилась об USB-WiFi).

И что делать (ну кроме cvsup && make buildworld && make buildkernel)?

В форумах/архивах рассылки видны такие же страдальцы (и другие страдальцы, у которых вовсе 12 мегабит в похожей ситуации) и никаких разумных решений....

Вот куда делись DVD-R/RW (а BD и не начались, imho)

Ну то есть да, конечно, оптические диски сильно дешевле (особенно если писалку не учитывать). Но скорость. Но удобство.

Garage sale: голова RRS BH-55

Уборка продолжается.

Если кому нужна голова RRS BH-55 с челюстями (б/у, следы этого б/у видны, но на работоспособности не сказываются), все пропито.

...опять интеграл шатал....

Нам пишут:
Честно скажу, после прошлогоднего быдлятника я и не расстраиваюсь.

P.S. А ведь обещал "ни ногой", однако рука сама потянулась регистрироваться.

LibRaw 0.16 (Alpha1)

Мастер-версия LibRaw получила официальный номер 0.16-Alpha1 и доступна для скачивания.

Это означает, что все глобальные идеи по развитию закончились (на ближайшее время) и нестабильности API - не ожидается. Сама по себе 0.16 достаточно стабильна, в RawDigger используется именно эта версия (и всегда используется "девелоперская", а не "стабильная"), проблем не было.

С полным списком изменений относительно версии 0.15 можно ознакомиться в changelog, ниже откомментированы основные места:

Pages

Subscribe to blog.lexa.ru: все статьи