Monday, 16 June 2008

The problems with streaming HD video content

I recently participated in a study which looked at a number of different ways to stream HD encoded video. It was headed by Edgar Huang and the results of which were presented to the New Media Consortium summer conference in Princetown University a few days ago. You can find background details of the study, including the methodology, here.

The study seemed to be focussed around a series of tests which sought to compare and contrast a number of different video codecs dealing with the same footage and assess how well they streamed. It was thought that some of the codecs may find it a little difficult to strike the balance between full size 1280 x 720-pixel screen ratio data delivery whilst maintaining a decent image quality and whilst also maintaining a decent frame rate (30fps). What good is fantastic video quality if you need to wait around 5 minutes to watch a 1 minute clip? Similarly, constant buffering of data makes for a distinctly unpleasant viewing experience. Finding a happy balance is tricky

It was with those thoughts in mind that I'd thought I'd take part. I was a little skeptical as to the usefulness of my contribution given that I was sat at my iMac at work which seemed to fail the required 5MBps connection speed. This just happened to be during term time when the denizens of the student piracy party were clogging up the pipes with their BitTorrent traffic, meaning that my connection speed was a little compromised to say the least. I cannot really complain though - it is usually very speedy:
Can you see the speed of that baby? How can you tell the seeders/leechers have gone?

Another issue I feared was that my media player plugins would let me down. Perian and Flip4Mac were installed and managed to deal with most of the codecs but there was one which got in the way of the study in that it forced me to open VLC outside of the browser (Safari) in order to play it.

So, which codecs were tested?
At first I thought I knew exactly what the winner of this contest was going to be as I've played around with most of these codes whilst using Handbrake, the open source cross platform DVD to MPEG-4 converter. DivX is widely used but tends to produce artefacts in its SD incarnation. The Windows Media codec always seemed to suffer from a lack of consistent development. I figured that the QuickTime H.264/MPEG-AVC codec would be the winner due to its history and excellent results in Handbrake. I knew little about Vividas... As for Adobe HD, I suspected their 97% market share of the SD streaming world would give them an advantage, despite its relatively short life to date.

Personally, I favoured the QuickTime encode for vividness of colour and speed although there were some visible artifacts in fast moving sequences. The Adobe codec was more impressive in its ability to capture fine detail, although it did give the footage a washed out feel. It was very hard to decide which was better as they both had their negatives and positives. The Vividas codec caused me the VLC headache I mentioned earlier.

You can view Edgar's findings here. There are a number of interactive results tables allowing for a useful explorations of the results. In terms of image quality, it seemed most participants also favoured the QuickTime codec with Adobe coming a close second. Adobe came out ahead for initial start-up speed with QuickTime placed third. Other variables were also accounted for and Adobe ranked highest overall (by average) with QuickTime in second place. Unsurprisingly, the worst performer was Window Media HD, as Edgar points out:
Informed customers may make their decisions based on the fact that MSNBC, a Microsoft company, even uses Adobe Flash video, not Windows Media Video, to stream videos.
I was pretty shocked at the price difference though: $995 for the Adobe codec compared to $29.99 for QuickTime. I'm not so sure I'd be willing to stump up that kind of cash for marginal performance improvements.


No comments:

Post a Comment