Re: [PATCH 0/4] Follow-up patches for uvc v4l2-compliance

From: Hans Verkuil
Date: Fri Nov 12 2021 - 05:46:01 EST


On 12/11/2021 11:09, Ricardo Ribalda wrote:
> Hi James
>
>
>> Pixel Format : 'MJPG' (Motion-JPEG)
>> Field : None
>> Bytes per Line : 0
>> Size Image : 614400
>> Colorspace : Default
>
>> ioctl(3, VIDIOC_G_FMT, {type=0 /* V4L2_BUF_TYPE_??? */}) = -1 EINVAL
>> (Invalid argument)
>> ioctl(3, VIDIOC_G_FMT, {type=V4L2_BUF_TYPE_VIDEO_CAPTURE,
>> fmt.pix={width=640, height=480, pixelformat=v4l2_fourcc('M', 'J', 'P',
>> 'G') /* V4L2_PIX_FMT_MJPEG */, field=V4L2_FIELD_NONE, bytesperline=0,
>> sizeimage=614400, colorspace=V4L2_COLORSPACE_DEFAULT}}) = 0
>> write(1, "\t\t\33[1;31mfail\33[0m: v4l2-test-for"..., 59 fail:
>> v4l2-test-formats.cpp(358): !colorspace
>> ) = 59
>
> Thanks for testing it out. In this case I believe that it is a camera
> bug. The error is due to the fact that the colorspace is does not have
> a valid value. That value is provided by the camera:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/media/usb/uvc/uvc_driver.c#n766
>
> You might have to send a patch with a quirk for your device.
>

Well, it is a USB device bug, but still the uvc driver should fall back to SRGB.
in this case. COLORSPACE_DEFAULT is definitely wrong and shouldn't be returned.

Regards,

Hans