[RFC] How to get current position/status of iris/focus/pan/tilt/zoom?

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

 



When using V4L2_CID_IRIS/FOCUS/PAN/TILT/ZOOM_ABSOLUTE/RELATIVE, how do you know
when the new position has been reached? If this is controlled through a motor,
then it may take some time and ideally you would like to be able to get the
current absolute position (if the hardware knows) and whether the final position
has been reached or not.

In addition, it should be possible to raise fault conditions.

The way the ABSOLUTE controls are defined is ambiguous since it doesn't say
anything about what it returns when you read it: is that the current absolute
position, or the last set absolute position? I suspect it is the second one.

If it is the second one, then I propose a V4L2_CID_IRIS_CURRENT control (and
ditto for the other variants) that is a read-only control returning the current
position with the same range and unit as the ABSOLUTE control.

For the status/fault information I think the V4L2_CID_AUTO_FOCUS_STATUS comes
close, but it is too specific for auto focus. For manually positioning things
this might be more suitable:

V4L2_CID_IRIS_STATUS	bitmask

	V4L2_IRIS_STATUS_MOVING (or perhaps _BUSY?)
	V4L2_IRIS_STATUS_FAILED

And ditto for the other variants.

Interaction between V4L2_CID_FOCUS_STATUS and AUTO_FOCUS_STATUS:

If auto focus is enabled, then FOCUS_STATUS is always 0, if auto focus is
disabled, then AUTO_FOCUS_STATUS is always IDLE.

Comments? Ideas?

Regards,

	Hans
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[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