Source code for QVideo.cameras.MV._camera

from QVideo.cameras.Genicam import QGenicamCamera, QGenicamSource


__all__ = ['QMVCamera', 'QMVSource']


[docs] class QMVCamera(QGenicamCamera): '''Camera backed by any GenICam-compliant device via the MATRIX VISION mvGenTLProducer universal GenTL producer. `mvGenTLProducer <https://www.matrix-vision.com/software-support.html>`_ is a free universal GenTL producer from MATRIX VISION that supports a broad range of GenICam-compliant cameras from many manufacturers. Installing the mvIMPACT SDK registers the producer path in ``GENICAM_GENTL64_PATH`` automatically. .. note:: FLIR/Spinnaker cameras are not supported by this backend; use :class:`~QVideo.cameras.Flir.QFlirCamera` instead. If mvIMPACT SDK is not installed, instantiation raises :exc:`TypeError`. Parameters ---------- cameraID : int Index of the camera to open. Default: ``0``. ''' producer = QGenicamCamera._findProducer('mvGenTLProducer.cti')
[docs] class QMVSource(QGenicamSource): '''Threaded video source backed by :class:`QMVCamera`. Parameters ---------- camera : QMVCamera or None Camera instance to wrap. If ``None``, a new :class:`QMVCamera` is created from ``cameraID``. cameraID : int Index of the camera to open. Used only when *camera* is ``None``. Default: ``0``. ''' def __init__(self, camera: QMVCamera | None = None, cameraID: int = 0) -> None: camera = camera or QMVCamera(cameraID=cameraID) super().__init__(camera)
if __name__ == '__main__': # pragma: no cover QMVCamera.example()