[libcamera-devel] [PATCH v2 5/8] libcamera: v4l2_device: Use non-interlaced frames
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Wed Feb 13 16:46:06 CET 2019
Hi Kieran,
Thank you for the patch.
On Wed, Feb 13, 2019 at 03:10:24PM +0000, Kieran Bingham wrote:
> Use V4L2_FIELD_NONE where applicable to disable support for interlaced frames.
> We are unlikely to support interlaced frames on cameras so hardcode this field
> type for now. If we decide to support interlacing later it can be revisited.
>
> Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
> ---
> src/libcamera/v4l2_device.cpp | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/src/libcamera/v4l2_device.cpp b/src/libcamera/v4l2_device.cpp
> index 8c038239cf24..d690be9823f5 100644
> --- a/src/libcamera/v4l2_device.cpp
> +++ b/src/libcamera/v4l2_device.cpp
> @@ -423,6 +423,7 @@ int V4L2Device::setFormatSingleplane(V4L2DeviceFormat *format)
> pix->height = format->height;
> pix->pixelformat = format->fourcc;
> pix->bytesperline = format->planes[0].bpl;
> + pix->field = V4L2_FIELD_NONE;
>
> ret = ioctl(fd_, VIDIOC_S_FMT, &v4l2Format);
> if (ret) {
> @@ -483,6 +484,7 @@ int V4L2Device::setFormatMultiplane(V4L2DeviceFormat *format)
> pix->height = format->height;
> pix->pixelformat = format->fourcc;
> pix->num_planes = format->planesCount;
> + pix->field = V4L2_FIELD_NONE;
>
> for (unsigned int i = 0; i < pix->num_planes; ++i) {
> pix->plane_fmt[i].bytesperline = format->planes[i].bpl;
> @@ -681,6 +683,7 @@ int V4L2Device::queueBuffer(Buffer *buffer)
> buf.index = buffer->index();
> buf.type = bufferType_;
> buf.memory = memoryType_;
> + buf.field = V4L2_FIELD_NONE;
>
> if (V4L2_TYPE_IS_MULTIPLANAR(buf.type)) {
> buf.length = buffer->planes().size();
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list