Open Source Video Codecs

At various recent conferences I have been asked if I think there is any hope for free software video codecs. Outside the core linux community the amount of people who even know that Theora exists is still quite small. That said and while it still is a big canvas to bleach, I do think open source video codecs have a mainstream future. At least most Linux companies are providing Theora copies of their promotional videos now, which it wasn’t that long ago they didn’t. We are still a bit raw on the tools side though, and while Pitivi is making good strides forward, its still isn’t ready for production use. One great piece of news on the Theora side of things is that Red Hat has Monty working on improving Theora further to improve video quality and get the magic 1.0 release of libtheora out. Check out this write up by Monty to get the details.

Dirac is also making strong strides forward and version 0.9.0 of libschrodinger, which got released today, will feel like a great leap forward for the causal tester. Most noticeable is that David Schleef tweaked the default parameters of the encoder to produce even nice looking images when transcoding high definition clips. This means that even if the tons of parameters you can set on the encoder is ancient Greek for you you can still play with it and create good looking video’s.

David also spent a lot of time for this release allowing you to set a specific bitrate for the encoded file, a feature a know a lot of users have wanted. That said the bitrate specification for Dirac is still not finished so any files produced with this version are not likely to keep working as development continues. But at least you can play with it now and get an idea of what Dirac will be able to do in the near future.

And of course on the horizon we do have the mp3 and mpeg2 patents ticking down towards expiration within the next 2-3 years, making these extremely common codecs free.

16 thoughts on “Open Source Video Codecs”

  1. The real problem is that people who stream and distribute video want their stuff to be usable on their clients by default. This works both ways. It works against Windows Media because of Linux and Mac, and works against Theora because of Windows and Mac.

    Hence we arrive at a situation where people favor it working on the widest majority of desktops by default. We end up with either MPEG2 or Flash. Or, choosing Windows Media because it working by default on Windows is more important than it working at all on Linux.

    What we need is to make the process of watching a streaming Theora or Dirac video seemless for users of Windows. Windows does in fact have the ability to do this built in, with it’s automatic codec downloading and such. I’m sure it can be figured out how to make WMP download Theora on demand!

    Things like Cortado are awesome, but we fall into the situation where few people these days have Java on their desktop. Either the applets need to offer to install Java on their own, and do it all in one click, perhaps by using a wee bit of ActiveX magic, or we need to shift technologies. The ActiveX thing is interesting though.

  2. It would be superplus great if it was possible to have a Flash player that plays OGG/Theora files.

    For me it would be great if Theora and especially Vorbis would not take up so much resources or if there was a mode in which it is more resource friendly even if it provides not so good quality.

    I wrote UCView as the webcam application on the ASUS EeePC and it was really hard to get the Theora/Vorbis combination to record with a decent frame rate on this machine. But I really did not want to get a way using a non-free codec :-)

    But again, the ability to play OGG/Theora files with Flash would be a killer! ( And yes, I know that Flash itself is not free but I do not see any free replacement for that currently ).

  3. Jerome: This is exactly what was planned with the proposed HTML element, which is supposed to allow embedding of Theora videos in a web page for display by the browser, without the need for any plugins at all.

    Unfortunately, while Opera and Mozilla are both going to implement this, Apple are not, basically because their lawyers don’t like Theora. With Microsoft obviously also refusing to use anything that isn’t WMV, this pretty much kills the idea stone dead.

    Which is a damn shame.

  4. arne?

    Moonlight should kill flash dead. If the tools for me to develop moonlight applets are freely available, I’ll consider trying it. That’s part of why I never touched flash.

    I want, basically, a Kdevelop for online apps.

    Whoa– your server didn’t like that my browser’s user agent was Googlebot… trying again..

  5. There appears some fragmentation given that there’s effort into both Theora and Schrodinger. Which one would you put your money on? Why not drop one and go for the other? Do they have different audiences?

  6. Ronald: I think both have validity for the time being. With Monty’s work Theora will become much better quality and thus become much more viable for a lot of people. On the other side I do think Dirac is a better codec in terms of potential image quality/compression ratio, but Dirac’s weakness is that its a quite CPU intensive codec even just to decode.

    Hopefully we can create a bundle at some point for Windows and Mac, so that when Windows and Mac users install one of the codecs they get both. That should create a win win situation.

  7. As soon as the Software Patent Mess is fixed, and algorithms are no longer subject to stupid “ownership” claims, MPEG-4 will be instantly as free as Theora, due to the fine free and opensource codecs that are already available.
    Oh, and btw. in countries that do not have Software Patents, this is already the case.

  8. Firefox 3 (i.e. Gecko 1.9) will have native support for Ogg, Vorbis and Theora, when using the video and audio elements from HTML 5.

    Current development versions (and perhaps even release versions—I’m not sure) of Opera and Safari (i.e. WebKit) claim to support the video element so, per the spec, they SHOULD™ have support for Ogg, Vorbis and Theora too.

    I think this (particularly the Firefox and Safari bits) will be important.

  9. A couple of related links of interest to anyone who thinks web video is important:

    Safari nightlies have video/audio support for any Quicktime codec:

    XiphQT, quicktime components for Ogg Vorbis/Theora

    The above work together for me on (most of) the Opera and Mozilla HTML5 video demos.

    Flash beta with support for H.264 and AAC (and fixing mp3 support for all sample rates)


    Which combined with the Safari support for the Apple bundled H.264 codec seems to set the stage for H.264 and Theora as the next big codecs for web video. (interesting that Google/Youtube commited to converting all their video to H.264 ostensibly just for the iPhone).

    Note that H.264 is only a contender because Flash makes it easy to deliver to IE. Thus I believe the key to wider support of Vorbis/Theora is the mv_embed plugin and supporting technologies:

  10. MP3 and MPEG2 patents are expiring the next 2-3 years?!
    Are you sure?
    I can’t believe this.
    Where can I read / have you read this is true…?!

  11. @Fabian: mp3 became an ISO standard in 1991, which means that with the maximum lifespan on a patent being 20 years they will have to expire sometime before 2011.

    I might have jumped the gun a bit on MPEG2 though as it was standardized in 1995. So worst case those patents are valid to sometime in 2015.

    That said for both technologies I would assume the patents where filed and granted some time before the ISO standardization process was completed and thus likely to expire quite a bit sooner than the worst case dates.

Comments are closed.