Re: [mediacapture-image] Make true a first-class value for pan, tilt and zoom constraints (#257)

Neither `ptz` media stream constraint (`navigator.mediaDevices.getUserMedia({video: {...}, ptz: true}`) nor `ConstrainDoubleOrBoolean` got support in the meeting.

`ConstrainDoubleOrBoolean` would allow:

- `navigator.mediaDevices.getUserMedia({video: {pan: true}})` and
  `navigator.mediaDevices.getUserMedia({video: {pan: {ideal: true}}})`
  These would do the same as what `navigator.mediaDevices.getUserMedia({video: {pan: true}})` and `navigator.mediaDevices.getUserMedia({video: {pan: {}}})` should do i.e. try to select a pan capable camera.
- `navigator.mediaDevices.getUserMedia({video: {pan: false}})` and
  `navigator.mediaDevices.getUserMedia({video: {pan: {ideal: false}}})`
  These would propably do the same as what `navigator.mediaDevices.getUserMedia({video: {pan: false}})` and `navigator.mediaDevices.getUserMedia({video: {}})` should do i.e. not expose pan capability.
- `navigator.mediaDevices.getUserMedia({video: {pan: {exact: true}}})` and
  `navigator.mediaDevices.getUserMedia({video: {pan: {exact: false}}})`
  These would throw a TypeError because required PTZ constraints should now do that.
- `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: {ideal: true}}]}})` and
  `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: {ideal: false}}]}})`
  But ideal advanced constraints are not useful (that is not limited to PTZ constraints applies to all constraints).
- `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: true}]}})` and
  `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: {exact: true}}]}})`
  These would do the same as what `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: true}]}})` and `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: {}}]}})` should do i.e. try to select a pan capable camera.
- `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: false}]}})` and
  `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: {exact: false}}]}})`
  These would propably do the same as what `navigator.mediaDevices.getUserMedia({video: {advanced: [{pan: false}]}})` and `navigator.mediaDevices.getUserMedia({video: {}})` should do i.e. not expose pan capability.

So `ConstrainDoubleOrBoolean` does not add anything useful.

That of course does not mean that the effect of `{pan: true}` on fitness distance or device selection should not be specified.

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


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Tuesday, 29 September 2020 14:07:27 UTC