This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
The "removetrack" and "addtrack" events are out of sync with their HTML5 media definitions. In a number of places in the MSE spec, a track is added or removed and a simple event fired. For example, step 5.1.5 under 3.5.6 “Initialization Segment Received” currently says: “Queue a task to fire a simple event named addtrack at the AudioTrackList object referenced by the audioTracks attribute on this SourceBuffer object.” The HTML5 media specification has this language for addition of AudioTrack or VideoTracks under 4.8.10.5 “Loading the media resource”: “Fire a trusted event with the name addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, with the track attribute initialized to the new AudioTrack object, at this AudioTrackList object.” Similar trusted event language should be used in MSE. This affects: AddTrack in 3.5.6 Initialization Segment Received (steps 5.1.5, 5.1.7, 5.2.5, 5.2.7, 5.3.5 & 5.3.7) RemoveTrack in 2.2 Methods removeSourceBuffer (steps 5.1.4, 5.1.6, 7.1.4, 7.1.6, 9.1.4 & 9.1.6)
Paragraph numbers have changed slightly since this was opened. Here are the specific new proposed wordings for each removetrack and addtrack events: Detail new versions: In section 2.2 Methods under removeSourceBuffer: 5.3.4 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the AudioTrackList object referenced by the audioTracks attribute on this SourceBuffer object. 5.3.6 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the AudioTrackList object referenced by the audioTracks attribute on this HTMLMediaElement object. 7.3.4 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the VideoTrackList object referenced by the videoTracks attribute on this SourceBuffer object. 7.3.6 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the VideoTrackList object referenced by the videoTracks attribute on this HTMLMediaElement object. . 9.3.4 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the TextTrackList object referenced by the textTracks attribute on this SourceBuffer object. 9.3.6 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the TextTrackList object referenced by the textTracks attribute on this HTMLMediaElement object. In section 3.5.6 Initialization Segment Received 5.1.5 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the AudioTrackList object referenced by the audioTracks attribute on this SourceBuffer object. 5.1.7 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the AudioTrackList object referenced by the audioTracks attribute on this HTMLMediaElement object. 5.2.5 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the VideoTrackList object referenced by the videoTracks attribute on this SourceBuffer object. 5.2.7 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the VideoTrackList object referenced by the videoTracks attribute on this HTMLMediaElement object. 5.3.4 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the TextTrackList object referenced by the textTracks attribute on this SourceBuffer object. 5.3.6 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the TextTrackList object referenced by the textTracks attribute on this HTMLMediaElement object.
Marking all pre-Last Call bugs
Slightly streamlined wording: 2.2 Methods – removeSourceBuffer 5.3.4 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the SourceBuffer audioTracks list. 5.3.6 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the HTMLMediaElement audioTracks list. 7.3.4 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the SourceBuffer videoTracks list. 7.3.6 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the HTMLMediaElement videoTracks list. 9.3.4 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the SourceBuffer textTracks list. 9.3.6 Queue a task to fire a trusted event named removetrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the HTMLMediaElement textTracks list. 3.5.6 Initialization Segment Received 5.1.5 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the AudioTrackList object referenced by the audioTracks attribute on this SourceBuffer object. 5.1.7 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the AudioTrackList object referenced by the audioTracks attribute on the HTMLMediaElement. 5.2.5 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the VideoTrackList object referenced by the videoTracks attribute on this SourceBuffer object. 5.2.7 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the VideoTrackList object referenced by the videoTracks attribute on the HTMLMediaElement. 5.3.4 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the TextTrackList object referenced by the textTracks attribute on this SourceBuffer object. 5.3.6 Queue a task to fire a trusted event named addtrack, that does not bubble and is not cancelable, and that uses the TrackEvent interface, at the TextTrackList object referenced by the textTracks attribute on the HTMLMediaElement.
Changes committed https://dvcs.w3.org/hg/html-media/rev/1ac9c2205a7b