[mediacapture-record] Proposal: Specify ability to pause and resume between adding and removing MediaStreamTracks to an active MediaStream

guest271314 has just created a new issue for https://github.com/w3c/mediacapture-record:

== Proposal: Specify ability to pause and resume between adding and removing MediaStreamTracks to an active MediaStream ==
It is presently possible to record multiple video or audio to a single `webm` `Blob` using `canvas.captureStream()` and `AudioContext.createMediaStreamDestination()`. This functionality should be possible

1. Adding and removing `MediaStreamTrack`s to an `active` `MediaStream`;
2. Changing the value of `src` attribute of an `HTMLMediaElement` where an active `MediaStream` is set at `srcObject`

For 1. the `MediaStream` does not reach an `inactive` state; video or audio tracks are added to the stream and video and/or audio tracks previously rendered at the element are removed from the `MediaStream`.

For 2. the `MediaStream` becomes `inactive` momentarily while the media element loads the new media.

For either case the developer should have some means to pause and resume recording of the media while the tracks are being added and removed, or only added to the `MediaStream`. The `MediaRecorder` instance should resume recording the newly added tracks to the previously recorded data when the new `MediaStreamTrack`s are active.

Currently, when a `MediaStreamTrack` is added to an active `MediaStream`, only the initial `MediaStreamTrack`s are recorded; though if tried enough there could be cases where parts of audio or video from subsequent `MediaStreamTrack`s are recorded. This behaviour should be consistent; with the user having the clear ability to pause and resume `MediaRecorder` between adding and removing multiple `MediaStreamTrack`s, with the result being a single file comprising the totality of recorded media.



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

Received on Sunday, 18 March 2018 16:14:39 UTC