Как запустить/остановить видеозапись на камере Canon через SDK?

У меня есть цифровая камера Canon 7D, и я хотел бы иметь возможность управлять записью видео с ПК. Я скачал Canon SDK 2.8, прочитал весь содержащийся в нем документ, но до сих пор не могу понять, как начать или остановить запись видео на камеру.

Есть ли возможность управлять записью видео через Canon SDK?

Спасибо.


person Dmitry    schedule 27.10.2010    source источник
comment
Официальный ответ команды Canon DIDP: К сожалению, текущий SDK не поддерживает функцию видеозаписи.   -  person Dmitry    schedule 05.11.2010
comment
Это должно быть возможно, так как EOS Utility, которая поставляется на компакт-диске с камерой, поддерживает это.   -  person Dax Fohl    schedule 09.10.2011


Ответы (3)


последний документ Canon Camera SDK содержит ответ:

6.4.3 Начало/окончание видеосъемки Вы можете начать/завершить видеосъемку с помощью следующих операций.

EdsUInt32 record_start = 4; // Begin movie shooting 
err = EdsSetPropertyData(cameraRef, kEdsPropID_Record, 0, sizeof(record_start), &record_start); 
EdsUInt32 record_stop = 0; // End movie shooting 
err = EdsSetPropertyData(cameraRef, kEdsPropID_Record, 0, sizeof(record_stop), &record_
person Dmitry    schedule 23.06.2012
comment
Это хорошие новости. Раньше я делал это с помощью хака, который я перепроектировал, но теперь я могу переключиться на это. - person Shachar Weis; 02.11.2012
comment
хочешь поделиться своим хаком? Похоже, что t5i не слушает эту команду при подключении в режиме ПК. - person Michael Brown; 30.09.2013

Взгляните на gphoto, я не уверен (и это для Unix-подобных систем)

http://www.gphoto.org/doc/remote/

И единственный хак, который, как я знаю, работает, - это использование передатчика usb-ir, который отправляет сигнал, используемый пультом Canon Remote, вы можете проверять сигналы (старт, стоп) передатчиками usb-ir, получая сигнал от пульта Canon Remote, а затем отправляя его всякий раз, когда вы хочу в вашей программе

Изменить

Кажется, кто-то другой понял это первым

Необходимо записать видео с помощью DSLR, используя SDK

Изменить 2

Breezesys нашел решение, похоже, это недокументированная команда, но Крис Бриз не будет раскрывать информацию, как вы можете видеть здесь

http://www.breezesys.com/DSLRRemotePro/help/index.html?video_capture.htm

какой-нибудь хексолог или реверс-инженер должен изучить это :/

Изменить 3

Пока здесь люди говорят:

это недокументированный поиск функций для себя

Вот список команд и функций, также вы можете извлечь их для себя с помощью dll export viewer ,

DPPLibCom

DPPDLL

EDSDK

EdsImage

MLib

Ucs32P

Также здесь некоторые инструменты n@sty делают n@sty вещи с dll, я надеюсь, вы знаете их, потому что называть их здесь незаконно

person Synxmax    schedule 21.11.2011
comment
Грязный :D, ты программист или кто? - person ; 21.11.2011
comment
gphoto не имеет возможности запускать/останавливать захват видео на Canon DSLR. Та другая ветка была открыта мной и тоже не имеет ответа. - person Shachar Weis; 24.11.2011

К сожалению, я не думаю, что это возможно в данный момент (посмотрев на данный API). Хотя я верю, что Canon имеет API, но не выпускает его по той или иной причине.

Кстати, я видел случаи, когда люди брали кадры просмотра в реальном времени и превращали их в видео.

person airfang    schedule 17.02.2011