Current thinking about HTML5 video coming from “browser people” is somewhat myopic. The simplistic problem the browser guys are trying to solve “point to one unprotected video file, and play it using the HTTP file copy protocol with some software codec built into the browser” isn’t really the problem that needs solving for most of the perpetrators and consumers of video. They think in terms of what free software decoders they can ship built into a free browser download. HTML5 is able to recognize and use decoders, file parsers, DRM decryption, media players (e.g. DVD or FLV format) that are installed on a device and registered to handle that Media Type in the HTML5 browser. For instance, almost any device used for video entertainment will have built in AVC decoder chips or equivalent GPU decoding capability that can perform much better than a generic software decoder built into a browser. The battery burn on a portable device for CPU decoding instead of using the built-in chip is a killer even if there are enough idle CPU cycles or low enough quality video not to hit the device’s software decoding performance limit. If TVs have big CPUs, they probably want to do something useful like HTML5 rendering, not decoding video while their hardware decoders go to waste because they aren’t designed for the latest “free” video codec. If a browser company’s business model is adding advertising to other people’s unprotected video, audio, pictures, web pages stored on the web; then you want everything stored in one format, like MP3 or JPG or WebM, and control/repackage the presentation environment for search, personalization, and ad targeting. Companies with business models centered around content or devices, probably have a different view. Content companies (like the former music recording industry) don’t do well with lowest common denominator, “if you can point to it, it is yours” MP3 approach. They prefer to protect video, control where it is played, and control a high quality viewing experience, release windows, etc. to pry the most money from, “create the most value for”, consumers. DVD and BD are prime examples and require content protection, authored presentation applications, large file sets, high quality encoding and decoding with quality controlled players that usually work well, etc. Features like adaptive streaming, DRM, and authored presentation environments require registered HTML5 “media handlers” that can process those more complex media types and protocols by handing off to native hardware/software “decoders”/handlers installed on the device. Adaptive streaming has made TV shows and movies (long form content) possible over the Internet for wide audiences (e.g. NetFlix 20% of prime time US internet bandwidth), and an important reason video will account for 90% of global Internet bandwidth by 2014 (according to Cisco monitoring and projection). For HTML5 to be relevant for video, those source tags need to point to more interesting media types, like Apple’s adaptive streaming playlist format, Smooth Streaming XML manifest, or the MPEG DASH (Dynamic Adaptive Streaming over HTTP) XML manifest standard in process. The media handler registered to decipher those adaptive streaming “manifest” files then picks available streams with the best codecs, resolutions, bitrates, languages, DRM, etc. for that device and network connection, and will also use whatever decoder chips and display processor is installed on that device. The alternative is an app model, where HTML5 isn’t used, and a different app is written for each OS or virtual machine (Flash, Java, Silverlight, etc.), and the native video player app runs adaptive streaming protocol, decryption, decoding, compositing and interactivity, etc. Kilroy Hughes | Global Interop & Technology Affairs | Microsoft Corporation From: opendtv-bounce@xxxxxxxxxxxxx [mailto:opendtv-bounce@xxxxxxxxxxxxx] On Behalf Of dan.grimes@xxxxxxxx Sent: Wednesday, November 03, 2010 9:13 PM To: opendtv@xxxxxxxxxxxxx Subject: [opendtv] HMTL 5 Video Codecs I'm researching codecs for HTML 5and came across this article (actually a book): http://diveintohtml5.org/video.html It seems to be a contemporary writing. Part of it states: "There is no single combination of containers and codecs that works in all HTML5 browsers. "This is not likely to change in the near future. "To make your video watchable across all of these devices and platforms, you’re going to need to encode your video more than once. "For maximum compatibility, here’s what your video workflow will look like: 1. Make one version that uses WebM (VP8 + Vorbis). 2. Make another version that uses H.264 baseline video and AAC “low complexity” audio in an MP4 container. 3. Make another version that uses Theora video and Vorbis audio in an Ogg container. 4. Link to all three video files from a single <video> element, and fall back to a Flash-based video player. End quote. There is also a table of supported codecs with each browser.