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 <laurent.pinchart@ideasonboard.com> Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
parent
8a46873e04
commit
3e354b00b4
1 changed files with 3 additions and 0 deletions
|
@ -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();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue