HTML5
The HTML5 specification includes support for <video> and <audio> tags.
This page outlines use of HTML5 syntax with Xiph.Org codecs, particularly Ogg Theora and Ogg Vorbis. It is also a place to collect ideas for ogg.org.
See also the Theora Cookbook for a guide to streaming and working with Ogg Theora.
Browser Support
Our list of TheoraSoftwarePlayers lists many general-purpose media players that support Ogg Theora.
The following web browsers support HTML5 with Ogg video:
Mozilla Firefox
Firefox 3.5 includes "support for the HTML5 <video> and <audio> elements including native support for Ogg Theora encoded video and Vorbis encoded audio." See Using audio and video in Firefox at the Mozilla Developer Center for more info.
Opera
In A call for video on the web - Opera <video> release on Labs, Opera announce that they "have created an experimental build of our browser for Windows, Mac and Linux with ... support for the <video> element/Ogg Theora built in".
The article contains links to experimental builds of Opera 9.52, and provides some simple examples of HTML5 <video> markup.
Google Chrome
Unstable builds are available from the dev-channel. The first version supporting Ogg Theora was chrome 3.0.182.2.
Microsoft Internet Explorer
- The default install of VLC includes the activeX extension that enables inline ogg theora playback.
- You can also install the direct show filters for windows media player.
Plugins
Web Video sites
For more examples of Ogg Theora video, see List of Theora videos.
The following web sites support HTML5 with Ogg Theora.
Community upload sites
These sites allow anyone to upload video, and provide transcoding to Ogg:
- DailyMotion. See also DailyMotion's Open Video Demo (restricted to Firefox 3.5)
- Chris Double's Tinyvid (transcoding via Firefogg)
Archival and Reference
Sites that curate video for general archival and reference purposes, and allow anyone to upload relevant material:
Projects
- metavid: The Open Video archive of the US Congress
- pad.ma: Public Access Digital Media Archive is an online archive of densely text-annotated video material, primarily footage and not finished films.
Conferences
- linux.conf.au
- DebConf: on the individual conference pages, e.g. [1]
- The FOMS workshop videos: proceedings from a workshop on free and open multimedia software.
Technology for setting up your own site
HTML5 <video> embedding
There are various ways to provide HTML5 video content with fallbacks for older browsers and non-free codecs.
You can include one of the scripts below, or modify source from an existing page such as the HTML of CELT presentations.
mv_embed
Mv_embed is "a javascript library for easy embedding of ogg theora/vorbis media with the html5 tag. Once the script is included you can include an inline ogg theora clip with:
<video src="mymovie.ogg">
"Mv_embed will then rewrite the video tag to whatever playback method is available on the client be it native support, java cortado, mplayer or vlc".
See also mv_embed on MediaWiki.
iTheora
Example sites using iTheora:
video4all
Uses browser specific technology (.htc, .xbl, or plain .js) to rewrite video tags to fall back to H.264 in Flash for legacy browsers, while providing H.264 natively to Safari and Theora for Mozilla. Roughly speaking a script version of Kroc Camen's pure HTML Video For Everybody solution. Doesn't (currently) use any Theora based fallbacks.
Video for Everybody
Video for Everybody is "a chunk of HTML code that embeds a video into a website using the HTML5 <video> element."
- Comment: We really shouldn't be plugging a solution which eschews cortado as a fall back in favor of FLV. A pure HTML triple check video/java/youtube would be better, but no pure HTML solution perform a canplaytype so it will break for safari users without xiphqt. Is "possible to add raw HTML but no JS" a common enough situation that a JS free solution is really needed? --Gmaxwell 22:58, 30 June 2009 (PDT)
- Comment: It's clear that this solution makes a few compromises in order to be JS-free. The code is both fragile and frightening for reasons that make sense with regard to the original author's goals but aren't relevant if e.g. promoting Theora adoption takes precedence over a distaste for Java and/or Javascript. --Bod 06:03, 6 July 2009 (PDT)
HTML5 <audio> embedding
There are various ways to provide HTML5 audio content in Vorbis and there are Java and Flash fallbacks for older browsers (and non-free codecs though this is even less necessary than it is in the case of Theora video).
Vorbis via Flash 10
fogg (aka FVorbis), Jorbis code automatically ported to Haxe and then compiled to AS3
Alchemy Vorbis, Adobe's Alchemy allows compiling C and C++ plus to AS3. Vorbis is one of the demo libraries they ported.
flash.j-ogg, haxe and actionscript3 translation of j-ogg
Vorbis via Java
Vorbis via Javascript and <audio> tag
Encoding, transcoding
Firefogg
Firefogg provides "video encoding and uploading for Firefox". This includes a Firefox extension that allows users to encode video to Ogg Theora on their own computer while uploading it to your site. This simplifies the upload for users as they can simply choose from their existing video files, and simplifies your web site by allowing you to deal with only one video format, and offloading the CPU cycles required for encoding to the user.
Content management
Backend servers
- oggz-chop allows you to serve time ranges of Ogg media over HTTP by any web server that supports CGI. Examples of such time range requests are http://www.example.com/video.ogv?t=200/600 which serves the segment of video.ogv from 200s-600s. This allows users to instantly jump to any point in a video, and you can put links in your web application to play arbitrary scenes.