[mediacapture-screen-share] surfaceSwitching seems under-specified (#241)

jan-ivar has just created a new issue for https://github.com/w3c/mediacapture-screen-share:

== surfaceSwitching seems under-specified ==
[surfaceSwitching](https://w3c.github.io/mediacapture-screen-share/#dom-displaymediastreamoptions-surfaceswitching) _"signals whether the application would like the user agent to offer the user an option to dynamically switch the captured [display surface](https://w3c.github.io/mediacapture-screen-share/#dfn-display-surface)."_

This is alluding to a feature that isn't specified anywhere, and it's unclear how it would manifest and be JS observable.

In particular, all MediaStreamTrack are created with a [[[Source]]](https://w3c.github.io/mediacapture-main/#dfn-source-0) internal slot that never changes, which (even though it's not exposed directly), governs invariants like: all clones have the same source. It is unclear whether UAs who implement "switching" have done so by "switching the source of the source", so to speak, to maintain this invariant.

We should probably whether there are observable aspects: does the `track.label` change? There might be capture-controller and capturee-side impacts as well (to remote actions, identity, even cropTo).

Lastly, we might also want to limit switching between different displaySurface types, unless we have compelling use cases for that. Switching between sources with different levels of [elevated permissions](https://w3c.github.io/mediacapture-screen-share/#elevated-permissions), to mitigate users sharing a safer source, and be switched to a less-safe source.

Please view or discuss this issue at https://github.com/w3c/mediacapture-screen-share/issues/241 using your GitHub account

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

Received on Monday, 10 October 2022 21:02:06 UTC