Posts filed under 'html5'
July 30th, 2008
Looks like the code to support ogg vorbis/theora playback has made its way into the nightly builds of firefox! This is a really great development! Mozilla’s has announced support for native theora support in ff 3.1. This will have a hugely positive effect on promoting free formats and ensuring current “non-free” formats stay cheep or free-as-in-beer. This is particularly bold of Mozilla in they are pioneering a “more free web” than the standards groups were able to agree on. As previously discussed some industry participation in the htm5 group discouraged a free baseline web video format citing submarine patent concerns. The power of the premier open source projects to ensure support of a free software ecosystem can not be overstated. Mozilla role here is hugely important and its great to see they have taken the right path to ensure the possibility of a bright future for free and open media.
Update: see Ginger’s excellent summary with historical contextualization, Mozilla hacker Robert O’Callahan’s Why Ogg Matters post, coverage on bush coder blog (the firefox video integration branch developer) and Greg Maxwell’s post (one of the key supporters of ogg media on wikipedia)

dale
June 18th, 2008
Firefox 3 download day was a huge success and it features many improvement over firefox2. But as they say you can’t please everybody, and download issues were not the only blip on this otherwise exciting launch. Perhaps lost in the hoopla over Fierfox 3 impressive new features set is the html5 video support which did not make it into this release. While Chris Double has done an excellent job in building cross platform ogg theora support into Firefox the new implementation strategy raises some questions about the future vitality of open media and open web standards.
Specifically Mozilla current implementation strategy proposes supporting video via hooks into the proprietary media platforms for windows and mac. i.e Firefox on mac will hook into quicktime, Firefox on windows will hook into direct show, while Firefox in Linux will hook into gstreamer… This approach risks abandoning support for a baseline free codec (ie ogg theora) for the video tag. We can only hope the base cross platform theora support code that is already written is not abandoned as they add in these hooks.
Its now clear that html5 is heading in a codec agnostic direction, thanks to “patent concerns” raised by Nokia and apple pushing forward with quicktime based video tag “support” in Safari 3.1. This of course makes it complicated for sites like wikipedia to count on the html5 video tag to support free media since apple is not going to make any attempts to support it on their own. This makes it slightly more complicated for us at metavid as well. (will have to do some more case detection with the mv_embed script).
What is not clear is mozilla’s long term strategy….
Proprietary media formats do best in proprietary media platforms. Free software does poorly when parts of the web are tied to proprietary platforms. Free software can flourish on an open web. From a purely business perspective anything Mozilla can do to promote a web that works well with free software will ultimately increase the vitality of free software platforms and ultimately increase firefox’s market share. Apple and Microsoft are certainly not going to pre-install mozilla as the default browser in their proprietary platforms.
But forces beyond mozilla’s control have made htm5 codec agnostic… What should mozilla do now?
They should take the sonbird approach and ship gstreamer across all platforms with native wrappers to direct show and quicktime to fall back on proprietary encoded content while ensuring baseline free codec and free media platform support. There are many reasons to go with an open community extensible free media platform, as outlined in the songbird blog…but let me mention a few more:
- Going with a GPL based media platform ensures they will not be subordinate to the same proprietary platforms that they are competing with. Ie Mozilla will control the media platform user experience rather than the host operating system media platform which has its own browser to promote.
- It ensures that the widely successful Firefox extension concept can be extended to the media platform in a cross platform friendly way. There is already a huge base of gstreamer plugins to build off of. Imagine a site that installs a simple client extension that enables transcoding from local high quality DV format directly into dirac or theora and uploading to the site… avoiding server side transcodes and associated quality loss. OR an extension that lets you do live brodcasts from your machine integrated with an associated web service or a full featured inbrowser video editor OR an extension that uses gstreamer to enable output to DVD iso from a collaboratively produced video sequence –these sort of killer apps can help propagate firefox.
- Doing gstreamer cross platform will make it easy to support future free codecs such as dirac in one pass, instead writing and maintaining codec extensions for every codec for each propitiatory platform and trying to ensure the experience is identical across both proprietary and free platforms.
- The code is already mostly written.
If Mozilla takes its own manifesto seriously hopefully they will be more forward thinking about the open media platform issue.
dale
December 11th, 2007
Leading up to the w3c video meeting tomorrow there has been a flurry of activity on slashdot and elsewhere, focusing on nokia resistance to a key component of the html5 video spec stating that video tag “should support Ogg Theora”. This key piece of the html spec has been removed from the latest draft. With proprietary web beneficiaries recommending a codec agnostic approach to the html5 video tag they would have us all stop worrying and love the proprietary web. Fortunately a lot of us think otherwise. Here is a short essay responding to some of the arguments against having the w3c recommend the theora codec.
Update: Check out Xiph’s press release, Digital Citizen’s “who benefits” essay, bluish coders comments (the theora for ff developer), about baseline video codecs and html5 by ginger of annodex & finally: the html 5 wars and why you should avoid them by spread open media
Theora is not widely used and has “lost” in the marketplace, the w3c has no place recommending a new not-widely supported codec. Let us rewind to October, 1996, here the w3c recommend a little used patent-free image format. How many png images where used on the web before it was a standard? Where there other proprietary image technologies of course, but adopting them or recommending an agnostic image tag would have crippled the “Full Potential of the Web” and today web sites benefit tremendously from png images even as companies such as Microsoft dragged their feat on full support for almost a decade.
theora quality is too low Work is being done to improve theora. But the key thing to keep in mind is theora is the best free codec which what matters for free software interoperability.
MPEG (h.264 mpg4 etc) have less patten risk since the mpeg group is behind them. Ogg theora is a submarine patent minefield One of the most common arguments against theora and is particularly unfounded. First off Xiph has conducted patent searches and the pattens covering vorbis and a irrevocable free license to the VP3 codec (which theora is based on) has been negotiated. But given how the patent system “works” in the US, all software is subject to submarine patents so the patent argument is essentially “theora is software”. The same argument Microsoft uses against Linux. Key to this argument is that you never point to any actual patents, rather try to create confusion in the marketplace to bolster your products position.
Subsequent arguments include no-big company has exposed themselves to distributing theora which I guess does not include Red Hat, Canonical, Novell and pretty much every linux distributer has been distributing ogg theora for years.
And Last but certainly not least is that licensing the mpeg technologies DOES NOT ELIMINATE YOUR EXPOSURE TO SUBMARINE PATENTS. In fact case history shows much more litigation on mpeg usage than theora. Multimedia Patent Trust v. Microsoft Corp., Qualcomm Inc. v. Broadcom Corp., SanDisk Corp. v. Audio MPEG, Inc. etc. In Lucent Technologies, Inc. v. Gateway, Inc. for example:
Lucent had not made any representations that its patents would be licensed through MPEG LA; to the contrary, Defendants such as Gateway were informed that they would need a license directly from Lucent. Moreover, the MPEG LA sublicensee agreement explicitly warns that the MPEG LA pool does not necessarily include all the patents necessary to practice the technology and that sublicensee signs the agreement aware of such risks. (Blackburn Dec. Ex. 20 §§ 4.2, 4.3.)
If a company really was concerned with submarine patent risk they should prefer ogg theora as it has a much better legal track record.
theora does not support DRM I suppose they should also propose a html DRM and a Image DRM “standard” at the same time. DRM is wrong for lots of reasons, DRM is not functional concept in free software nor is it a desirable technology by anyone but the old content industry. Either way it has no place in web standards recommendations.
mpeg is a non-discriminatory standard, “free does not matter” we don’t have a widely used free web video format now and things are “ok”
The fact that MPEG as a “standard” and non-discriminatory (can’t charge company A more than company B) is irrelevant. Being free is all that matters for interoperability with free browser distributions. Ogg theora is on the other hand perfectly compatible with being distributed in a proprietary system.
A codec agnostic implementation of the video tag is next to worthless. A simple javaScript library could accomplish the same thing. Codec agnostic video tag represents no significant difference from the object/embed tags that we already have today. If web developers can’t count on a given codec being supported the video tag is likely to go nowhere fast. If that approach is taken video will remain a second class web citizen wrapped up in proprietary encapsulations. The whole point of the w3c is to promote/develop interoperable technologies. In the current browser environment non-free implementations are simply not interoperable. The w3c would be going against their own position and obsoleting themselves in the process if they take the codec agnostic approach.
The drive for codec agnostic video tag is a well orchestrated effort to put a proprietary wedge into web video distribution platform. Codec agnostic video support lets proprietary technology providers squeeze hugely profitable wedge into the web platform. This represents a new, undesirable, untested and unhealthy direction for the web. With the exception of a few key sites such as wikipedia and others we are already quickly going towards proprietary web video. A proprietary web applies artificial scarcity to distribution costs and limits decentralization by pushing people towards service providers that can afford to make your message available. Pushing individuals away from meaningful control of the distribution and reception of their messages is a dramatic shift from what has made the web so powerful up until this point. These second degree consequences are only starting to be felt.
Key to the current environment is Adobe/On2 very lax in enforcing their proprietary codecs. They insure their IP proprietary is competitive with free codecs by very limited IP enforcement. (many sites today getting away with using ffmpegs flash video encoding for “free”). But we should be cautious and forward thinking and not give away ownership key portion of the web platform to a single corporation or industry group. Doing so is antithetical to what the web platform is and limits the Web full potential.
dale
September 18th, 2007
I hacked out a simple mediaWiki extension to use the mv_embed script. Its identical to the html based mv_embed except that description text is parsed as wiki text instead of html and it resolves file names for wiki video/image titles. This allows mediaWiki to easily include inline or external playlists. Having the playlist inline facilitates basic versioned sequence building. For now mod_annodex is need for segmentation, but I am working on a native php script that should allow easy integration of ogg segmentation wherever php is supported. Drag and drop sequences is also being working on in the metavid medaWiki extension but is still a few weeks away from public demoing. Watch for a screen capture post in the near future
Mv_embed is a key component of the metavid mediaWiki extension which I demoed at wikimania. This packaging allows other wiki sites to immediately make use of the mv_embed script to include sequences or individual metavid clips & arbitrary ogg theora encoded clips uploaded to their wikis. We are running it here on metavid.
So far its running on at least one other wiki that I help setup, Migrawatch.org. (more about migrawatch). Migrawatch is using the script to critically document political rhetoric around the immigration debate in congress.
While the script is being used on a few sites already and considerable effort has been put in for IE compatibility the playlist functions are relativly new so your millage may vary…check the known issues, and report stuff on the talk page for mv_embed.
dale
June 7th, 2007
Given the many parallel projects to bring ogg theora into the many browser platforms it can easily get confusing. In this post I will give an update on the embed video projects that I have been following in the development of the latest mv_embed script. This script is a rewrite of the mv embed script with the intentions of bridging support for video tag from the html5 spec to non html5 browsers. Once the mv_embed script is included it goes through the page and rewrites all the html5 video tags with whatever playback method the client supports, letting web developers use the future html5 video tag today! See the sample page.
The script works by creating a html element / javascript object that mapps html 5 video tag javascript calls to the appropriate methods on clients supported playback system. Obviously not all of the html5 features will be supported for every playback method, but the idea is to build robust support for basic video embeding while letting web users immediately take advantage of simplicity of usage for embeding theora video.
Native (html5) browser support for ogg media is developing nicely…Chris Double is working on ogg video support for firefox3, experimental builds of Opera have been shown to support it, and the oggplay plugin is under very active development as a firefox plugin for the win, linux and osx platforms. Even an ActiveX version for IE is planned. The mv_embed script should detect any of these “native” support mechanism and do nothing. As these playback systems should more or less conform to the html5 spec.
But for all the existing browsers: the mv_embed script looks for existing methods to decode ogg video. Initially I am only targeting the vlc plugin for *near* html5 support. Basic video playback with the html5 tag will be supported via the java cortado applet & any plugin that registers the mime type: application/ogg such as mplayer, totem, or xine.
Future versions can extend the base javascript embed video object to implement more complete support of the html5 spec with plugins. Also we will improve the cortado applet so that it exposes the necessary javascript hooks for more complete html5 support. And we will also want to get the cortado applet signed and hosted somewhere so that ogg embedding is further simplified and the mv_embed javascript can be referenced on a different domain than the ogg media.
adoption update:
Just a quick note on the adoption front, wikimedia commons now supports inline playback of ogg audio/video media via a iframe very cool! great work maikmerten and gmaxwell
dale