Dynamic streaming
Short Film: Bridge - 1080p

Fullscreen performance
Best practices + player

Flash Player 10.1 for Android
Is a reason for me to switch from iPhone to Android
I already have an Android phone
Wait for other platform support (HP/Palm, RIM, WiMo,...)
I keep my current phone without Flash

View Results

Broadband Sites
CBS Flash HD Gallery
Epix HD
Favourite Website Awards
Hulu
Immersive Media
StreamFlashHD
Vimeo

FMIS Demos
FSW Videochat

Flash Resources
Adobe Catalyst
Adobe Flash
Adobe Flex
FFDmag
Flashkit
Flashmagazine

Flash Media
Adobe Flash Media Server
Distribution
Flashcomguru
Open Source Media Framework
Video encoding

Flash Streaming Providers
Adobe FVSS

FMIS Hosting Providers
Flashcomguru list
Influxis
Uvault

Weblogs
Big Spaceship Labs
Dan Rayburn
Fabio Sonnati
Flash Media Blog
Flash Platform blog
Kevin Towes
Richard Galvan
Ryan Stewart


Twitter Updates

Saturday, May 1st 2010

Flash 'vs' H.264 demystified

There are a lot of recent discussions about H.264 replacing Flash as a video format. Technically, this is a wrong comparision (unfortunately quoted by numerous technical news sites including TechCrunch).

Since this blog has been covering Flash Video for many years, I would like to add some technical background to help better understand why this comparision is not correct. I hope this will help people to be able to better participate in this discussion.

Flash itself is not a video format, but has build-in codecs - meaning it can handle the following video formats without external components:

Decoding
- H.264 video (.f4v,.mov,.mp4,3gp,etc..)
- ON2 VP6 video (.flv)
- AAC/AAC+ audio (.mp4,.m4a)
- MP3 audio (.mp3)

Decoding and encoding
- Sorenson Spark/H.263 video (.flv)
- Nelly Moser audio
- Speex audio

H.264 is licensed by MPEG-LA. If you are using H.264 in a commercial environment, MPEG-LA is charging license fees. It's free for non-commercial use. This is a reason why some companies are preferring to continue to use ON2 VP6 with Flash, which doesn't have similar license restrictions.

The SWF is embedded in the HTML page (which is officially supported by the HTML specs), which has several options to consume e.g. H.264 video content.

The argument now is why can't a website simply bypass the Flash SWF, and play the video through the HTML video tag. Let's look at the requirements for a lot of video content on the web:


1) My users need to be able to play the content without technical hurdles

It sounds simple, but is probably the number one reason why most video content on the web is played through Flash. A lot of businesses require a Flash Player version with 95% or higher penetration, before embracing it for their website. A new Flash Player version can reach this number in record time, but still - it's a very strong requirement. Flash allows consistent playback across all browsers and soon most devices.

The HTML video tag doesn't specify the codec, meaning H.264 works with certain browsers, but not with the Mozilla Firefox browser, Opera, and older browsers that are not updated. It will take a long, long time (if ever) before consistent H.264 playback across desktop browsers with penetration rates up to 95% will become reality. And as we know, the web moves fast - eventually H.264 will be replaced by codec X by then.


2) My content is valuable, don't steal it

Content protection is very important for premium content. Without it you wouldn't be able to watch your favorite TV shows or movies on the web. SWF guarantees adequate content protection, which needs to consistently evolve to respond to ongoing attacks. FP 10.1 for instance will bring Flash content protection to a new level with Flash Access DRM.

The video tag doesn't specify any content protection.


3) I want more than just progressive download, for instance X

X in this case could be RTMP or HTTP streaming, P2P, video chats, live events. Flash Player 10.1 gives you all of this and more.

The current implementation of the video tag doesn't support any advanced video delivery techniques.


4) I want to provide my users an engaging video experience

If you are working at an interactive agency, and your goal is to create engaging experiences, playing a video clip is often not sufficient. You want interactive video in creative environments, with overlays, transparency - easy to author and design. Video is a first class citizen in Flash, meaning the creative has full control over the video to embed it in an engaging experience.

The HTML video tag works for video playback, but has it limits when it comes to creative expressiveness and creative tooling.


5) I can't afford authoring / optimizing for browser X,Y and Z

Once a Flash website has been authored, it works constantly across all browsers. Author once, deploy across all platforms. That saves money.

HTML rendering is browser dependent. It has been worse with former versions of HTML, but is and will continue to be the case due to the nature of competing browser platforms.


6) I want to make money with online video

Flash is the de-facto standard for online video advertisement and monetization with a very rich ecosystem, which allows to run ads within your video experience, and use detailed reporting to measure success. The reason why a lot of advertisement is in Flash is because the authoring tools are also targeting creatives, and therefore are tightly integrated into creative workflows to increase productivity and lower costs. It also guarantees a consistent experiences across platforms/browsers.

The video tag doesn't support this ecosystem yet, meaning only slowly and very limited support for ad monetization.


As you can see, there are a lot of reasons why you can't simply replace Flash pointing to a H.264 video with the video tag, pointing to a H.264 video.


H.264 for mobile

For mobile, there is a even more relevant hurdle. Currently most mobile device hardware doesn't support all variations of H.264, but only the mobile centric profile - baseline. Most content on the web requires higher quality H.264 video, which is primarily encoded in the main and high profiles. This basically means mobile devices can't play most of the web H.264 video content natively - although it's in the H.264 format, you have to re-encode the content to a lower profile (the reason why QuickTime has an mobile export option).

Flash Player 10.1 for Android can use the hardware for baseline decoding (same battery efficiencies as "native" video playback), and also offers a SW decoding option for higher quality profiles (also with very decent battery life). Flash offers the full web experience on mobile without having to re-encode your video library.


But advanced video features work on my iPad in the browser, e.g live streaming

Yes, but only on the iPad and on Safari browsers with QuickTime. The video tag allows to connect to the underlying video system, and use some of the platform specific features. It won't work on non-Safari browsers though, and it not part of the current HTML5 specs.


Conclusion

A lot of words for a complicated topic, but hopefully it shows the problem. The video tag doesn't provide the features to replace Flash, but it will continue to evolve. And so will Flash. It's important to have the options.

And to end with a quote from Andy Rubin, VP of Google: "Sometimes being open means not being militant about the things consumers are actually enjoying"

Posted by Jens Loeffler | 01:56 pm

<< Previous: Adobe CEO Shantanu Narayen responds to Steve Jobs | Home | Next: Web 2.0 Expo SF 2010 - "A Conversation with Kevin Lynch" >>

Visitors comments (14325 Views)

This is a great post, Jens, with fantastic insight and information. Thanks for taking time to get this out of your head and really showing how far ahead Flash already is, and how far HTML5 has yet to go in regards to video suport across browser and device.

:: Posted by Todd Pasternack History | May 01, 06:13 pm

Dispite flash having more features, it is a dying technology. Since h.264 works in both flash and it will be in most major browers (as well as the iphone/ipad), the best way to go about it IMHO is to use the the video tag, with flash as a fallback for Firefox and older browsers.

:: Posted by Evert History | May 01, 07:49 pm

@evert Or create a separate, slimmed down version of the video experience for the iPad / iPhone - which is currently happening.

:: Posted by Jens Loeffler History | May 01, 08:16 pm

excellent article but please update it

how people were viewing video online before flash ?

you had a lot of proprietary codecs and video players plugin
that were fighting each others

Apple QuickTime Player - .mov
Microsoft Windows Media Player - .wmv
Real One Player - .rm
etc.

none of them really became predominant.


and how was the user experience at the time ?

if a website decided to go with only one codec and one plugin
you had no other choice to install it to be able to watch the video

For the publishers, to try to improve this user experience,
sometimes some big website tried to support 2 or more codecs
at the time, which most of the time ended up in a nightmare

eg.
if you have the QuickTime player, click here
if you have the Windows Media player, click here
etc.


let few years pass, and guess who promote HTML5 over Flash ?
Apple (QuickTime player) and Microsoft (Windows Media player)
how convenient

they both want to take over the live streaming part that HTML5 fail to support,
to put back their respective video players on the scene.


:: Posted by zwetan History | May 02, 01:19 am

Ok, flash being a dying technology is a joke at best. With the penetration being what it is that's like saying Windows is a dying technology. Besides, the very idea of "falling back to flash" is not very good because you are talking about "falling back" on the second largest browser in existence (firefox) so:
1) it will be in most major browsers is not true regarding the format issue
2) you are creating a fallback experience that is not only more flexible and more powerful, but does the job more efficiently than most of the browsers will implement
3) Complaining about performance on a mac regarding hardware decoding is weak because without mentioning it specifically of course Apple released the support for hardware usage in a browser plugin in 10.6.3 and what do you know? Adobe already has a preview release of flash with hardware decoding available. Try getting that response from all the major browsers that quick.

This conversation has been old for a while and while I love open technologies, people need to realize that an HTML standard is only one step and will always be behind extensions to that standard by companies like adobe, apple, google, microsoft, etc. At the very least to make any of this worth doing every time, you would need an HTML standard with consistent JS standard API for working with it all, which the W3C doesn't care to assist with of course (a group Adobe is a part of anyway). It is great this option is available and they are trying, but video tag will only help for browsers that don't support flash for those reasons anyway.

:: Posted by Mike Kelp History | May 02, 01:48 am

ITT: Butthurt flash devs that can't recognise Flash is outdated and has flawed limitations.

:: Posted by Anon History | August 31, 09:16 pm

Comment this Posting:  
Name*:
Keep in mind:
HTML tags will be removed.
Only well-formed URLs will be automatically parsed as links (use 'http://).
Use the "Just 'Listen'" button to subscribe to the thread without leaving a comment.
I reserve the right to delete offensive or unsigned comments.
Email:
URL:
Comment*:


Recent Posts

Interesting upcoming webinars with Adobe and Streamingmedia.com
StreamingMedia.com has kicked off a new series of “Ask Adobe” webinars. Join us on 9/10th to learn more about the Flash Media Server roadmap with Adobe’s Kevin Towes and Dan Rayburn as they discuss the future plans and how you can be successful distributing high quality video online. ...

Demo of Flash P2P video with AIR for Android over 3G
Flash Player 10.0 introduced RTMFP and FP 10.1 RTMFP groups, both powerful P2P features. In parallel AIR for Android is getting ready for primetime, with full support of Flash Player 10.1, local camera/mic and P2P. ...

Crystal-clear HD with Adobe HTTP Dynamic Streaming
Released a couple of weeks ago, Adobe HTTP Dynamic Streaming combines the features of streaming, with the advantages of HTTP scalability. Besides traditional RTMP streaming, and the P2P functionality of Flash Player 10.x, it offers an additional option to deliver your high quality video content - live and on-demand, with full Flash Access DRM protection....

U.S.-Algeria World Cup match largest U.S. live sports event on the web
It's official, ESPN reports the U.S.-Algeria game broadcasted on ESPN3.com broke a new record for the largest live sports event audience on the web in the U.S.....

World Cup and Wimbledon on ESPN3.com
As if the World Cup wouldn't be enough to fill your day, Wimbledon started as well this week, and ESPN3.com is covering it....

Watch the 2010 FIFA World Cup South Africa live on ESPN3.com
It's time again for the biggest sporting event of the world. If you live in the United States, the way to watch the games is on ESPN/ABC, with 52 out of the 64 games on ESPN (see World Cup TV schedule)....

Recent Comments

Anon on Flash 'vs' H.264 demystified

ed hardy on Demo of Flash P2P video with AIR for Android over 3G

Jens Loeffler on Demo of Flash P2P video with AIR for Android over 3G

Scott on Demo of Flash P2P video with AIR for Android over 3G

ashley on Eminem.com - another great site by wefail

John Walshaw on Watch the 2010 FIFA World Cup South Africa live on ESPN3.com

Popular Posts

Watch the 2010 FIFA World Cup South Africa live on ESPN3.com (46332 views)

Flash on Android - Top 5 reasons why you won't be able to live without it (43440 views)

Google I/O Flash highlights (43160 views)

The Evolution of Online Video - Adobe HTTP Dynamic Streaming and OSMF released (42319 views)

UJAM - Revolutionary Music Editor based on Flash Platform (37101 views)

2010 FIFA World Cup Kickoff Concert (36397 views)

Archives

Feeds

RSS 1.0 
Subscribe to feed   Add to Google

Updates via email (Feedburner):

Search
Loading

Copyright (c) 2010 Flashstreamworks