Firefox HTML5 video and audio update
A week or so ago I updated the linux build of the gstreamer based HTML5 video implemention with some fixes that make it work nicely with the public sites using <video>. This includes wikimedia and metavid. Video's on those sites with that build show a much better user experience than previous builds.
Two new backends are in progress by other Kiwi Mozilla team members. A DirectShow backend for Windows being developed by Chris Pearce and a QuickTime backend for Mac OS X being developed by Matthew Gregan.
The git repository has been updated to include the start of an <audio> element implementation. Currently only the gstreamer backend has that support. Audio plays but there is no support for the 'controls' attribute and therefore no user interface yet. You can build your own with JavaScript though.
The git repository is based on regular imports of the Mozilla CVS repository. This repository tracks Firefox 3 which is close to being released so updates to CVS are few and far between. The video/audio work will not be in Firefox 3. The plan is to have them in a release soon after, scheduled for around the end of the year. If all goes well this will have backends for gstreamer, DirectShow and QuickTime for the relevant platforms.
The Mozilla repository for this release is currently a Mercurial repository called mozilla-central. I've not yet migrated my work over to this repository but will do so soon. My Firefox git repository now has a branch containing a regular import of the mozilla-central mercurial repository. Moving over to mozilla-central should just be a simple case of merging that branch into the video work.
The bugzilla bugs with the patches for this work will be updated in the next day or so. I wanted to get the refactoring for the <audio> element done before updating them for review.
Categories: firefox
Two new backends are in progress by other Kiwi Mozilla team members. A DirectShow backend for Windows being developed by Chris Pearce and a QuickTime backend for Mac OS X being developed by Matthew Gregan.
The git repository has been updated to include the start of an <audio> element implementation. Currently only the gstreamer backend has that support. Audio plays but there is no support for the 'controls' attribute and therefore no user interface yet. You can build your own with JavaScript though.
The git repository is based on regular imports of the Mozilla CVS repository. This repository tracks Firefox 3 which is close to being released so updates to CVS are few and far between. The video/audio work will not be in Firefox 3. The plan is to have them in a release soon after, scheduled for around the end of the year. If all goes well this will have backends for gstreamer, DirectShow and QuickTime for the relevant platforms.
The Mozilla repository for this release is currently a Mercurial repository called mozilla-central. I've not yet migrated my work over to this repository but will do so soon. My Firefox git repository now has a branch containing a regular import of the mozilla-central mercurial repository. Moving over to mozilla-central should just be a simple case of merging that branch into the video work.
The bugzilla bugs with the patches for this work will be updated in the next day or so. I wanted to get the refactoring for the <audio> element done before updating them for review.
Categories: firefox
Labels: mozilla

9 Comments:
Hi Chris,
I just wanted to ask, will the backends play any format they support or will the implementation impose any limits? Despite destroying my blog I'm still nervous about the prospects of introducing this tag so soon. W3Schools uses a .wmv in their example code of their video tag documentation which I find eerily ominous:
http://www.w3schools.com/tags/html5_video.asp
Take care.
Hello.
Why doesn't Firefox use GStreamer for every platform like songbird does (or will do) - and maybe even reuse the code from songbird?
Anyway - nice work.
Hi Michael, currently the gstreamer backend plays any format it supports.
Safari 3.1 already has video element support and that works with any video format that quicktime supports (including Theora with the XiphQT plugin). So even if we restrict to particular formats it's likely that people will still use any video format that works with other browsers.
Yes, the .wmv example in w3schools is a shame :)
If/When a codec is hammered out as part of the W3C process then they'll at least be a single codec that is known to be supported across browsers.
quikee, it's certainly an option. The extra overhead of having to install gstreamer and distribute it with Firefox was a factor in the decision at the time.
If I was to ues GStreamer across all platforms I'd definitely be reusing Songbird's great work in that area btw! I met with the Songbird people last time I was in San Francisco to discuss GStreamer and things and they're a great bunch of people.
This post has been removed by the author.
About the format situation: Will an Ogg Theora implementation for the used backend be bundled with Firefox (or, as it will achieve the same, the Theora backend be added to the official builds)? That way it would be possible to ensure that there is at least one format that is guarantied to be available when Firefox is used.
@ Sveinung : He mentioned that we'll need to wait for the W3C to agree on and put in the HTML5 spec the name of one format for all vendors to implement. It was to be Ogg Theora until some of the vendors kicked up a stink about submarine patents which forced them to remove it from the wording, and now it's all up in the air waiting for some decision to be made..
Does DirectShow provide for the audio tag on windows too?
In terms of the search for a patent/royalty-free codec, why isn't Dirac ever mentioned in these discussions?
http://en.wikipedia.org/wiki/Dirac_(codec)
DirectShow isn't a very happy framework when being used for streaming. I think it would be smarter to bundle a minimal GStreamer framework with Firefox like Opera plans to do and also include a DirectShow bridge for Firefox Windows, while including a QuickTime bridge for Firefox Mac.
Post a Comment
<< Home