Не удалось открыть камеру с помощью gphoto2 в python - PullRequest
0 голосов
/ 11 октября 2019

Я пытаюсь управлять Sony Alpha, используя Python / gphoto2 на Raspberry PI. Я перепробовал несколько привязок python (python-gphoto2, gphoto2-cffi, ...), но все они терпят неудачу в инструкции по созданию объекта камеры (например, my_cam = gphoto.Camera ()) с ошибкой:

"Не удалось запросить интерфейс 0 (устройство или ресурс занят). Убедитесь, что никакая другая программа (gvfs-gphoto2-volume-monitor) или модуль ядра (например, sdc2xx, stv680, spca50x) не использует устройство, и выУ нас есть доступ на устройство для чтения / записи. "

Мы пытались убить фоновые программы, убедиться, что модули ядра не запущены, установить последние версии библиотек и пакеты python, ... но не смогли получитьизбавиться от ошибки. Кроме того, C-код, использующий libgphoto2, работает нормально, поэтому маловероятно, что ресурс действительно занят. Мы подозреваем, что проблема заключается в отсутствии USB-библиотек в пакетах python, и мы пытались установить libusb-dev, ... но это не помогает.

Любые предложения, что еще мы должны попробовать? Спасибо.

1 Ответ

1 голос
/ 15 октября 2019

Вы упомянули, что пробовали python-gphoto2. Я автор этого пакета. Предполагая, что вы успешно установили его, я бы попробовал пример программы list-cameras.py. В нем должны быть перечислены все камеры, распознаваемые libgphoto2, которые подключены и включены.

Если программы на C работают, а программы на Python - нет, вы можете проверить, что они используют те же версии libgphoto2. Попробуйте ldd на исполняемом файле программы C и на одном из скомпилированных модулей python-gphoto2, например /usr/local/lib/python3.5/dist-packages/gphoto2/_camera.cpython-35m-arm-linux-gnueabihf.so.

...