Thursday, 20 March 2008

Google Summer of Code 2008

Dirac and Schrodinger are participating jointly this year in the Google Summer of Code. There is a list of suggested projects here, but if you have other ideas please suggest them. Dave Schleed and I hang out on #dirac on irc, so chat to ds or tj_davies there for more info.

The projects are mostly around making Schro as good and as ubiquitous as possible. My personal interest is mainly around improving the encoding side, since although Schro lags a little behind the Dirac reference implementation it's certainly capable of being much better because it already incorporates a great deal of look-ahead and pre-analysis.

Monday, 10 March 2008

Jon's yuvtools

I just thought I should mention yuvtools. This is an image viewer and videoplayer written by Jon Rosser for doing video processing development properly. So it allows you to look at lots of different picture formats, specifying exactly what colour space you want to use. You can inspect the video pixel by pixel if necessary, and the player won't do any unknown transformations or interpolations. The video player will lock to the GPU frame rate, and won't invent pictures or drop them arbitrarily.

The videoplayer also now has support for direct decoding of Dirac video using a wrapper library for the Dirac or Schro decoders. The wrapper will be out in the next Dirac release in a couple of weeks time. There isn't a release of yuvtools at the moment, just the cvs repository - I suppose there will be one at the same time as the Dirac release. If you're doing any video processing development, check it out when it comes out.

Schrodinger 1.0

So we've finally made it! The Schrodinger project has reached version 1.0 and we now have a high performance, compliant solution for Dirac encoding and decoding. The Schro team have produced a press release to mark the event.

Dave Schleef has been working really hard on this for a long time, so many congratulations to him for getting to this point.

We're now working on transport stream wrappings for the Dirac format and ffmpeg plugins for both the Dirac and Schro software. What I _hope_ to do over the next few months is to port across many of the compression algorithm ideas used in Dirac encoding (and some new ones) into the fast Schro encoder to improve its compression performance. Schro has a much more flexible architecture and we should be able to get much better compression in the long-term than with the Dirac codebase, which should eventually die.

We also want to look at more GPU acceleration, especially in the encoder (where we could have lots of GPUs if we liked), building on the work Wladamir van der Laan has been doing on the decoder.

Thanks again to Dave, and to everyone who's contributing to turning Dirac into a practical reality.