2015-04-22 3 views
0

Начиная с версии 2.12 - похоже, что Canon EDSDK больше не поддерживает получение серийных номеров камеры с подключенных камер через kEdsPropID_BodyIDEx. Это означает, что невозможно определить, какая именно физическая камера.Canon EDSDK 2.12+ kEdsPropID_BodyIDEx отключен

Например, если вы хотите подключиться к 2 камерам и установить настройки1 для камеры1 и settings2 для камеры2, у вас нет способа узнать, какая камера является камерой1 и которая является камерой2 из вашего приложения, и, следовательно, нет способа узнать, какие настройки для каждой камеры.

Это похоже на разумную вещь, если вы хотите сказать, что камера1 находилась в темной комнате, а камера2 находилась в ярко освещенной комнате, и вы хотели применить конкретные настройки к каждому из них?

Я видел этот пост: Canon SDK: Download latest picture taken by two devices to host

, если я не то недоразумение, это позволяет различать между камерами внутри вашего приложения, как только вы подключили, но не позволяет дифференцировать между физическими камерами.

Кто-нибудь нашел способ обойти эту проблему?

Cheers!

ответ

0

используя 2.15 здесь и BodyIDEx, работающий нормально. Вы уверены, что используете его как строку, а не как uint?

Помимо этого есть, по меньшей мере, два других способа отличить камеру, даже не открывая сеанс.

  • имя порта, который вы можете получить с EdsGetDeviceInfo
  • значение указателя на объект камеры

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

+0

Thanks Johannes - да, мы только что обнаружили, что более поздние версии 2.14 и теперь 2.15 работают нормально - спасибо также Фрэнсису Харту на kuvacode.com за помощь! – dug

Смежные вопросы