diff options
author | Jacopo Mondi <jacopo@jmondi.org> | 2019-02-19 17:10:52 +0100 |
---|---|---|
committer | Jacopo Mondi <jacopo@jmondi.org> | 2019-03-02 18:32:00 +0100 |
commit | 3e94f9d7a247376edeacbfc97c7944515c2e147e (patch) | |
tree | 533fcd73be2c22d194e4c4111655ae1f5adc9299 /src/libcamera/include | |
parent | 00889796830bb46a9dbf2029a059dda90287e3db (diff) |
libcamera: v4l2_device: Add support for META_CAPTURE devices
Add support for devices that provide video meta-data to v4l2_device.cpp
and re-arrange bufferType handling in open() method.
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Diffstat (limited to 'src/libcamera/include')
-rw-r--r-- | src/libcamera/include/v4l2_device.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/src/libcamera/include/v4l2_device.h b/src/libcamera/include/v4l2_device.h index 622c9722..5c379fac 100644 --- a/src/libcamera/include/v4l2_device.h +++ b/src/libcamera/include/v4l2_device.h @@ -51,13 +51,37 @@ struct V4L2Capability final : v4l2_capability { bool isCapture() const { return device_caps() & (V4L2_CAP_VIDEO_CAPTURE | - V4L2_CAP_VIDEO_CAPTURE_MPLANE); + V4L2_CAP_VIDEO_CAPTURE_MPLANE | + V4L2_CAP_META_CAPTURE); } bool isOutput() const { return device_caps() & (V4L2_CAP_VIDEO_OUTPUT | V4L2_CAP_VIDEO_OUTPUT_MPLANE); } + bool isVideo() const + { + return device_caps() & (V4L2_CAP_VIDEO_CAPTURE | + V4L2_CAP_VIDEO_CAPTURE_MPLANE | + V4L2_CAP_VIDEO_OUTPUT | + V4L2_CAP_VIDEO_OUTPUT_MPLANE); + } + bool isMeta() const + { + return device_caps() & V4L2_CAP_META_CAPTURE; + } + bool isVideoCapture() const + { + return isVideo() && isCapture(); + } + bool isVideoOutput() const + { + return isVideo() && isOutput(); + } + bool isMetaCapture() const + { + return isMeta() && isCapture(); + } bool hasStreaming() const { return device_caps() & V4L2_CAP_STREAMING; |