Aug
24

H.264 and Flash - Too little?

On Monday, Adobe together with MainConcept announced details on an update to Adobe's Flash Player which will include support for H.264 (aka MPEG-4 Part 10, Advanced Video Codec, AVC). Tinic Uro, a Adobe engineer, provides details on his blog. Why is this important and how will this effect users? H.264 one of three video standards that are supported in HD-DVD and Blu-ray Disk. MPEG-2 and VC-1 are the other two standards. H.264 provides the same picture quality as MPEG-2 at less than half the bitrate. Moreover, because of it's scalable design, H.264 content is playable on anything from the smallest portable devices to the largest high-definition screens. The first major commercial media player to support H.264 was Apple's QuickTime Player. Content on the iTunes Store, and Apple's movie trailers are all encoded using H.264. The codec is supported by a number of devices including iPod, iPhone, Sony Playstation Portable and several mobile phones. Until now however, playback on a PC was limited to QuickTime and a number of lesser known players like VLC. The inclusion of H.264 into the latest Flash players due later this year is significant because it will suddenly improve a users overall video experience on sites such as YouTube which use Flash to deliver video. As a Google company, YouTube has been offering H.264 versions of it's content for several months now. The result will be less bandwidth, greater picture quality and with the inclusion of H.264 into Adobe AIR, a full-blown standalone player capable of squashing the now dominate Windows Media Player is inevitable. The Motion Picture Experts Group (MPEG) is responsible for licensing of all the MPEG technologies including H.264. As an open industry standard, H.264 content should be playable on any number of devices. And this is where Adobe is making a terrible mistake. Most websites, YouTube included, use a technique known as progressive downloading to stream content from the servers to the client. This technique uses HTTP and therefore is quite limited in what types of interactions can take place between the server and client. Content that is progressively streamed must first be downloaded to the client before it can be played. There are techniques that provide pseudo-streaming using HTTP, but still, interaction is limited to the HTTP protocol. Real Time Streaming Protocol (RTSP) was developed in 1998 by the Internet Engineering Task Force (IETF) to overcome many of the shortcomings of using HTTP for streaming and to provide a open, standards-based way to stream content from a server to a client. The benefits of using RTSP are numerous and include the ability for a client to request a start time of a audio or video file and the ability for the server to monitor the available bandwidth of the client in real time. According to Tinic Uro's blog, Adobe will not be implementing RTSP in it's Flash player. Rather, they will be streaming H.264 (and FLV for that matter) via their own proprietary protocol, RTMP. This is quite unfortunate because even though H.264 is an industry standard, in order to benefit from true streaming technology, you'll have to use Adobe's proprietary Flash Media Server which implements RTMP. This is bad news for everyone. Because RTSP (and RTMP) implements client/server interaction, bandwidth could be drastically reduced. Imagine YouTube, or any other video sharing site, having chapters or sections of a video that could be played without having to start at the beginning or having to wait for the video to progressively download. Imagine being able to click anywhere on a videos timeline and have that video start playing , instantaneously. This is possible with a true streaming solution, but with Flash it will only be possible with Flash Media Server. Vendor lock-in seems to be the game Adobe is willing to play. To me, this is completely outrageous and I implore Adobe to reconsider this decision. I understand that Adobe is a business and must make a profit. But the decision to not support RTSP hurts education, non-profits and small business, most of whom could not afford the high price tag of Flash Media Server in the first place. By contrast, a number of open source RTSP server implementations exist which are free of charge, including Darwin Streaming Server from Apple. If Flash supported RTSP, I believe the Internet would spawn a new generation of video sites, with new functionality and even greater interactivity. Think of a JumpCut, YouTube, Digg and Pownce fusion. This process alone would help Adobe sell users on their AIR and Flex platform because of the increased interactivity. With Adobe's decision, it's unfortunate that innovation in the online video arena will crawl along at it's current rate.

5 Comments

I absolutely agree. H.264-support in Flash was way overdue and they only made the move not to fall behind Silverlight. Locking us into a proprietary streaming format is a huge mistake and will slow development of innovative technologies a lot. This will make people reconsider Quicktime as a valable alternative, despite the smaller market penetration.

If adobe open up their streaming to RTSP, what do you think would happen to FMS? Adobe would lose clients hand over fist, they will look after the big guns who pay for FMS first and foremost, and why shouldn't they, they are not doing all this just to benefit developers on the Internet.

For a pseudo-streaming solution of H264 content there is a work-in-progress lighttpd plugin available. See http://h264.code-shop.com for an explanation and a demo.

I bookmarked this page. Thank you for given this useful post...

Leave a comment

Facebook LinkedIn last.fm Hulu Twitter RSS
Adopt a Pet

Copyright © 2010 Steve Springett