DSLRobot — это программа, которая позволяет управлять зеркальными цифровыми фотоаппаратами Canon с компьютера.
Необходимость в такой программе возникла достаточно неожиданно.
Готовясь к съемкам солнечного затмения, я стал искать программу, которая позволяет управлять фотоаппаратом с компьютера. Оказалось что нет программы, которая удовлетворяет достаточно простым (как мне казалось) условиям:
запись снимков на карту памяти аппарата — обычно приложения норовят немедленно загрузить изображение в память, на что уходит куча драгоценного времени;
управление параметрами съемки по сложному алгоритму.
Освещенность во время затмение сильно и быстро меняется.
Так что приходится варьировать параметры съемки по достаточно сложному алгоритму.
быстрая работа.
Фотокамеры Canon умеют достаточно эффективно распараллеливать работу — снимать, обрабатывать и записывать полученные снимки.
Почему этим не пользоваться?
было бы полезно иметь также возможность задавать не просто сложный "брекетинг", но и иметь возможность привязать съемку к определенному времени.
В конце концов про время затмения все хорошо извесно.
Посмотрев на все это, и поставив ряд экспериментов в API к камерам, я написал программу, которая может быть кривовато, но решает эти задачи.
Если программа будет полезна и для Вас — я буду рад.
2. Что умеем
Управление параметрами съемки.
DSLRobot позволяет задать последовательность кадров и переключений параметров между съемкой.
Программа умеет управлять по ходу съемки следующими параметрами:
Av,
Tv,
ISO,
режим съемки (AEMode),
режимы автофокуса (Metering и Drive mode).
Можно поддержать много чего еще, но... время жизни ограничено.
Управление достаточно банальное: задал и снял — без затей.
Нужен брекетинг — возьми и напиши какую имеенно последовательность кадров тебе нужно.
Привязка съемки ко времени.
Программа имеет возможность задать различные виды пауз в процессе съемки.
В частности, можно задать ожидание заданной даты и времени, причем время можно задавать локальное или GMT.
Далее, можно задать момент времени в процессе съемки и задать ожидание интервала с момента этой контрольной точки.
Ну и разумеется, можно задать паузу подождать команды оператора.
Функции "будильника".
Мне показалось достаточно логичным встроить в программу возможность проигрывания звуковых файлов, в которые можно написать себе различные напоминания.
Во время съемки таких скоротечных явлений как затмение глаза и голова уже настолько заняты, что часто люди забывают обо всем.
Например, что надо открыть крышку фотоаппарата.
В таких ситуациях голосовое напоминание будет очень даже уместно.
Команды через COM-порт.
Для управления преподъемом зеркала сделана возможность послать команду камере с помощью COM-порта.
Функция считается очень экспериментальной (даже на фоне сырости остальной программы!), т.к. у меня нет возможности ее проверить.
Что оно на самом деле делает, можно почитать здесь.
3. Установка и использование
Про это настоятельно рекомендую почитать следующие документы:
Использование программы для личных некоммерческих целей бесплатно в виде "как есть".
Если Вы планируете использовать DSLRobot в составе коммерческих приложений, свяжитесь с разработчиком для получения лицензии для Вашего продукта.
Исходные тексты пока публично не раскрываются, но могут быть предоставлены по запросу.
Скрывать тут что-то смысла большого нет, но код писан в большой спешке и наверняка будет пересматриваться.
Когда (и если) программа стабилизируется, исходные тексты будут опубликованы под какой-нибудь свободной лицензией.
5. Системные требования и поддерживаемое оборудование
Платформа: Windows 2000, XP, Vista.
Программа DSLRobot работает с фотокамерами Canon DSLR через Сanon EDS SDK.
Соответствено список поддерживаемых камер определяется свойствами этого API.
На момент разработки Canon EDS SDK v2.3 поддерживал следующие камеры:
EOS-1D Mark II
EOS 20D
EOS-1Ds Mark II
EOS Kiss Digital N/350D/REBEL XT
EOS 5D
EOS-1D Mark II N
EOS 30D
EOS Kiss Digital X/400D/REBEL XTi
EOS-1D Mark III
EOS 40D
EOS-1Ds Mark III
EOS DIGITAL REBEL Xsi/450D/ Kiss X2
Реально удалось проверить работу программы с камерами 20D и 40D.
Если у кого-то появится возможность проверить работу программы с другими камерами, прошу сообщить о результатах.
6. Где брать
Архив с выполняемыми модулями программы DSLRobot можно загрузить отсюда.
Для тех, кому нужен только выполняемый файл выложен отдельный архив с exe-шником
На этой странице будут выкладываться новые версии программы.
7. Обратная связь
Меня зовут Дмитрий Пашко, и я являюсь автором программы DSLRobot.
Если у Вас есть соображения, предложения или замечания по программе DSLRobot, Вы можете отправить их мне по e-mail: чтобы увидеть его, нужно включить JavaScript.
Если Ваше сообщение меня заинтересует, я свяжусь в Вами.