W3C home > Mailing lists > Public > www-svg@w3.org > September 2010

ACTION-2854 - Go through the MAE spec and the HTML 5 spec for video events and report back to the SVG WG

From: Jean-Claude Dufourd <jean-claude.dufourd@telecom-paristech.fr>
Date: Fri, 10 Sep 2010 13:40:14 +0200
Message-ID: <4C8A191E.6020703@telecom-paristech.fr>
To: www-svg@w3.org
  Dear all,

Here are preliminary results from my action, for discussion.
The MAE state chart is at:
http://www.w3.org/TR/MediaAccessEvents/images/stateChart.png
The HTML5 video does not have a state chart, and I have tried to 
reconstruct one from the events definition, attached.
I am not sure about the two arrows in deeper blue (one missing 
transition, one that may not apply to the wait state)

As far as states are concerned, we can match:
- MAE "setting session" with HTML5 "beginning" (the state names are mine)
- MAE "session set up" with HTML5 "got metadata"
- MAE "reception state" with HTML5 "got data"
- MAE "reception and playing state" with HTML5 "playing"

MAE "playing state" is unmatched: HTML5 does not distinguish the case 
where the data reception is complete and the playing goes on, but it 
looks like a compatible extension of HTML5.
The HTML5 suspended state is unmatched in MAE, but it could be thought 
of as refinement of "reception state".

For events, we can match:
- MAE BeginSessionSetup with HTML5 loadstart
- MAE EndsessionSetup with HTML5 loadedmetadata
- MAE Playable and NotPlayable with HTML5 playing and waiting
- MAE DataReceptionProgress with HTML5 progress

It is more difficult to match:
- MAE DataRequest is sent upon sending a data request to the server, 
whereas HTML5 loadeddata is sent when the user agent can render the 
media data <http://www.w3.org/TR/html5/video.html#media-data> at the 
current playback position 
<http://www.w3.org/TR/html5/video.html#current-playback-position> for 
the first time.
- HTML5 play and pause are only related to the script function calls 
play() and pause(); I do not see them as very useful.

HTML5 suspend, canplay and canplaythrough are compatible extensions of MAE.

The definition of HTML5 play event is incoherent: if play() happens 
before the video is in "got data" state, then the play event cannot yet 
be sent.
There is a missing transition back from the HTML5 suspend state: I think 
it should be added.

HTML5 video is definitely geared toward "download and play", and "http 
streaming" (or "pseudo streaming").
MAE was geared toward RTP/RTSP, which are dead, or other forms (?) of 
true streaming. The decline of true streaming is removing arguments for MAE.

Question: would the HTML5 guys accept to add a state chart ? one more 
state ? fixing the play and pause definitions, maybe removing them ?
Best regards
JC

-- 
JC Dufourd
Directeur d'Etudes/Professor
Groupe Multimedia/Multimedia Group
Traitement du Signal et Images/Signal and Image Processing
Telecom ParisTech, 46 rue Barrault, 75 013 Paris, France
Tel: +33145817733 - Mob: +33677843843 - Fax: +33145817144




Screen_shot_2010-09-10_at_13.36.10_.png
(image/png attachment: Screen_shot_2010-09-10_at_13.36.10_.png)

Received on Friday, 10 September 2010 11:40:45 GMT

This archive was generated by hypermail 2.3.1 : Friday, 8 March 2013 15:54:46 GMT