вторник, 1 сентября 2009 г.

ExifTool. Часть 1

ExifTool — утиль, умеющий читать, писать и редактировать метаданные картинок, аудио и видео файлов (из всего этого набора использую ExitTool исключительно для решения некоторых проблем, связанных с фотками: корректировка т.н. EXIF). Утиль из разряда «зверьё мое» — мелочь, а приятно. Размер небольшой, обновляется достаточно часто, дело свое знает.


DateTimeOriginal & Мобилки

В EXIF`е поле «DateTimeOriginal» хорошо тем, что с его помощью можно удачно отсортировать свою фото-коллекцию по дате съемки (некоторые предпочитают сортировать по месту съемки, но здесь речь не об этом). Но! Мне совершенно непонятен подход фирмы Nokia к фотографиям, конкретнее к EXIF (предполагаю, что не только у Нокии). Камеры в мобилы встроили, а для того, чтобы добавить в EXIF дату-время съемки (не говоря уже о самом блоке)… понадобилось черти сколько времени :-( Что делать?
  1. Сливаем с телефона фотографии. Крайне желательно сделать это не через OBEX, иначе время модификации становится текущим (в противном случае придется попотеть): телефон у фотки ставит дату-время момента съемки.

  2. Командой
    exiftool "-DateTimeOriginal<FileModifyDate" *.JPG
    заносим в EXIF (если блока информации нет — он будет создан) в поле «DateTimeOriginal» дату-время модификации файла.

  3. Опционально командой
    exiftool "-DateTimeOriginal>FileModifyDate" *.jpg
    возвращаем время модификации файла обратно.

  4. Убиваем файлы *.JPG_original.

Имя файла

Праздник! Каждый считает своим долгом запечатлеть событие именно на свой, самый лучший, фотик. В итоге в каталоге собирается зоопарк JPG`ов названных по разному… а просматривать часто хочется в хронологическом порядке. Решение простое:

exiftool -r "-FileName<CreateDate" -d Днюха.%Y%m%d.%H%M%S%%-c.%%e *.JPG

здесь "%%-c" добавляет к имени файла номер копии (на случай, если «они совпали»).

Главное, чтобы афтары выставили корректную дату и время на своих фотоаппаратах.

Время съемки

Беда иногда не приходит одна… Иногда она за собой тащит ворох проблем, связанных с EXIF`ом, например, в камере не выставили дату-время (по моему опыту этим страдают владельцы Olympus — почему: ХЗ) или «мигрировали» в командировку и забыли перевести часики в фотике… В итоге на картинке ярко светит солнце, а по данным EXIF уже далеко за полночь.

В первом случае можно «позаимствовать» время у даты модификации файла (оптимистичный вариант, но, в основном кто-то уже успел поработать с файлом, отчего дата модификации изменилась).

Второй вариант лечится достаточно просто — двигаем временные параметры EXIF`а на нужную величину разности «между нами и ими». Например, «хмм, эту фотку я делал в Новосибе, а это от MSK +3 часа». Применяем ExitTool вот так:

exiftool -alldates-=3 Новосиб.JPG

или так (только дату создания, поля, но не файла):

exiftool "-CreateDate-=00.00.0000 03:00:00" Новосиб.JPG

На сегодня фсё :-)

Ссылки:

Комментариев нет:

Отправить комментарий