Начав фотографировать на камеру Fujifilm X100T, я столкнулся с тем, что RAW-файлы с Fuji в формате RAF недоступны для записи в GPS Photo Linker (работает через exiftool). Кроме того, файлы RAF явно несжатые, поскольку матрица у камеры 16 мегапиксел, а средний размер файла превышает 35 Mb.
Очевидное решение – конвертировать файлы RAF в формат DNG. Они и по размеру меньше в полтора раза, и в них можно „зашить“ гео-координаты места снимка. Поскольку открывать утилиту Adobe DNG Converter лень, процесс конвертации был автоматизирован в OS X.
Для этого в Automator нужно создать новую службу (Service) и добавить в последовательность автоматически выполняемых операций элемент AppleScript (Run AppleScript):
Скрипт запрашивает директорию для сохранения файлов DNG, создаёт строку для запуска утилиты DNG Converter через консоль, в которой будут указаны все имена выделенных файлов, запускает в фоне конвертер и в конце выдаёт сообщение в центр уведомлений о том, что конвертация завершена.
Вот как выглядит скрипт:
property DNGConverterPath : "/Applications/Adobe DNG Converter.app/Contents/MacOS/Adobe DNG Converter"
# Расположение утилиты Adobe DNG Converter, по умолчанию – "/Applications/Adobe DNG Converter.app/Contents/MacOS/Adobe DNG Converter"
property ShowDebug : false
# Поставить в true, если хотим видеть диагностические сообщения
to SelectOutputDirectory()
# Диалоговое окно с выбором папки для сохранения файлов DNG
if ShowDebug then
set OutputFolder to choose folder with prompt "Select folder to save output DNG files:" with invisibles
else
set OutputFolder to choose folder with prompt "Select folder to save output DNG files:"
end if
return OutputFolder as text
end SelectOutputDirectory
on run {input, parameters}
# Выполняется при вызове через контекстное меню
set OutputFolder to POSIX path of SelectOutputDirectory()
# Выбираем папку для сохранения файлов DNG
if length of input as list is greater than 0 then
# Убеждаемся, что был выделен хотя бы один файл
local ScriptString
set ScriptString to "open -a \"" & DNGConverterPath & "\" --args -c -e -fl -d \"" & OutputFolder & "\" "
# Формируем строку для запуска DNG-конвертера из консоли:
# сохраняем в формате сжатый DNG, сохраняем данные для быстрой загрузки,
# формат по умолчанию DNG 1.4, совместимый с Adobe Camera RAW 7.1+
# Документация по вызову утилиты Adobe DNG Converter из консоли:
# dng_commandline.pdf
repeat with i in input
set ScriptString to (ScriptString & "\"" & POSIX path of i as text) & "\"" & " "
# Дописываем в строку имена выделенных файлов
end repeat
set ScriptResult to do shell script ScriptString
# Выполняем команду
if ShowDebug then
# Если включены диагностические сообщения,
# выводим их в виде уведомления
if length of ScriptResult is greater than 0 then
set ScriptResult to "Conversion of " & {length of input as list} & " files to DNG resulted in error: " & ScriptResult
else
set ScriptResult to "Conversion of " & {length of input as list} & " files to DNG in folder " & OutputFolder & " completed."
end if
display notification ScriptResult with title "DNG Conversion" sound name "Submarine"
end if
end if
return 0
end run
После компиляции сохраняем скрипт в папку по умолчанию: ~/Library/Services/ с каким-нибудь осмысленным именем, например, Convert to DNG.
Теперь для конвертации проприетарных RAW-файлов в DNG достаточно выделить их в Finder и через контекстное меню вызвать функцию преобразования.
Конвертация RAW → DNG по правому клику
- Science Slam 9 августа
- Отражение горы Рисчорр в озере с мелкими камнями