This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
Specification: http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html Section: http://www.whatwg.org/specs/web-apps/current-work/#exclusivetracklist Comment: As specified, video can't be disabled. This is needed for "video mute". Suggested solution: Move "enable" and "disable" from MultipleTrackList to TrackList. Posted from: 2620:0:1043:0:216:36ff:feee:f7c9 User agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.28 Safari/534.24
What does this mean? If neither audio or video is wanted, why have a <video> element at all? How about <video preload="none">?
This is an use case from interactive multimedia, not streaming. The main use case is that you're in a videoconference, and want to turn off sending video to the conference temporarily. You might or might not want to send audio; the typical case is that you want to stay silent and unseen, but be ready to be visible and audible at the touch of a button, without the need to do connection reconfiguration. A second use case is to temporarily turn off video to save bandwidth if congestion control is not working properly for you.
I agree that this should be fixed but I don't think the proposed solution is right. If enable() is moved to TrackList then ExclusiveTrackList would not be exclusive anymore, right?
Per-Erik, I don't understand your comment. I don't see how having a "disable" function would make ExclusiveTrackList any less exclusive. It would simply disable the current track in ExclusiveTrackList, which is the whole point: I need video mute. Can you explain your concern more?
Moving enable() to TrackList would allow you to select multiple tracks in an ExclusiveTrackList. Perhaps only moving disable() would work, you could then use disable() to disable your only selected track, but it would be a bit asymmetrical to use disable() to disable and then select() to enable.
This was the use case for which the PAUSED state on GeneratedStream was for, IIRC. Is the request here to be able to turn off the camera, so that even the local mirror is disabled? Or is the request to be able to temporarily mute an outgoing stream in PeerConnection? Or something else?
The request is for a feature that allows one outgoing video stream being sent in PeerConnection to be turned off temporarily, without affecting the state of a corresponding outgoing audio stream. I think it's an UI design issue whether or not the self-view feedback channel should turn black when this happens; I don't think this should be mandated by the API specification (one can imagine wanting to turn off the outgoing video while using the self-view channel to adjust the camera, for instance). There is a symmetric requirement to be able to turn off the audio stream without affecting the video stream (audio mute), but that seems to be adequately covered by the enable() and disable() functions of MultipleTrackList. I can't see a PAUSED state on http://www.whatwg.org/specs/web-apps/current-work/#generatedstream, so I'm not sure what the semantics of that was.
enable() and disable() would also stop the local audio (or video, if we added it for video). So what we need is a way to pause an outgoing stream's individual channels. Interesting. Tricky.
See comments in bug 12530.
EDITOR'S RESPONSE: This is an Editor's Response to your comment. If you are satisfied with this response, please change the state of this bug to CLOSED. If you have additional information and would like the editor to reconsider, please reopen this bug. If you would like to escalate the issue to the full HTML Working Group, please add the TrackerRequest keyword to this bug, and suggest title and text for the tracker issue; or you may create a tracker issue yourself, if you are able to do so. For more details, see this document: http://dev.w3.org/html5/decision-policy/decision-policy.html Status: Accepted Change Description: see diff given in bug 12530 Rationale: Concurred with reporter's comments.
mass-move component to LC1