Re: [mediacapture-image] The (bool or ConstrainDouble) case for pan/tilt/zoom is unclear (#225)

@alvestrand can clarify his proposal, but note that he mentioned "request permission" and "apply setting" which is not exactly the same thing as capabilities and actions.

My proposal is that we don't need anything specific for permissions in the API. I think we can have a separate boolean constraint to request the capability while leaving the properties unconstrained.
The other properties (pan, tilt, and zoom) can also implicitly request capability when present, so that it's not necessary to use the boolean one.
Browsers should have some freedom to decide when/how to implement a UI prompt for permissions.

An alternative approach that I'm also OK with (which I was not so convinced about before) is just having the double constraints and say that unconstrained but present constraints such as pan:{}, etc., should be interpreted as requesting capability. No booleans involved.
Then it's up to the browser when/how to request permissions.
It can be a bit confusing since pan/tilt/zoom are coupled permission/capability wise, but it would work and still be consistent with the general constrainable pattern. It's not be the first case of correlated constrainable properties.

I don't like the (boolean or DoubleConstraint) approach due to its inconsistency with the rest of the constrainable pattern. Having a boolean at the media type level (e.g., {audio:true, ptz:true}) would also be very inconsistent since PTZ is video from camera, not a new media type.


-- 
GitHub Notification of comment by guidou
Please view or discuss this issue at https://github.com/w3c/mediacapture-image/issues/225#issuecomment-624462826 using your GitHub account

Received on Wednesday, 6 May 2020 06:19:29 UTC