October 31, 2007

Scalable pixels

H.264 was standardized quite a while ago in 2003 and brought a "back to basics" compress-video-only approach compared to the feature-laden MPEG-4. So what are the ISO and ITU video standardization gurus working on these days? They're working on SVC, short for scalable video coding. The goal this time is not to achieve a higher coding gain, but instead to make the bitstream scalable.

In SVC, a same single bitstream can be decoded at different resolutions or frame rates. If you're watching the stream on your 1080p big screen TV at home you decode all the bits, and in case you want to play the same stream on your mobile phone, just decode those pixels that you need for the small screen. There are many applications for scalable video coding, but I've seen the concept many times before and people just don't use it. JPEG2000 is scalable. MPEG-4 had a few scalable profiles, even MPEG-2 had scalable extensions. None of them are widely used today. Why? Because there's overhead involved in making a bitstream scalable. A scalable bitstream is larger than a non-scalable one. Also, most system engineers find it simply more practical to just recompress the bitstream for each specific target device. Pixar and Dreamworks even completely re-render their 3D movies dependent on whether it's for the theater or for a DVD. Compressing the resulting video sequence another time doesn't seem that much of an extra burden.

Will things be different this time? Will SVC become a prevalent standard?

No comments: