Для виджета я в основном использую слегка измененный код из примера QCamera с сайта geeksforgeeks.com.
Код (минимальная версия), который я использую:
Код: Выделить всё
class Camera(QCameraViewfinder):
def __init__(self, parent=None):
super(Camera, self).__init__(parent)
self.available_cameras = QCameraInfo.availableCameras()
def select_camera(self, i):
self.camera = QCamera(self.available_cameras[i])
self.camera.setViewfinder(self)
self.camera.start()
Я использую одну и ту же веб-камеру (и пробовал две разные), они отображаются в dmesg как USB HD-камера, и я могу получить доступ к каналу камеры через VLC, guvcview и т. д.
Я был бы признателен за любую помощь и указания на то, в чем проблема.
Было бы также полезно, откуда PyQt получает список камер. спасибо!
ОБНОВЛЕНИЕ:
Мне удалось решить проблему, эхуморо указал мне в правильном направлении. Отсутствовало несколько пакетов qt, я (пере)установил их все, запустив:
Код: Выделить всё
apt install qtmultimedia5-*Код: Выделить всё
apt install gstreamer1.0-plugins-*Подробнее здесь: https://stackoverflow.com/questions/783 ... -available
Мобильная версия