Message ID | 20211210144424.14747-7-david.plowman@raspberrypi.com |
---|---|
State | Accepted |
Headers | show |
Series |
|
Related | show |
Hi David On Fri, Dec 10, 2021 at 02:44:22PM +0000, David Plowman wrote: > The ColorSpace from the StreamConfiguration is now handled > appropriately in the V4L2Subdevice. > > Signed-off-by: David Plowman <david.plowman@raspberrypi.com> > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jacopo Mondi <jacopo@jmondi.org> Thanks j > --- > src/libcamera/v4l2_subdevice.cpp | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/src/libcamera/v4l2_subdevice.cpp b/src/libcamera/v4l2_subdevice.cpp > index b782325a..fa216e85 100644 > --- a/src/libcamera/v4l2_subdevice.cpp > +++ b/src/libcamera/v4l2_subdevice.cpp > @@ -415,6 +415,7 @@ int V4L2Subdevice::getFormat(unsigned int pad, V4L2SubdeviceFormat *format, > format->size.width = subdevFmt.format.width; > format->size.height = subdevFmt.format.height; > format->mbus_code = subdevFmt.format.code; > + format->colorSpace = toColorSpace(subdevFmt.format); > > return 0; > } > @@ -442,6 +443,7 @@ int V4L2Subdevice::setFormat(unsigned int pad, V4L2SubdeviceFormat *format, > subdevFmt.format.height = format->size.height; > subdevFmt.format.code = format->mbus_code; > subdevFmt.format.field = V4L2_FIELD_NONE; > + fromColorSpace(format->colorSpace, subdevFmt.format); > > int ret = ioctl(VIDIOC_SUBDEV_S_FMT, &subdevFmt); > if (ret) { > @@ -454,6 +456,7 @@ int V4L2Subdevice::setFormat(unsigned int pad, V4L2SubdeviceFormat *format, > format->size.width = subdevFmt.format.width; > format->size.height = subdevFmt.format.height; > format->mbus_code = subdevFmt.format.code; > + format->colorSpace = toColorSpace(subdevFmt.format); > > return 0; > } > -- > 2.30.2 >
diff --git a/src/libcamera/v4l2_subdevice.cpp b/src/libcamera/v4l2_subdevice.cpp index b782325a..fa216e85 100644 --- a/src/libcamera/v4l2_subdevice.cpp +++ b/src/libcamera/v4l2_subdevice.cpp @@ -415,6 +415,7 @@ int V4L2Subdevice::getFormat(unsigned int pad, V4L2SubdeviceFormat *format, format->size.width = subdevFmt.format.width; format->size.height = subdevFmt.format.height; format->mbus_code = subdevFmt.format.code; + format->colorSpace = toColorSpace(subdevFmt.format); return 0; } @@ -442,6 +443,7 @@ int V4L2Subdevice::setFormat(unsigned int pad, V4L2SubdeviceFormat *format, subdevFmt.format.height = format->size.height; subdevFmt.format.code = format->mbus_code; subdevFmt.format.field = V4L2_FIELD_NONE; + fromColorSpace(format->colorSpace, subdevFmt.format); int ret = ioctl(VIDIOC_SUBDEV_S_FMT, &subdevFmt); if (ret) { @@ -454,6 +456,7 @@ int V4L2Subdevice::setFormat(unsigned int pad, V4L2SubdeviceFormat *format, format->size.width = subdevFmt.format.width; format->size.height = subdevFmt.format.height; format->mbus_code = subdevFmt.format.code; + format->colorSpace = toColorSpace(subdevFmt.format); return 0; }