Google is among the biggest proponents of a collection of Web technologies that reproduce many important features of Adobe Systems' Flash, but it's not yet time for regime change at YouTube.
One of the most important parts of the upcoming HTML5 standard is support for video that can be built directly into Web page without requiring a plug-in such as Flash Player. Other open standards such as Cascading Style Sheets (CSS) for formatting, Scalable Vector Graphics (SVG), and Web Open Font Format (WOFF) for typography can mimic Flash features, but Flash's ability to deliver streaming video to multiple browsers is one of the main reasons it's got such a strong incumbent advantage.
"While HTML5's video support enables us to bring most of the content and features of YouTube to computers and other devices that don't support Flash Player, it does not yet meet all of our needs," said YouTube programmer John Harding in a blog post Tuesday. "Today, Adobe Flash provides the best platform for YouTube's video distribution requirements, which is why our primary video player is built with it."
Google started showing some YouTube videos with HTML5 in January, but the program is still experimental.
Adobe is working hard to keep Flash relevant despite the threat from Web technologies and Apple Chief Executive Steve Jobs' disparaging words about Flash. It just began a major push to spread Flash Player to mobile devices, where it's virtually unknown, and Google's Android is the first operating system to be supported.
It's clear there's a tight alliance between Adobe and Google to back Flash, no doubt in part to try to paint Apple's ban of Flash from iPhones to look like a misstep that's bad for users and Web developers.
But it's not all about politics: in YouTube's case, there are real technical reasons for keeping Flash front and center.
What, exactly, is holding HTML5 video back?
At the top of Harding's list is that browser makers haven't settled on a uniform video encoding technology, or codec, for HTML5. Safari, Chrome, and the the IE9 Platform Preview support a codec called H.264, while Mozilla, Opera, and Chrome are getting support for Google's new royalty-free WebM codec. "We need all browsers to support a standard video format," Harding said.
WebM has a chance to become that format.
"We are looking for a royalty-free video format for HTML5. WebM seems a good candidate," said Philippe Le Hegaret, who leads work for Web standards including HTML5, CSS, and SVG for the World Wide Web Consortium, in an interview last week. But asked if it's likely to become that standard, given the backing of Mozilla and Google, he said, "If we have agreement from all the parties, yes, but there is more than just Mozilla and Google at the moment."
Playback issues are one problem, but Google has already decided to pay for dual codec support for its own infrastructure. Since 2007, the company stored all videos in the H.264 format, but starting on May 19, when Google announced WebM, the company started storing all high-definition videos with 720p resolution or better with WebM as well. Considering that 24 hours of video are uploaded to YouTube every minute and that the use of high-definition video is growing, that's got to be a big investment.
Video format compatibility is the first on Harding's list, but there are others, too:
YouTube needs sophisticated controls that let a browser load not just a video page, but a specific time through a video. Also required are controls over buffering--the video data that's sent in advance to a computer to avoid unpleasant pauses in playback--and features for live video and automated adjustments to video quality. HTML5 video lacks all of these, though Google is supporting work to build them in.
Flash has digital rights management that's necessary for showing "secure" video streams, Harding said. Specifically, Google uses Adobe's RTMPE (Real-Time Messaging Protocol, encrypted) protocol for the YouTube video rental program.
Embedding YouTube videos on sites besides YouTube isn't possible with HTML5 today while meeting Google's needs to preserve elements such as captions and advertising. In additon, Harding said, "Flash is the only mechanism most Web sites allow for embedded content from other sites."
HTML5 doesn't support full-screen video yet. There's work under way, but it can't yet match Flash's ability to show things like playback controls on top.
Flash is required for supporting Webcams and microphones for those recording video from their computers. Again, there's Webcam work under way with HTML, but it's not done yet today much less supported in browsers.
Google has its principles, but the company's strong pragmatic streak is evident at YouTube. Here's an interesting question to ponder: If Apple decides to turn iTunes into some Web-based service for streaming audio and video, will it come to the same conclusions about Flash's necessity?