Re: [PATCH 2/2] media: v4l2: map UVC_CT_ROLL_ABSOLUTE_CONTROL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Laurent,

On Wed, 2024-06-12 at 23:31 +0300, Laurent Pinchart wrote:
> On Wed, Jun 12, 2024 at 08:31:14PM +0200, Gergo Koteles wrote:
> > Some new UVC cameras can report whether they are mounted in 'portrait
> > mode'.
> > 
> > Current roll degrees (-90, 0, 90, 180) are reported with
> > UVC_CT_ROLL_ABSOLUTE_CONTROL.
> 
> UVC_CT_ROLL_ABSOLUTE_CONTROL is about controlling the motion of the
> camera along the roll axis, while this patch series sounds like you want
> to support reporting the mounting orientation of the device, not cause
> the device to rotate. Is that right ?

The SET_CUR of UVC_CT_ROLL_ABSOLUTE_CONTROL is optional, so I think
it's for reporting also.

The cameras I've tested before can't roll the sensor, they only report
the angle/orientation.

Yes, I was thinking to support the mounting orientation report, however
I tried a friend's DJI Osmo Pocket 3, which can roll the sensor in +-
30˚ with ROLL_ABSOLUTE UVC control. It can also be
Panned/Tilted/Zoomed, very cool.

I think mapping UVC_CT_ROLL_ABSOLUTE_CONTROL to V4L2_CID_ROLL_ABSOLUTE
would be useful. I can reword the commit message a bit if you'd like.

> 
> If that's the case, the right V4L2 control to use would be
> V4L2_CID_CAMERA_SENSOR_ROTATION. Mapping it to
> UVC_CT_ROLL_ABSOLUTE_CONTROL is problematic though, as
> UVC_CT_ROLL_ABSOLUTE_CONTROL is not meant for this in the UVC spec. We
> would likely need a quirk to control how it gets used.
> 

I can also create a quirk for the other two cameras to map
UVC_CT_ROLL_ABSOLUTE_CONTROL to V4L2_CID_CAMERA_SENSOR_ROTATION.

Maybe it can be detected if CT_ROLL_ABSOLUTE_CONTROL doesn't have
SET_CUR, default 0, step 90.

> 
Best regards,
Gergo






[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux