Re: [mediacapture-image] Add pan and tilt constraints

To add my POV to this discussion, PanTilt is exposed by the [UVC 1.5 Spec](https://tinyurl.com/uvc-1-5-specification), Sec. "4.2.2.1.14 PanTilt (Absolute) Control" and "4.2.2.1.15 PanTilt (Relative) Control"; UVC is the underlying bus for all Desktop OSs, including Windows (whereas mobile platforms use MIPI). IMHO, that gives a large and stable enough deployed base to justify its inclusion in the Spec, also taking into account that if these are not supported by the concrete hardware, they won't appear in the `MediaStreamTrackCapabilities`.  Also, the closer the Spec looks like the UVC the easier they'll match; UVC defines the units as `Signed Number` of size `4` bytes, so: int?.

Re. `pantilt` order, I guess @alexshalamov is aiming at including, or not, the path to get from a given "coordinate" to another as part of the Spec, e.g. from `pan=0`, `tilt=0`, to `pan=1`, `tilt=1`, the underlying hardware could manipulate `pan` first, then `tilt`, or viceversa, or both at the same time, and, e.g. at what speed.  Looking at the UVC 1.5 Spec I don't see much definition for these issues, so we might simply need to explicit that the way "coordinates" in the `pantilt` space are reached is UA specific.  

Also note that if `roll` is included, it changes the game since the application of `pt` and `roll` would not commutative and we'd be in the deep waters of the quaternions.   Since `roll` is separated in the UVC spec, perhaps we should leave it for another PR, and then specify some order. Personally I haven't found any webcams with roll, so we might also need some evidence of implementations in the wild.

-- 
GitHub Notification of comment by yellowdoge
Please view or discuss this issue at https://github.com/w3c/mediacapture-image/pull/182#issuecomment-309910110 using your GitHub account

Received on Tuesday, 20 June 2017 22:29:25 UTC