HTML 5 and Flash video

Update: I mistakenly said that Firefox does not support HTML 5. They do through the Ogg codec.

There seems to be a lot of talk going on lately about this so I wanted to give my thoughts. This topic is actually quite a confusing one to think about. Let me first address the iPhone side of this so we can get to the real meat of the issue.

The iPhone does not support Flash video, or any other type of Flash for that matter, so you obviously need an alternative. In my last post I showed one approach for providing alternative videos for iPhone users. But this really doesn’t relate to HTML 5 at all. The iPhone plays video in its standalone player so you will not be able to view video embedded in the page. So for the iPhone, unless something changes, you need to provide an iPhone-compatible video file for your users to watch.

Now with the iPhone out of the way, we can now look at the real issue. YouTube released an HTML 5 demo of its player quite a while ago and are now testing this on their site. Vimeo, which is a lesser known video site, also launched a beta HTML 5 player as well. This should not come as a surprise to anyone as it is in their best interest to get ahead of the curve with HTML 5. If you are in a supported browser, HTML 5 video playback can be very smooth and less CPU-intensive than Flash. For basic video playback, I see HTML 5 as a great option down the road. Of course, the issue for me always comes down to browser compatibility.

The video tag works in Safari and Google Chrome. You can get it to work in IE if users install Chrome Frame. This is fine for developers, but the masses more than likely won’t be willing to do that just yet. So in reality, Firefox and IE both do not support HTML 5 video. Firefox seems to be doing its own thing, requiring you to use the Ogg video format, while Safari and Chrome support H.264. Go over an read this great write-up on HTML 5 video to see the splintering of the various video formats and browser support. If you want to deliver video to every browser without having to encode multiple video formats and creating alternative markup, then Flash is the way to go.

Now this is not to say that in the future, maybe they will all agree on an implementation. If that happens and it performs better than Flash, then that is how I will be delivering my videos as well. But another thing to point out is that Flash video is used for a lot of things beyond basic playback. Flash supports embedded cue points and alpha channels and is often used in ways beyond the traditional YouTube playback scenario. So while HTML 5 video looks promising, it is clearly way too early for people to be writing an eulogy for Flash video. Remember also that while the browsers get their acts together, Flash video will continue to evolve as well.

Lastly, I would like to dispel the notion that Adobe is somehow against HTML 5. On the contrary, we see it as an exciting development for the web and have our own plans for tooling surrounding it as well. I have always preached to people that they should only use Flash for things that are appropriate. Sites that overuse Flash and provide poor experiences are worse for us than sites that don’t use it at all. Of course there are plenty of JavaScript nightmare sites out there as well.


Commentary

  1. Aubrey Taylor says:

    This kind of stuff only encourages great development from both sides. Competition is a good thing and most of the time there are many appropriate solutions to a specific set of problems.

    New developments in the web space are a good thing. I just don’t know why every time one of them does something similar to Flash it automatically spells d.e.a.t.h for the platform. Ha.

    Flash will be around for a while, get used to it and enjoy watching your languages grow and finally offer up something similar to what Flash has already been doing for the last decade.

  2. Flash was playing videos for web five years ago too, so it is not a big deal that HTML starts to achieve it now. But metadata will be more important than ever in tomorrows world of web. So I’ve heard that Adobe is working on improvements on Flash Video which will bring really different experiences for meta data support and obviously more improvements will show up beyond meta data. Briefly, it is good to see HTML will have some media support but has to do more.

  3. Tom says:

    HTML5 / JS > Flash

    JS runs much faster in modern browsers.

    Unless Adobe makes their player open and makes it less of a plugin. It would be much smarter for them in the future.

  4. Ditto! Great write up.

  5. John Dowdell says:

    Hi Lee, I’m not sure it’s fair to Mozilla (and Opera!) to say they “do not support ‘HTML5′ VIDEO”. These two companies actually had the first discussions about the tag. But because they focused on the tag, rather than on practical implementations and realworld video use, they got sideswiped when Google and Apple took the tag and used it with different content.

    I’m also not sure whether “YouTube released”, or whether a pair of engineers were working on a side-project… it’s unclear of the real significance of last week’s launch.

    Safari/Mac gets the benefit of secret QuickTime hardware APIs. Chromium for Mac and Linux is in an odd boat. No one’s quite sure what licensing changes MPEG-LA will impose. Many pieces are moving around here! ;-)

    Absolutely agreed with you about Adobe and “HTML5″ — Adobe’s gig is connecting creators with their audiences, and if the deployed browsers improve their capability, authoring tools will follow, as CEO Shantanu Narayen advised:
    http://blogs.adobe.com/jd/2009/06/adobe_on_html5.html

    (Most of the opposition and hate-speech is likely due to needing a marketing rationale for a late #2 entry… there’s a rhetorical need for hate, because otherwise the response would be “Why bother?”, imho.)

    tx, jd/adobe

  6. lee says:

    @John yes you are right about Firefox and Opera. I guess I meant that they are not doing it the same as Safari and Chrome.

  7. Seems to me we’ll have to implement several layers of flash, js and html5 with browser sniffing this year, to make sure every device/browser that can play video, will play video.

    Now that everyone is making tablets as well, we’ll likely need even more resolutions/formats to play safe for the varieties of broadband vs screensize ratio.

    Putting flash at the top layer for the majority of browsers still.

  8. mlebrun says:

    Great article Lee! I look forward to seeing how Adobe will cater in HTML5 video. Maybe developers won’t have to convert every video to flv from now on? Who knows!

  9. lee says:

    @mlebrun well the reality is that we will have to be encoding to multiple bitrates/formats no matter what soon. Once Flash Player 10.1 gets on smartphones you will need to provide mobile versions of video as an H.264 video encoded with the high profile just won’t run that well. That’s where using something like Flash Media Server can be a big help. Dynamic stream switching can make this much more seamless.

  10. kevin says:

    Personally I’d love to see Adobe concentrate on performance enhancements rather than feature releases for a while.

    Obviously, the way a dev codes has a major impact on the perceived ‘performance’ of Flash – as you say JS can be slow if coded poorly also.

    But, I think all would agree that there is room to improve in both performance and file size for Flash.

    Would HTML5 video be as much a discussion if Flash was fast to load and easy on the CPU? Would it be on the iphone if it satisfied these requirements? I think there’d always be people who’d prefer not to use Flash and good on them – but I think the majority would not think twice about it.

  11. Detrus says:

    That’s a good perspective on things and good to see that the attitude at Adobe isn’t calling for a deathmatch with open standards technologies.

    But video is a major reason behind Flash’s penetration and the speed at which improved versions of the flash player are adopted. So if flash were to lose ground in this area, people would think twice about spending the time to learn its API, to develop web applications that depended on it, etc.. because there would be concerns about its penetration.

    So it would be interesting to know Adobe’s plans for the more distant future where technologies like NativeClient could handle many of the tasks where we depend on flash today. Mainly outpacing the slow standards process where developers have to wait for all the vendors to agree to adopt features and distribute new versions of browsers. Adobe currently does this faster, but still can’t satisfy every whim.

    And this calls into question the potential success and longevity of the vast library of APIs that Adobe is working on. AS3 and Flex have been around over three years now, but there have been few popular applications created on these platforms, apart from video players.

    People are instead imitating some of the features of flash with html/js and the lacking of tooling doesn’t seem to hold them back.

    So what is the real long term plan when people might be able to write processor intensive applications in the language of their choice through NativeClient? How does one justify starting a multi-year development process through Adobe’s API’s when in 5-6 years the vastly superior approaches could have sufficient penetration?

    That might be a reason why we’re not seeing that many Hobnox type web-apps, which seems to be what Adobe wants to promote with things like Flex. And losing the video feature isn’t helping the case.

  12. Michael says:

    “But another thing to point out is that Flash video is used for a lot of things beyond basic playback. Flash supports embedded cue points and alpha channels and is often used in ways beyond the traditional YouTube playback scenario.”

    Exactly that is one of the major arguments for me both, as a developer and a user, where Flash is miles ahead of HTML 5. A very good example on that is http://make.tv that shows all the power of Video and the Flash Platform.

  13. Faavtro says:

    “Of course there are plenty of JavaScript nightmare sites out there as well.”
    Indeed! Especially when the designers don’t bother to check browser compatibility and half the site doesn’t work on anything but one browser!

  14. XYNTA says:

    @Tom
    check “AS3 vs. JavaScript Performance Test Followup”

    http://jacksondunstan.com/articles/534

  15. Reda says:

    HTML5 video tag clearly shows how inefficient Flash player for mac is:

    You can play the same Youtube video on Google Chrome with Flash then HTML5. You’ll notice a huge difference in CPU consumption between both modes.

    Does Google Chrome have access to these “secret” Apple APIs ?

  16. leef says:

    The common complaints about Flash, are ones that would exist no matter which medium was delivering Rich Apps. Bugginess, which is often the fault of the app developer, and can often be the browser’s fault (flash player crashes far more often in Safari than in Firefox). Annoying ads, which again are independent of Adobe & the flash medium. Memory/CPU usage, again often the fault of the developer, and in the case of Mac, it sounds like Flash doesn’t have access to certain acceleration API’s that it does on Windows. I don’t quite understand the issue with Flash Player being proprietary, when Quicktime, WMV, Silverlight, H.264, and Wave are also proprietary.a

  17. lee says:

    @Reda talk to me goose. Did you even read the post before commenting? Did you read my other post talking about the GPU acceleration? There is no public API for browser plugins. Chrome is not a plugin. You should really try reading a little before trying to make clever comments.

  18. lee says:

    @Kevin “Personally I’d love to see Adobe concentrate on performance enhancements rather than feature releases for a while.”

    Amen brother. I agree completely.

  19. Matthew Fabb says:

    Reda, my understanding of Chrome on the Mac, is that just like Safari, QuickTime is used render the video. QuickTime on a Mac has access to the GPU, which then lessens the load on the CPU. With Flash Player 10.1 Adobe have also introduced GPU decoding of video, but there’s apparently no public API for this on the Mac. Perhaps a better wording instead of “secret” API, is a private API that QuickTime has access to, but other browser plugins don’t.

    Meanwhile, while I haven’t tested the new YouTube HTML5 site myself (I’m a Firefox user) just yet, I’ve seen some posts (http://www.osnews.com/comments/22771) who say that the HTML5 implementation takes more CPU than the Flash version(I assume that these users aren’t running the Flash Player 10.1 beta that uses the GPU).

  20. Matthew Fabb says:

    @Kevin “Personally I’d love to see Adobe concentrate on performance enhancements rather than feature releases for a while.” While Flash Player 10.1 is about expanding into mobile devices, for the desktop there are few new features, with everything new focusing on speed and stability.

    “Would HTML5 video be as much a discussion if Flash was fast to load and easy on the CPU?”
    I think it’s become more of a discussion point more recently as video on the web gets bigger and more hi-def, causing it to take more CPU cycles and it really needing access to the GPU now. As it really wasn’t an issue years ago on slower computers back when web video was often a little bigger than stamps.

  21. nick jonas says:

    @Kevin & Lee

    I agree as well, noticeable performance and stability enhancements would be better than gold plating the next release. And I have faith that Adobe can put their heads together and stay up to par with HTML 5 video performance-wise.

    Looking forward to your workshop in Amsterdam Lee!

  22. 5.1 Jeff says:

    Good article….

  23. Sander says:

    The iPhone plays H264 in the Quicktime player, so you could use one video file in a flash player, for iPhone (link to move) and HTML5 tags, right?. That won’t work if you’re using flash 8 video flv’s. Be sure to make H264′s ‘fast start’, so essential data is in the header of the file.

  24. Ugly Bug says:

    Flash is two things. It’s a browser plug-in that right now provides some specialist support for features not commonly available in web-browsers. It’s also a design tool that produces things that run in that plug-in.

    The design tool has a future, indeed I would love to see Adobe take on the task of making building the HTML/JavaScript/CSS stack much easier. The plug-in itself and the applications built to run specifically with it feels much less certain, and certainly less desirable (fewer things running, fewer things can go wrong, less memory is consumed). I just can’t get past a site I was recently involved with where the customer’s #1 requirement was to run on SmartPhones. They made the decision that they would support Webkit browsers first, degrade smoothly into Firefox, and let the rest be dammed. It was launched six months ago, and despite the anguish they went through not building something that could run in IE+Flash, the site has been a huge success. It loads quickly, looks as sexy as hell, and just one year ago could only have been built in Flash.

    I agree with many above, competition is a good thing. Times, they are a changing.

  25. Alec says:

    Flash player for Win and for OS X needs to be open-sourced (except for the H.264 proprietary part). You are not making money on it directly anyway. It needs to be open-sourced and offered to Mozilla foundation to be incorporated into the browser directly (perhaps not as a plug-in even). Otherwise Adobe risks writing off its Macromedia purchase in 3-5 years.

  26. Not to sound negative, but isn’t the fact that the announcement of the new Ipad without Flash support pretty much out the nail in the coffin for any hopes of seeing Flash on both these devices (Iphone and Ipad)…it pretty much sounds like Steve has the impression that Flash has it’s days counted…or is it only clear to me?

  27. Ali Nakipoglu says:

    I think to answer all of these things, i would prefer improving Flash for a Game Development. I would make it a standard web based game platform.

    They should find a better way for 3d graphics (depth sorting), faster / truly optimized AVM.

    Another big problem with Flash is it’s not an open as it needs to be. I don’t mean open source by “open”, i mean they should share what they want to do next? What they trying to do. I don’t want to wait one flash or flex release or a max conference to learn where flash is going whats happening platform im using daily.

    Ali.

  28. Again, you miss the reason why people have severe issues with Flash, so I’ll sum them up simply:

    Stop crashing my browser.

    See, it’s simple thing. I don’t care what 10.1 does other than that. I don’t care if it puts me in the front row for a Broadway run of Avenue Q.

    Stop.Crashing.My.Browser.

    The vast majority of browser crashes are due to Flash. MAke those stop, and honestly, the vast majority of my objection to Flash goes away. At that point, it’s just grumbling about poor use by creators and devs and that’s not your fault. But right now, it is so bad, SO bad that even people on the Flash team recommend the use of a Flash browser, *not* becauss it will *stop* the crashes, but because it will *slow them down*.

    Stop Crashing My Browser.

    Fix that, and then we can talk about all the other zoomie features. Until you do that, I applaud every effort to minimize or remove the use of that plugin on the web.

    Stop crashing my browser.

  29. Vamsmack says:

    Lee,

    Whilst you are right with regard to browser compatibility it is naive to think that these browsers will not support HTML 5 shortly whereas Flash has been around for how long now and still doesn’t play nice with ANY browser on OS X? The compatibility argument is a big fat straw man who will blow away within months. Will flash stop crashing my browser in a few months?

    The problem here is that Mac users will use a browser which supports HTML 5 due to the fact that when we play video using HTML 5 as opposed to Flash because our machine doesn’t grind to a screaming halt using HTML 5. I was watching a flash video the other day and it averaged 80% resource usage vs HTML 5′s 20-30% resource usage if I am lucky. I am not using an old machine I am using a new MacBook Pro 13 inch. So my real question is when will flash stop crashing my browser? I think before Adobe moves forward it should maybe look at the existing problems with the Flash implementation on the OS X platform and work to fix this. If it means working with the browser companies(Apple & Mozilla primarily) then do it. In the end people know it is Flash that kills their browser they don’t blame Safari or Firefox they blame Flash which is why apps like ClickToFlash exist.

    I use CS4 Design Premium as I need to for my work yet I feel that having Flash consume that much of my system’s resources just in a browser is an unreasonable so I refrain from utilising flash.

  30. 5.1 Jeff says:

    Apple manipulates iPad promo material to “fake” web browsing experience.

    http://www.macrumors.com/2010/01/29/ipad-promotional-video-and-images-show-properly-displayed-flash-content/

  31. Bela Korcsog says:

    My perspective on HTML5 is that if Microsoft doesn’t support it in IE it will be just another niche that developers will continue to ignore.

    Microsoft is heavily promoting Silverlight as the content review platform that will be their Flash equivalent. Apple is not offering any suitable alternatives to Silverlight or Flash (Quicktime is a lame duck as a media platform, only providing video playback and not very good performance at that). Also the fact that Javascript is stuck in 1997 era prototype syntax makes it an ugly comparison to Flash or Silverlight for interactivity or data manipulation tasks. When Javascript graduates to a more mature syntax like Actionscript or C# we can start talking about serious development.

    Generally an AJAX site is a complete teardown once the client finally realizes they were sold an unmaintainable architecture and it finally reaches the apex of it’s maturity. Mike Holmes needs to be called in (http://makeitright.ca/).

  32. Justin D. says:

    Man, so true! How am I supposed to jerk it to my 3-month Bang Bros. subscription without Flash?

  33. sendai says:

    Process: Safari [875]
    Path: /Applications/Safari.app/Contents/MacOS/Safari
    Identifier: com.apple.Safari
    Version: 4.0.4 (6531.21.10)
    Build Info: WebBrowser-65312110~2
    Code Type: X86 (Native)
    Parent Process: launchd [422]

    PlugIn Path: /Library/Internet Plug-Ins/Flash Player.plugin/Contents/PlugIns/FlashPlayer-10.6.plugin/Contents/MacOS/FlashPlayer-10.6
    PlugIn Identifier: com.macromedia.FlashPlayer-10.6.plugin
    PlugIn Version: 10.1.51.66 (1.0.4f66)

    Date/Time: 2010-01-30 16:58:18.815 +1000
    OS Version: Mac OS X 10.6.2 (10C540)
    Report Version: 6

    Interval Since Last Report: 154788 sec
    Crashes Since Last Report: 34
    Per-App Interval Since Last Report: 472778 sec
    Per-App Crashes Since Last Report: 1
    Anonymous UUID: 11DEAAA3-6BE6-4C97-9E71-FD36AA6242B7

    Exception Type: EXC_CRASH (SIGABRT)
    Exception Codes: 0×0000000000000000, 0×0000000000000000
    Crashed Thread: 0 Dispatch queue: com.apple.main-thread

    Application Specific Information:
    abort() called

    Thread 0 Crashed: Dispatch queue: com.apple.main-thread
    …
    Ad infinitum.

  34. lee says:

    @Sendai please submit the crash report. Ever since Safari 4 I also have gotten a lot of plug-in crashes. We are looking into it.

  35. Shiv Kumar says:

    There are a few things that are very clear in our testing. Before I go on I just want to clarify that our opinion is neutral in that we just want the best player. A player that can handle True HD (720p and 1080p) and I don’t mean the kind of quality YouTube or any other website currently offers as HD.

    Our testing has given us few insights that we’d like ot share with Adobe any anyone else willing to listen and improve their product. We don’t care who and we’d love it if everyone takes heed.

    So here goes…

    Html 5 video is going to be a nightmare. This is primarily because every browser maker will have their own implementation so a video that works fine on say Safari MAC will not on Safari Windows (because Safari uses the quick time player as their Html 5 video player). Similarly, just because a video plays back just fine in IE does not mean it will work in Firefox (barring the whole Ogg Theora/H.264 issue) or on chrome for that matter.

    So Flash does a really good job of isolating us (the video publishers) from this nightmare. However, Flash player has its own issues. Essentially it is no better than any of the built in video players. Currently that is Firefox and Chrome (since Safari uses Quick time player). So unless Flash can be on par with Quick time on MAC and Windows Media Player on Windows the only advantage to Flash is it normalizes the inconsistency issue (which is huge for us). But not the issue that it isn’t any better than the built in players and so our video quality (which is the best you’ll find on the Internet today) can’t be improved anymore and that is really what we’d like to do.

    You can take a look at a page we’ve put out there for our members to see for themselves.

    Flash versus Html 5 Video versus Windows Media/Quick Time

  36. bluelobe says:

    Adobe has treated the Mac as a second-class citizen when it came to Flash (it ran slower on Macs and had fewer features). Now that Apple has the upper-hand, Apple’s treating Adobe with the same disdain.

    Adobe is basically reaping what it sowed.

  37. Richard says:

    I’m curious to hear Adobe’s perspective on the latest news that they are apparently blocking the latest publication of HTML5 with an undisclosed objection?

    reference here: http://ln.hixie.ch/?start=1265967771&count=1

  38. Ronald says:

    Great write up, very knowledgeable, fair and balanced. Thank you I’ll be sure to look more closer at flashes development.

    P.S. Flash in linux needs improvement still ;)

  39. encoder says:

    30. Nazim Beltran
    that is only clear to you. Jobs dose not want flash, because games on AppStore will be worthless, and that is the most lucrative business there! Jobs is a businessman and not Jesus Christ.

    29 Alec
    Mozilla has the code already for 10.1. the first open source player possibly, and hopefully not. i dont want Mozilla and other companies creating 10 separate players, it will bring inconsistency.

    people, cut the crap about performance of flash. you can make it faster then native programs BUT if so called “flash developers” out there register 200 enter-frame handlers the thing will still slow down. because it’s programmable nature, it is very easy to slow the computer down. so 32. John C. Welch your shit browser will crash even after flash player 2000 is out.

    Why don’t people complain about C++ of Java. programs crash faaaar more often then .. flash.

    mobile is still peanut so there is time to get a platform on them, flash was the first to jump. ps: high profile videos in flash run great on smart phones, and that dose not include the iPhone.

  40. encoder says:

    sry ’bout errors in typing. new keyboard.

  41. NoFlashInBSDStill says:

    Why is Flash still problematic, and/or basically Adobe won’t offer a direct flash plugin’s for the other *i’x, like *BSD’s, … ?

    If “html5″, can more easily be incorporated, or better yet “replace” the proprietary “flash”-which really has no place on a “public” Internet then that would be even better.
    and we all bloddy well know it.

    Lets face it, the “Internet” should not be “fussed” with by Adobe or any of the other corps, no one owns it, it belongs to everyone.
    Sure, if you want Adobe Premiere, then darn rite -you pay for it, of course those things are a given.
    BUT I say NO to Flash when they say NO to supporting all OS’s,…
    Countless “Petitions” have been drawn up and fired at Adobe over the years, because of their stoopid practices in this regard.

    I hope Adobe Flash dies a long, and slow painful death.
    enuf, is really enuf of this flash crap.

  42. jay says:

    Hello, would you mind if I use some of your sites content on basicwebdesign.co.cc ? I’ll be sure to keep the credit to you, along with a link back to your site. Thanks.

  43. lee says:

    @jay no please do not reproduce my content anywhere. Thank you.

  44. Jeff Johnson says:

    Thanks Lee.
    I am in the business of producing reader/screener promos and trailer to full length consumer product publications for tv and film.

    HTML5 ( as also evidenced by hulu rejection ) failed in all testing to contain and restrain theft of the video content, even with CDN tricks at edge-origin network detection for regional licensing. Both Cache and opencode scripting of html5 will not defend the video product from theft and re-purposing.

    Flash 10.1 on the other hand will let us defend the content with our own drm devices, work on internet connected hdtv ( boxee, tivo etc )and widgeted works.

    Basically for content of greater importance than your cat coughing up hairballs on youtube, HTML5 is a red herring to the TV/Film industry.
    This is a big problem for me now, since we are contracted to provision iPad compatible equivalent content. We had hoped that packager would be there for us to try and make it all work.

    stuff like this http://amc.ctnhd.com/breakingbad is immensely painful to reproduce on ipad ( our drm turned off for this so go ahead and have fun ) but make no mistake – The distribution side of TV.Film is vastly different, regionalised and has requirements for monetizing that require us to make and take measures to defend content.

    How easy it would have been with packager. IMPOSSIBLE with HTML5.
    Steve Jobs knows this, it assures that only APP store solutions will work, so HTML5 imparts an open standard failure and he gets a “cut” that the TV.film business doesnt want in the monetizing mix.

    I feel like selling tshirts with a big apple that says “Reality Fugitive” — because it is not possible to live up to what Steve Jobs says is true, leaving the competent developer between a rock and a hardplace. Educating clients is a high timecost for us now and its all Apple’s doing.

  1. [... Update: I mistakenly said that Firefox does not support HTML 5. They do through the Ogg codec. There seems to be a lot of talk going on lately about this so ...]

  2. [... Update: I mistakenly said that Firefox does not support HTML 5. They do through the Ogg codec. There seems to be a lot of talk going on lately about this so ...]

  3. [... Update: I mistakenly said that Firefox does not support HTML 5. They do through the Ogg codec. There seems to be a lot of talk going on lately about this so ...]

  4. [... Update: I mistakenly said that Firefox does not support HTML 5. They do through the Ogg codec. There seems to be a lot of talk going on lately about this so ...]

Leave a Comment