Читайте также: |
|
Цифровой фотографией в наше время уже, конечно, никого не удивишь. Ее доступность и удобство стали для многих из нас решающими аргументами при переходе с пленочных технологий на цифровые или же просто позволили принять решение "стартануть" сразу с приглянувшегося цифровичка, а не с пленочной мыльницы. Конечная дешевизна каждого снимка неизбежно приводит к увеличению количества фотографий. Ну зачем, скажите на милость, экономить и делать 2 снимка одного сюжета, если можно нащелкать двадцать или тридцать, а по карману это практически не ударит? Но многим из нас этого уже мало и хочется не просто иметь на винчестерах и DVD-R свалку любимых фотоснимков, но и через полгода, год, пять лет и т.д. вспомнить, с какими параметрами был снят тот или иной кадр, чем руководствовались мы, когда повышали ISO или уменьшали диафрагму, почему на снимке проявился тот или иной эффект, какие ошибки мы допустили при установке баланса белого. Я не знаю, кто конкретно из японцев придумал стандарт EXIF 2.2. Я знаю только, что японцы - великие люди. Без них мир был бы скучен и сер.
С самого первого дня, еще тогда, когда я делал свои первые пробные кадры, у меня вошло в привычку нажимать "Properties" в любимой ACDSee и смотреть вкладку "Metadata". Впоследствии, я сменил несколько просмотрщиков, но ни один из них не мог работать с Exif так, как мне бы хотелось, наверное, по одной простой причине - просмотрщики должны уметь показывать само фото, а функции работы с метаданными у них всего лишь полезные программные дополнения, не более. И вот, у меня родилась идея написать нужную мне программу самому, и я на пару недель плотно засел за изучение документации. Человек я по природе своей ленивый, и именно поэтому моя `ShowExif;-)` изначально "затачивалась" под аппараты того производителя, которые меня более всего интересовали, а именно под аппараты компании Canon. Тем не менее, программа работает и с файлами JPEG других производителей.
Теперь немного о самой программе. Разумеется, она бесплатна. Разумеется, она запускается только из-под Windows. И, разумеется, она имеет статус `beta`. Разумеется, программа не имеет инсталлятора, чтобы лишний раз не нервировать пользователя. Разумеется, она использует старую добрую систему ini-файлов, и потому в ней нет ни одной процедуры, которая шарилась бы по вашему и без того захламленному реестру. Разумеется, ini-файлы хранятся в том же каталоге, что и сама программа, а не в каких-нибудь системных папках Windows, откуда их нужно было бы выуживать, если возникла необходимость. И, разумеется, удаление программы, в случае надобности, не составляет труда, просто удаляете директорию, где она живет, и готово. Разумеется, программа не перегружена графикой и скинами. Разумеется, в программе есть русский интерфейс. И, разумеется, все права на программу принадлежат ее автору, т.е. мне, и это, согласитесь, логично.
Теперь немного о самой сути стандарта Exif. Не бойтесь, грозными формулами и многостраничными структурами я вас утомлять не стану. Просто скажу пару слов о том, как все это примерно работает. Поток данных формата JPEG кодируется программой-создателем и подлежит последующему декодированию программой-просмотрщиком или программой-редактором. Нас это сейчас особо не интересует, поскольку сами данные JPEG не имеют непосредственного отношения к EXIF. Повторюсь, я не знаю, кому конкретно пришла в голову мысль создать стандарт, позволяющий "прицепить" к блоку данных JPEG блоки метаданных, но мысль эта, очевидно, весьма здравая. И идея эта явно заслуживает уважения, хотя реализация, на мой взгляд, все же хромает. В общих чертах, очень упрощенно говоря, файл JPEG с метаданными выглядит так:
Начало файла | Основной раздел Exif | Дополнительный раздел | Маркер потока JPEG | Поток JPEG | Конец файла |
Повторюсь, все это очень упрощенно, излагаю только саму поверхностную суть, в действительности тут намного больше нюансов. Начинается JPEG всегда одинаково. С т.н. маркера начала изображения. Далее идут секции метаданных, тоже разделенные маркерами. Затем идет маркер начала потока JPEG. Затем сами данные JPEG. А потом маркер конца файла. Основная задача просмотрщиков - декодирование данных JPEG потока, в то время как основная задача "ShowExif;-)" - декодирование разделов EXIF, которых, кстати говоря, вполне может быть больше, чем показано на схеме, то есть, больше, чем два. Разделы Exif представляют собой массивы "Тэг - значение". Количество тэгов ограничено разумным числом. Так называемый "Основной раздел Exif" содержит описанные стандартом тэги, на присутствии которых настаивает спецификация, а каждый из этих тэгов имеет свое значение, причем, некоторые из этих значений описаны в спецификации, как фиксированные комбинации (массивы), а некоторые могут быть произвольными. Естественно, что многим производителям стало мало таких жестких рамок, и в дополнение к основному разделу EXIF в файл JPEG их камеры пишут так называемый "MakerNote", раздел, расширяющий объем информации о съемке. Для тэгов в этом разделе жестких рекомендаций со стороны стандарта нет, и каждый из производителей вводит свой "микростандарт", который на деле является комбинацией нужных тэгов, причем, порядок следования этих тэгов и их расшифровку производители не разглашают. Т.е. ситуация такая: штатные программы производителей MakerNote без проблем расшифровывают, а остальные разработчики вынуждены до всего доходить сами, потому как официальной документации от производителей нет. Все. Как и обещал - самую суть, без утомительного углубления в детали.
Дата добавления: 2015-08-20; просмотров: 35 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Глава 2. Признаки «Руста-брокер». | | | Внешний вид. |