Before we start on the topic of video performance I have to highlight how complex the subject is and how difficult it is to present performance figures. Digital video is a complex matrix of multiple wrappers for multiple encoding types (video, multi-track audio and multiple subtitles) with different encoding profiles, options, resolutions and bitrates. Format conversion, phsycovisual optimization, buffering and on-the-fly resizing is another set of complex topics. Speak to anyone in the video streaming business and they will take pleasure in telling you how extremely complex it is. For example, at IDF I spoke Envivio, a company that specialises in video streaming. Because of the complexities and ever-changing capabilities of client devices they’ve chosen to do all their encoding in software on general purpose X86 CPU’s rather than in dedicated silicon.
As consumers, we tend to use a number of benchmarks. YouTube streaming, DVD and camcorder files. YouTube quality is determined by how smooth LQ, HQ and HD versions are in windowed and full-screen mode. DVD is a tighter standard based on MPEG-2. Camcorder files have already reached high bitrates and there are even 1080p (1920×1080 resolution) consumer cameras out there. I tend to talk in terms of codecs and bitrates rather than 720p/1080p because those expressions are often used incorrectly but for online video, the simplest way to do it is just to demonstrate it using what most web-based customers are moving to. HD-quality YouTube.
YouTube HD quality is based on MPEG-4 Part 10/AVC (H.264) and offers 720p resolutions (1280×720) at an average bitrate of 2Mbps. (See good Wikipedia entry here for more info) Netbooks and UMPCs running XP can not play this file format but by installing the Adobe Flash player, you get access to this format via YouTube and their embedded Flash content. Unfortunately, the Adobe Flash player is heavy on CPU usage so on these low powered devices the quality is terrible. There are ways to improve this. YouTube download tools allow you to play content in a separate video player which works in an efficient way. I’m able to play downloaded YouTube HD files on my netbook right here. In the near future, the Flash 10.1 player will be able to access hardware video decoders (not currently on most netbooks although the next generation of netbooks will be able to support this) making it even easier for consumers but there are already a few devices out there that can give you the YouTube HD experience out of the box.
I’ve been testing one of those devices. The Archos5 Internet Media Tablet running Android and many people have been asking me about the video performance so I thought I would answer most of the questions by way of a video demo. Some of the details get a bit technical and of course, the video is not representative of the actually quality of video playback on the Archos 5 but the demo gives you a good idea of what you can expect.
Just one note, this was shot in VGA using M-JPEG encoding at about 15Mbps, converted to 1.5mbps WMV and you’re watching it via the flash decoder after conversion by YouTube to the H.264 (or Sorenson) codec. See what I mean!
Break out into a full-screen window and hit the ‘HQ’ button for the best quality possible. The original WMV version is available at Blip.tv.
For completeness and attribution, here’s the original video on YouTube. Hit the ‘HD’ button and see how it streams on your device.