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, ниже откомментированы основные места:

Crashplan: промежуточные результаты

Тут в каментах напомнили, у меня же в фоне Crashplan крэшпланит. Как раз неделя прошла.

За неделю залилось 350Gb архива, плюс оно раз в 15 минут просыпается и бэкапит рабочие файлы (какой там суммарный трафик - не смотрел, но пришлось специально воспитывать, чтобы оно не бэкапило мозильский индекс по почте и всякие .obj-файлы из девелоперского каталога).

Эти 350Gb - за "рабочее время" (с 7 до 22), на ночь я выключаю все обычно.

Жить можно, как мне кажется. То есть да, время на приготовление начального бэкапа будет месяца полтора (я туда ~2Tb хочу вылить), но если оно не будет портиться и начинать заливать все заново (пока такого не случилось), то за $4 в месяц оно очень даже в самый раз.

Минусы: сетевые диски (на которых у меня музыка и книжки, которые тоже хочется постепенно побэкапить) десктопный клиент не видит. Т.е. нужен Family Plan, вдвое дороже.

Garage sale: AMD 5870

Граждане читатели,

А может кому нужна видеокарта HD5870 (референсная, "производство" Gigabyte, памяти, соответственно, гигабайт и есть).

По перформансу это что-то среднее между современными HD7850 и 7870 (в вычислениях, по формальным флопсам, где-то 90% в single и 70% в double от HD7870), по энергопотреблению, понятно, сильно хуже (в 1.75/1.3 раза, зимой приятно дует на ноги теплым), ну и PCIe2, а не PCIe3.

Есть просто вот карта, работает, немножко пыльная. Коробочки, диски и т.п. - на поверхности отсутствуют, проще считать что их нет, но если будет твердый желающий, то приложу силы к поиску.

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

Прекрасно будет работать в качестве акселератора для приложений на OpenGL или OpenCL (вроде фотошопа, например).

Продавать мне ее как-то стыдно, да и сложно понять сколько оно стоит, поменял бы на что-нибудь хорошее. Скажем на SD-карточку (емкость/скорость на ваше усмотрение), или на ИК-фильтр вроде Hoya R72.

Москва, Юго-Запад. Пишите в E-mail.

UPD: желающий найден!

P.S. Это я занимаюсь уборкой. Если кому нужны б/у фотосумки, то их тоже есть.

Pages

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