Experiments with HTML5 video and media fragment URI references

URI Query Example

Davy Van Deursen of the W3C Media Fragments working group implemented a demonstration of media fragment URIs using the URI query (?) mechanism on the NinSuna platform. It supports only the time and the track dimension - not the id or xyzh dimensions. It also does not (yet) support URI fragments (#) as a specification for media fragment URIs. It will return a complete resource for a query such as: http://schutz.elis.ugent.be:8080/DownloadServlet/fragf2f.ogg?t=2,9&track='mp4_1'.

NinSuna is implemented in Java and is both a HTTP and RTSP server. It supports both MP4 and Ogg files.

The following video is a Ogg video served by NinSuna and allows loading different resources by changing the url given on the <video> element:

Use t=3,9 (in seconds) for a single time interval, ts=2,6;10,15 (in seconds) to combine multiple time intervals, and track='ogg_1' for video track / track='ogg_2' for audio track.

URI Fragment Example

Silvia Pfeiffer of the W3C Media Fragments working group implemented a demonstration of media fragment URIs using the URI fragment (#) mechanism and the HTML5 video element's video seeking functionalities using a new URI load() on the video element. It does not support URI queries (?) on the given server and only works with HTTP. It supports only time fragments and Ogg video.

Note: Jumping around on the video's timeline is quite slow, in particular for a reload, because the browser needs to determine the duration of the video. When using oggz-chop on the server, you can add a X-Content-Duration header. In this demo, that has been hard coded into a .htaccess file on the server.

Note: The demo works best in Firefox version >= 3.5, but also in the latest experimental releases of Safari (with XiphQT installed), Opera and Chrome. It will not work in IE.

Note: The demo only takes time in float format for seconds - no other parsing or even error handling has been implemented yet.

Thanks to the Orange Open Movie Team for the Creative Commons licensed "Elephants Dream" movie that was used as an example here, (c) copyright 2006, Blender Foundation / Netherlands Media Art Institute / www.elephantsdream.org.