Доступна первая альфа-версия LibRaw 0.15: LibRaw 0.15.0-Alpha1.
Эта версия предназначена, в первую очередь, для получения замечаний по изменениям API. Для того, чтобы это происходило побыстрее версия выпущена с урезанной функциональностью и производительностью (но тестированию, за исключением отсутствующего кроппинга, это не должно помешать).
Собирается под Unix и Windows (под Mac еще не тестировалось), тестировалась на обычном наборе тестовых RAW (~350 файлов), на всех файлах получен результат, бинарно совпадающий с dcraw 9.16.
Описание изменений:
- Изменения в API:
Удалены т.к. никто не использует- вызов LibRaw::dcraw_document_mode_processing (и соответствующий вызов C-API)
- Поле данных imgdata.color.color_flags
- LIBRAW_DECODER_4COMPONENTS - теперь unpack() распаковывает в один
из двух буферов:
- imgdata.rawdata.raw_image - байеровское изображение с черной рамкой (masked pixels)
- imgdata.rawdata.color_image - полноцветное (3 или 4-компонентное) изображение без рамки.
- imgdata.color.cblack[4] вместо [8], количество пикселов по которым рассчитан уровень черного - не считается и не хранится.
- Функция LibRaw::fc() переименована в LibRaw::fcol() для совместимости с dcraw internals
- imgdata.params.cropbox[] - кроппинга пока нет.
- LibRaw::subtract_black() - не работает как надо (и, как следствие, не используется пока в LibRaw::raw2image()
- WF debanding code (banding suppression):
int imgdata.params.wf_debanding - включает подавление полосатости
float imgdata.params.wf_deband_threshold[4] - задает пороги по 4-м каналам RAW - LibRaw::open_wfile(wchar_t *filename) (WIN32 only) - открывает файл, имя которого задано в unicode-кодировке Windows
- imgdata.params.user_cblack[4] - позволяет задать поканальный уровень черного.
- Потоки данных (потомки LibRaw_abstract_datastream) должны реализовать метод jpeg_src(void *) - инициализация источника данных для библиотеки jpeg (используется для распаковки lossy DNG). Для потоков, включенных в поставку LibRaw, это уже реализовано.
- Импортирована dcraw 9.16/1.450, добавлена поддержка новых камер:
- Adobe DNG: поддержка Fast Load DNG (LightRoom 4.x), поддержка lossy-compressed DNG (LR 4.x, необходима сборка с libjpeg 8)
- Canon: G1 X, SX220 HS, EOS 5D Mark III, EOS 650D, EOS 1D-X
- Casio: EX-Z8
- Fujifilm: X-S1, HS30EXR, X1-Pro
- Nikon: D4, D3200, D800, D800E
- Olympus: E-M5
- Panasonic: DMC-GF5
- Samsung: NX20, NX210, поддержка нового firmware NX100
- Sigma: SD15,SD1, SD1 Merill, DP1, DP1S, DP1X, DP2, DP2S, DP2X (только в Demosaic-pack-GPL2)
- Sony: NEX-F3, SLT-A37, SLT-A57
- Недоделки, будут исправлены в следующих альфа-версиях.
Помимо указанного выше (cropping, subtract_black):- Sony ARW2 Hack - выключает деление значений, распакованых из файлов
формата Sony ARW2 на 4:
int imgdata.params.sony_arw2_hack;
Работает в LibRaw 0.15-PreAlpha, но не работает правильно в Alpha1 - Оптимизации, введенные в предыдущих версиях временно удалены:
- OpenMP-код
- однопроходное копирование данных, вычитание уровня черного и поворот для файлов Fuji HR (LibRaw::raw2image_ex() )
- callbacks для более эффективной (SSE2 и т.п.) реализации медленных операций.
- (более) быстрая распаковка lossless jpeg
- вычитание уровня черного для камер Phase One делается на этапе распаковки данных
- Sony ARW2 Hack - выключает деление значений, распакованых из файлов
формата Sony ARW2 на 4:
Новые комментарии