From 3e354b00b43fc9fe71972ba2adfcc5883b924cad Mon Sep 17 00:00:00 2001 From: Kieran Bingham Date: Wed, 13 Feb 2019 13:13:33 +0000 Subject: libcamera: v4l2_device: Use non-interlaced frames 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. Reviewed-by: Laurent Pinchart Signed-off-by: Kieran Bingham --- src/libcamera/v4l2_device.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/libcamera/v4l2_device.cpp b/src/libcamera/v4l2_device.cpp index 77866efb..207ba933 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; @@ -679,6 +681,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(); -- cgit v1.2.1