Если не Adobe то кот?

Базовый Gray/RGB TIFF сковал, полез смотреть всякую экзотику, начал, для начала, с grayscale.

ImageMagick в зубы и в таком вот духе:

for bit in 8 9 12 14 16 17 24 29 32; do convert AZ1I2270_gray.tif -depth $bit -define tiff:endian=msb -define quantum:format=signed -define quantum:polarity=min-is-white AZ1I2270_gray${bit}sint_msb_inv.tif ; done

Ну и смотреть, адобом и IrfanView, до других уж извините руки не доходят. Выглядит местами смешно (кликабельно):

...

Снова трудо-выебудни

Повозившись сначала с libpng (формат простой и если следовать заложенным там идеям, то как бы и ничего так), а затем в libtiff (формат, как мы знаем, весьма развесистый)....

Я начинаю понимать популярность всяких OpenImageIO, FreeImage, ну на худой конец стандартных кодеков типа Qt-шных (говоришь ему read("file.png") оно само разберется что и куда).

Потому что та же libtiff - это, на самом деле, тихий ужас:

  • Есть TIFFReadRGBAImageOriented, которая может многое (Grayscale, RGB, Lab, CMYK - все вернет в виде RGBA). Правда с Lab/CMYK оно делает это как-то криво...., а какие-нибудь 12-битные RGB или 16-bit FP вовсе не умеет.
    Правда интерфейс там такой, что если исходный TIFF повернут на 90 градусов, результат TIFFReadRGBAImageOriented вас сначала огорчит, а потом (когда поймете отчего он такой) позабавит.
  • Поэтому есть TIFFReadSсanline - и можно читать по строчкам.
    Правда бывают TIFF-файлы, где строчек нет, а есть тайлы
  • Поэтому есть TIFFReadTile и можно читать тайлы.... ну уже криво, тайлу надо давать буфер под тайл, поместить его прямо в выходной растр нельзя, придется копировать.
    Правда бывают файлы, где цветовые компоненты записаны отдельно....
    Правда бывают файлы с тегом TIFFTAG_IMAGEDEPTH (про который я вообще не нашел ничего вменяемого за две минуты - и успокоился)

И вот не знать бы этих всех подробностей бы.....

И это как бы не говоря о том, что для striped/tiled tiffs конечно бы декодировать их многопоточно бы (чего libtiff не умеет).

Ну то есть мы тут все привыкли, что в RAW - бардак, ну OK. Но, э, если смотреть на "индустриальный стандарт" (TIFF и libtiff как имплементацию) - ну тоже невозможно сказать что все хорошо, ну то есть для чтения FP16-tiled-RGB tiff придется самому написать большую гору кода.

Трудо-выебудни

А вот, например, Adobe Bridge:

  1. Читает TIFF-файлы (ура).
  2. Умеет их повернуть (тоже неплохо). Делает это сменой тега Orientation.
  3. Но: если в файле содержится несколько изображений (т.е. image pyramid в терминах фотошопа), то Orientation меняется только у IFD0.
  4. При этом стандарт конечно умалчивает "как правильно поворачивать TIFF", но поскольку в IFD1..n прочие описания изображения (ну там размер, BitsPerSample, etc) описывают данное "под"-изображение, логично думать что и Orientation там верный (если этот тег есть, понятно что если его нет, то надо
  5. ...

FastRawViewer 1.5 technology preview: кэширование превьюшек

До версии 1.4 включительно, FastRawViewer ничего не писал на диск (кроме XMP-файлов) и это было хорошо, потому что диски не замусоривались. При этом, превьюшки даже самых толстых RAW декодировались достаточно быстро с быстрых носителей и вменяемо быстро - с медленных (вроде одиночных HDD или флеш-карточек)

Однако времена меняются, потребности растут. В частности, запланированная поддержка форматов TIFF и PNG требует других решений: TIFF может занимать сотни мегабайт, быть запакован медленным упаковщиком и не содержать превьюшки. Декодирование его займет, соответственно, секунды (или...

Про Asus XG-U2008 (свитч)

Несколько месяцев назад я заменил старый добрый 8-портовый гигабитный DLink (не помню модели) на свитч Asus XG-U2008. 8 гигабитных портов + 2x10G

Не делайте так, дети. К гигабитным портам претензий нет, а вот с 10G засада: временами, как бы не раз в неделю, оно затыкается: лампочки горят, с точки зрения подключенных компьютеров все ОК, а вот байты не ходят. Лечится только передергом питания свитча.

Буду тратить денег на 5-портовый Netgear XS505M, дешевле вариантов не нашел.

Картинка - для привлечения внимания. Я на нее как посмотрю, так начинаю ржать.

Дама, сошедшая с экипажа, снижает необходимое тягловое усилие

Я пропустил анонс и увидел его только по трафику на www.libraw.org, а оказывается еще неделю назад Microsoft выпустил Raw Image Extension (Beta), замену многолетней боли Raw Codec Pack (в Win10 оно встроенное, но текущие версии не сильно лучше) вот с таким анонсом:

By installing the package, you will be able to view thumbnails and metadata of supported raw file formats right in Windows File Explorer or view images in the Photos app.

Пока не смотрел, оно требует...

FastRawViewer 1.4.11 Release

Мы собирались выпустить FastRawViewer 1.4.11 быстро, исправив там одну плохую ошибку (с пресетами ББ у кэнона). Вместо этого получается работа по заявкам: фидбек поступает постоянно, а поскольку версия в работе, то почему бы не поправить еще и это, делов то на 5 минут. Это, конечно, делает программу лучше, но пора и остановиться.

UPD: FRV 1.4.11-1402 выпущен как релиз

На сегодняшний день список правок таков (относительно версии 1.4.10):

Новое

  • Значительно (десятки процентов) ускорено чтение thumbnails. Заметно на медленных носителях (одиночный
  • ...

О цветовой дифференциации

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

Один из компьютеров в доме как то медленно ходил в интернет. И ладно бы в интернет, на локальный файлбокс тоже. Этот файлбокс использует только этот компьютер, поэтому заметил ну вот сегодня.

И что я только не делал, самбу тюнил, на прерывания смотрел, ethernet-кабель менял, все одно - херня, медленно и плохо. Точнее, было просто плохо (меньше 1Mb/sec в любую сторону), после замены кабеля в одну сторону заработало нормально, в другую - все то же говно.

Что выяснилось:

  • Осенью я закупил мешок ethernet-хвостиков. Разной длины и разного цвета. Трехметровые, к примеру, черные, полутораметровые - белые, метровые - желтые. Мне так удобно.
  • И менял я ethernet-кабель - на такой же, конечно, потому что в это место хорошо ложится трехметровый.
  • Так вот, черные, похоже, просто все плохие. Все три. Там и кабель на ощупь какой-то не такой, ну и вот ошибки на интерфейсе (да, дошел до того, что стал их искать).
  • Заменил на зеленый (5 метров), все заработало как из пушки.

Так и запишем, черный ethernet больше не покупать. Куплю трехметровых красных пожалуй.

Сон в зимний день

Помимо проблем с потреблением у видеокарты в простое, не менее смешное, но в обратную сторону, обнаружилось у материнки:

После просыпания после Sleep или Hibernate, отваливается турбо: максимальная частота с которой работает процессор равна 1800 MHz.

Более, того, в процессе экспериментов удалось пару раз получить предельную часоту вовсе в 1200.

Смешно.

Поскольку грузится компьютер (с M.2) примерно с той же скоростью что просыпается, ну значит не будет теперь спать, смысла в sleep-режимах нет.

Вероятно, в очередном BIOS update починят. Пока же - даже следов проблемы на форумах не нашел.

P.S. Попробую, конечно, reset bios settings to defaults, вдруг поможет.

UPD: reset to defaults, + потом восстановление нужных мне настроек (overclock, vroc, вентиляторы) - не помогли. Без оверклока пробовать неинтересно.

Дрова сырые, не горят

Вот значит сменил видяху, на 2080 Ti. Быстрая, где-то раза в два быстрее чем 1080 (по Furmark), явный для моих целей оверкилл (FRV, без всяких оптимизаций под очень много ядер - кажет 40Mpix/Sony uncompressed со скоростью 24fps, при этом видяха не удосуживается даже частоту поднять хотя бы до базовой, не говоря о boost).

Брал из идеи попрограммировать Tensor cores когда дойдут руки, ну прям очень интересно.

Но я не об этом.

Чудовищные, чудовищно сырые дрова драйвера. В двухмониторной конфигурации стандартно частота в idle не падает ниже 1065Mhz и ~60 ватт потребления. Проблема известная, частота минимальная у всех разная, но большая, есть гипотеза что она зависит от частоты обновления мониторов (на 120/144 Hz у народа бывает и больше мегагерцев в idle).

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

Решение - частичное - тоже известно, NVidia Inspector, там есть аж специальный режим для Multimonitor Power saver. У меня сбивает частоту до 645, потребление до 20 с небольшим ватт.

В одномониторном режиме такого нет, без всякого инспектора - частота падает до 300-330Mhz сама.

Ну я даже смирился уже.

Но вот оставил компьютер на ночь в режиме sleep. Утром - разбудил, а у меня мониторинг видяхи (пока) выведен. Ну и проснулась она и у нее все хорошо - 300Mhz в idle. Второй монитор - вот он.

То ли выспаться ей было надо, то ли еще чего.

Уверен на 100% - перезагружусь и опять будет 645. Вот пошел пробовать....

UPD: перезагрузился, конечно 645. Дал поспать минутку, разбудил, после просыпания - 645, но пока я это пишу - упало до 300. Правда на потребление переход с 645 на 300 влияет мало, пара ватт.

P.S. Ну и в firefox  - flicker при прокрутке на оба монитора. Нужно hw acceleration выключать.

Про Windows Junction

В любой непонятной ситуации - делай бэкап!

Как уже знают читатели этого блога, у чукчи - новый компьютер. И вот аккурат 30 декабря я начал на него переезд.

К сожалению, переизбытка SSD-дисков у меня нет, поэтому C:\ старого компьютера должен был стать C:\ у нового. С перестановкой винды с нуля, а то старая что-то распухла.

Чукча умный - и сделал полный бэкап. Затем, для удобства, восстановил его в...

Intel VROC (performance)

Не удержался я и карточку ASUS HYPER M.2 X16 таки купил, потому что на фоне всего остального нового компьютера карточку вовсе не видно, а два полутерабайтных SSD-PCIe диска Intel 760p тоже не особо заметно.

Помимо Асуса, такие делают Asrock и MSI, причем ASUS-овская мне формально нравится меньше всех (потому что питание берет с материнки, а его и так дефицит), но выбора в нашей...

Pages

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