[libcamera-devel,0/2] V4L2Device Try format support
mbox series

Message ID 20190503153403.8728-1-kieran.bingham@ideasonboard.com
Headers show
Series
  • V4L2Device Try format support
Related show

Message

Kieran Bingham May 3, 2019, 3:34 p.m. UTC
Extend V4L2Device to provide a tryFormat function. This can be used to check a
format against a V4L2 Device to determine a suitable configuration.

Utilise this in the UVC pipeline handler so that we can provide a valid default
configuration on any UVC web cam.

Kieran Bingham (2):
  libcamera: v4l2_device: Add tryFormat support
  libcamera: pipeline: uvc: Try a default format against the device

 src/libcamera/include/v4l2_device.h |  7 +++++--
 src/libcamera/pipeline/uvcvideo.cpp | 11 +++++++++--
 src/libcamera/v4l2_device.cpp       | 29 +++++++++++++++++++++++------
 3 files changed, 37 insertions(+), 10 deletions(-)

Comments

Laurent Pinchart May 3, 2019, 5:13 p.m. UTC | #1
Hi Kieran,

Thank you for the patches.

On Fri, May 03, 2019 at 04:34:01PM +0100, Kieran Bingham wrote:
> Extend V4L2Device to provide a tryFormat function. This can be used to check a
> format against a V4L2 Device to determine a suitable configuration.
> 
> Utilise this in the UVC pipeline handler so that we can provide a valid default
> configuration on any UVC web cam.

I think this should be handled through format enumeration though, but
maybe also confirmed by trying it out. Niklas has developed patches that
are based on a series I haven't posted yet. I'll try to finalise it
ASAP so you can have a look.

> Kieran Bingham (2):
>   libcamera: v4l2_device: Add tryFormat support
>   libcamera: pipeline: uvc: Try a default format against the device
> 
>  src/libcamera/include/v4l2_device.h |  7 +++++--
>  src/libcamera/pipeline/uvcvideo.cpp | 11 +++++++++--
>  src/libcamera/v4l2_device.cpp       | 29 +++++++++++++++++++++++------
>  3 files changed, 37 insertions(+), 10 deletions(-)
>
Kieran Bingham May 23, 2019, 1:47 p.m. UTC | #2
Hi Laurent,

On 03/05/2019 18:13, Laurent Pinchart wrote:
> Hi Kieran,
> 
> Thank you for the patches.
> 
> On Fri, May 03, 2019 at 04:34:01PM +0100, Kieran Bingham wrote:
>> Extend V4L2Device to provide a tryFormat function. This can be used to check a
>> format against a V4L2 Device to determine a suitable configuration.
>>
>> Utilise this in the UVC pipeline handler so that we can provide a valid default
>> configuration on any UVC web cam.
> 
> I think this should be handled through format enumeration though, but
> maybe also confirmed by trying it out. Niklas has developed patches that
> are based on a series I haven't posted yet. I'll try to finalise it
> ASAP so you can have a look.

Ok, but I still think a tryFormat() has it's uses in V4L2Device.

I've just rebased this series on top of your CameraConfiguration
changes, and you added a Todo: to validate the configuration against the
device.

I've updated this series to use that, and instead perform the
tryFormat() in UVCCameraConfiguration::validate()

Posting to follow...


> 
>> Kieran Bingham (2):
>>   libcamera: v4l2_device: Add tryFormat support
>>   libcamera: pipeline: uvc: Try a default format against the device
>>
>>  src/libcamera/include/v4l2_device.h |  7 +++++--
>>  src/libcamera/pipeline/uvcvideo.cpp | 11 +++++++++--
>>  src/libcamera/v4l2_device.cpp       | 29 +++++++++++++++++++++++------
>>  3 files changed, 37 insertions(+), 10 deletions(-)
>>
>