[mediacapture-handle] .sendCaptureAction() seems misplaced on the track (#65)

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

== .sendCaptureAction() seems misplaced on the track ==
[track.sendCaptureAction](https://w3c.github.io/mediacapture-handle/actions/index.html#dom-mediastreamtrack-sendcaptureaction), the API to send supported actions to the captured page seems misplaced on the MediaStreamTrack. The reasons are:

1. [MediaStreamTrack](https://w3c.github.io/mediacapture-main/#dom-mediastreamtrack) is a [clonable](https://w3c.github.io/mediacapture-main/#dom-mediastreamtrack-clone) & [constrainable](https://w3c.github.io/mediacapture-main/#constrainable-interface) _media consumption_ abstraction. One source → many consumers. Whereas methods like [track.cropTo](https://w3c.github.io/mediacapture-region/#dom-browsercapturemediastreamtrack-cropto) are per-clone, [sendCaptureAction](https://w3c.github.io/mediacapture-handle/actions/index.html#dom-mediastreamtrack-sendcaptureaction) would affect ALL clones, a leaky abstraction. The progression of the capture is not a property of a single video track.
2. Would both the video and audio track have this method? Why (not)? It's confusing.

We’ve stepped out of media consumption to remote control.

A higher level object seems needed, one that isn't clonable or necessarily shared with every media consumer. Likewise, https://github.com/w3c/mediacapture-screen-share/issues/190 seems to similarly need this higher level object.

See https://github.com/w3c/mediacapture-handle/issues/12#issuecomment-1051021052 for ideas on such a higher level object, which I'm scheduled to present [tomorrow](https://docs.google.com/presentation/d/1ulgTHkHcpUa7FBtPHYYsUL1ATjO1meRmW5ghB9ELDXg/edit#slide=id.g1261fcdd2e4_0_410). 

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


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

Received on Monday, 16 May 2022 15:01:00 UTC