<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>22035</bug_id>
          
          <creation_ts>2013-05-14 23:17:23 +0000</creation_ts>
          <short_desc>The &quot;removetrack&quot; and &quot;addtrack&quot; events are out of sync with their HTML5 media definitions</short_desc>
          <delta_ts>2013-06-01 21:38:54 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>HTML WG</product>
          <component>Media Source Extensions</component>
          <version>unspecified</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows NT</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard>PRE_LAST_CALL</status_whiteboard>
          <keywords>a11y, a11ytf, media</keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jerry Smith">jdsmith</reporter>
          <assigned_to name="Aaron Colwell">acolwell</assigned_to>
          <cc>acolwell</cc>
    
    <cc>cooper</cc>
    
    <cc>cyril.concolato</cc>
    
    <cc>mike</cc>
    
    <cc>public-html-media</cc>
          
          <qa_contact name="HTML WG Bugzilla archive list">public-html-bugzilla</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>87696</commentid>
    <comment_count>0</comment_count>
    <who name="Jerry Smith">jdsmith</who>
    <bug_when>2013-05-14 23:17:23 +0000</bug_when>
    <thetext>The &quot;removetrack&quot; and &quot;addtrack&quot; 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 &amp; 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 &amp; 9.1.6)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>88108</commentid>
    <comment_count>1</comment_count>
    <who name="Jerry Smith">jdsmith</who>
    <bug_when>2013-05-22 23:25:52 +0000</bug_when>
    <thetext>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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>88140</commentid>
    <comment_count>2</comment_count>
    <who name="Aaron Colwell">acolwell</who>
    <bug_when>2013-05-23 18:30:56 +0000</bug_when>
    <thetext>Marking all pre-Last Call bugs</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>88213</commentid>
    <comment_count>3</comment_count>
    <who name="Jerry Smith">jdsmith</who>
    <bug_when>2013-05-24 20:19:38 +0000</bug_when>
    <thetext>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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>88541</commentid>
    <comment_count>4</comment_count>
    <who name="Aaron Colwell">acolwell</who>
    <bug_when>2013-06-01 21:38:54 +0000</bug_when>
    <thetext>Changes committed
https://dvcs.w3.org/hg/html-media/rev/1ac9c2205a7b</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>