Seems like the new <video> tag is all the hype these days, especially since Firefox now supports it. News of this are popping up in blogs all over the place, and everyone seems to be excited. But what about?

As much as I searched I could not find anything that would make it better than the good old Flash video. In fact, I see only problems with it:

  • It will still be some time before all the browsers start supporting it, and much more time before most people upgrade;
  • Flash is available already and everyone has it;
  • You can couple Flash with whatever fancy UI you want for controlling the playback. I gather that the tag will be controllable as well (via JavaScript probably), but will it be able to go fullscreen?

The only two pros for a <video> tag that I can see are:

  • It is more "semantic" - which probably holds no importance to a whole lot of people, including me;
  • It is not dependent on a single commercial 3rd party entity (Adobe) - which I also don't see as a compelling reason to switch, because free players and video converters are already available, and Adobe is not hindering the whole process in any way (it's not in their interests even).

So... what's the big deal?


OK, so there is one more Pro... maybe. Support for mobile devices. Hard to say though. A number of thoughts race through my head about the subject:

  • How many mobile devices are actually able to decode video at a decent speed anyway, Flash or otherwise?
  • How long until mainstream mobile devices get the <video> support? Even if it is available through updates, how many people actually do that?
  • How many people watch videos on web pages on their mobile phones at all?

As for the semantics part - I understand that search engines might be able to detect videos better now, but... what will they do with them anyway? OK, so they know that there is a video in the page. And? They can't index a video! I'd like some more arguments here.


Just thought of another Cons. This opens up a whole new area of cross-browser incompatibility. HTML and CSS is quite messy already in this aspect. Flash at least is the same everywhere. But it's enough for at least one major browser vendor to decide against the <video> tag (can anyone say "Internet Explorer"?) and we have a nice new area of hell to explore.


A Pro just came in. More competition = more innovation. That's true. Giving Adobe more competition will probably force them to improve Flash in areas it has been lacking so far. Linux seems to be a weak spot for it, cited by many.

+7  A: 

For me, it'd be very nice to have the computer built-in or another third party player play the video much more efficient than Flash can do. Not all platforms have Flash: iPhone and Android (for now at least), where the tag may work sooner rather than later. Not talking about Linux either, where Flash works quite badly.

Regarding the Internet being more semantic, it may be important to you. I'm not sure how search engines likes Google and Bing find videos but probably they just know about a bunch of Flash video implementations, so third party small players have no chance. If we are all using the same standard tag, then everybody is on a level playing field.

J. Pablo Fernández
Google Video, I believe, finds video through the metadata posted with a video on sites like YouTube and Dailymotion.
I'm as pro-flash as anyone, but this is the biggest advantage for <video> to me. Everything inside Flash is hidden from general-purpose parsing, including indexing, which may sometimes be what you want but usually it's an unfortunate evil.
+29  A: 

Flash is slow and inefficient on non-Windows platforms. It has potential security flaws. It stores "flash cookies" on your computer that you don't know about. There is no flash on the iPhone and unlikely ever will be (as a result of its being proprietary and its high CPU consumption).

HTML 5: Could it kill Flash and Silverlight? is an article that might answer your question.

There are probably more reasons out there.

Seth Johnson
Mmm Flash seems to be worse on Linux in the latest versions (noticeably worse in Ubuntu Jaunty). YouTube is now below-acceptable performance (100% CPU and skipping frames).
Craig McQueen
Totally off topic, but I can't even watch Hulu bearably under Jaunty with my C2D.
The link is broken.
Flash, for me, seems slow and inefficient everywhere, even on Windows.
J. Pablo Fernández
All good points, but I think the main reason why there's no Flash on the IPhone is the App store, and the wonderful 30% commission Apple is taking on *every sale* there. Why endanger that with free Flash apps and games?
Uh, do you realize that there are free (ad-supported) games on the iPhone? I don't think Apple takes commission on those.
Seth Johnson

My understanding is that the big deal about the tag is that it is an open standard. When only one vendor can implement Flash, you are at their mercy for implementations/ports to new platforms, browsers, or even browser versions.

The excitement is all at that level, not down in the implementation details. Worrying about which is technically superior is sort of beside the point in the same way as concerning yourself about a fascist government's ability to make the trains run on time would be.

Has Adobe ever shown any lack in their effort to port their player? I don't know any other software that would run on so many platforms as theirs. It's very much in their business interests to port it wherever possible.
Flash may have been ported to many platforms, but like Alex Basson already indicated: Flash on non-Windows often performs bad. Don't know how that fits into their business interests then.
@Vilx: Your comment reads to me like "Massa's allways been *real* good to me". Not all of us get to live in the Big House though. If you are comfy with your situation, and don't mind the constant worry that Adobe might one day decide to sell you down the river, fine. Some of us don't want to live that way.
Sorry, I'm not familiar with that analogy (Massa/big house). But I can guess what it means. I trust Adobe because I see that if they do decide to mess with the video business, then they're going to hurt themselves more than they hurt me.
@Ted: Comparing proprietary software to fascism and slave-owning is hugely unnecessary. Both free and proprietary software have roles in the tech world, and talking as if technical superiority was irrelevant is not in the best interests of F/OSS...
@fenomas: Actually, I'm sympathetic to your point. The problem I have in making analogies is that my basic issue is one of allowing someone else control over me, when I don't have to do that. That's the point I need to get across. If you can think of an analogy that works toward that point that isn't extreme in some way, I'd like to hear it.
@Vilx: What happens to you if Adobe just decides they don't need to support something your business is built on anymore? What happens if they have a run of bad luck and go out of business? What happens if they buy one of your competitors and decide to no longer license their software to you? Why put yourself in the position of having to "trust" someone else not to hose your business?
Adobe let it's devices SDK languish for years, and Opera had no choice but ship Wii version with Flash 7 when v9 was de-facto standard (Adobe has revived their mobile SDK recently, so the situation is better at the moment, but there's no guarantee they won't abandon it again).
+1  A: 
  • The user has control of the UI: they can choose which browser they would like to download and use, and depending on how it works(I'm not sure of the details, but I'm familiar with the concept), even keep their browser and just choose the handler npapi plugin for it. How many times have you been stuck using a shitty actionscript video control interface because the devs of the site you're on were too lazy to do it right (or use flowplayer). Power to the users!, I say.

  • Its open source. Now, i'm not RMS or anything, and its nothing to do with ethics or anything else like that, but OSS is just the more efficient, better way to go. It produces better code.

  • Better platform support. Right now, Linux + flash = bad. Adobe's the only one who can do anything about it. This sucks.

  • like you said, more semantic.

Open Source == better code. Now that's just racism! ;)
Ok, ok, its not ALWAYS true, but generally, it is.
Well... I guess this would be worthy of a whole new discussion/flame thread. :)
oh, c'mon, even the evil empire admits its true internally! (halloween docs :) )
actually, if i got it right, in the final spec, the user will not have control over the UI ... instead the UI controls will be well defined in the spec, scriptable through JS and stylable with CSS ... i am **so** looking forward to everyone styling those controls ... ;-P
IME, Open Source == significantly faster code in a few specific areas, and worse elsewhere. An enormous amount can be learned from a few lines of expert-contributed code, but OS projects often have 90% of their code utterly lacking in elegance / efficiency. (large projects are a frequent exception here)
i think the microsoft windows code is also utterly lacking in elegance / efficiency.... so OS == better code ming not be true, yet OS != worse code is certainly true.
+3  A: 

64 bit, and Linux support will be nice. Flash still (in two thousand freaking nine) lacks in this area. Just having some real competition is always good. If the major video sites start using this along side Flash, or even in place of Flash; That will be one less proprietary program I will need. Open source means faster innovation. Give it time, people will create a way to deliver DRM protected videos with it.

Dailymotion uses open video.

My belief for pros:

  • It's catching the HTML standard up to the current practical uses of the web.
  • It seems like it would be easier/better to get mobile devices to support the video/audio tag rather than porting Flash to the devices.
  • Ogg is an open standard, while Adobe controls Flash.
  • I've already seen in some places people putting up solutions to have a fall through, meaning if your browser doesn't support video/audio tags, it will use flash.
  • Easier interaction with standard HTML elements and javascript.

My biggest con would be that Ogg is a bit behind in terms of compression and quality. But I would imagine it's being worked on. More importantly, if more people start adopting it, more people will likely join the the work on Ogg to make it better.

Competition is key as well, as there is no major player forcing Adobe to really do anything with Flash. So Adobe can control the market in terms of video content on the web.

Ogg and Flash are not directly comparable.
Stu Thompson

It will be nice to use some of the HTML 5 features... in 5-10 years from now...

We still have too many visitors using Internet Explorer 6 to ignore them, it will be quite some time before we can even move on to only testing the pages for IE7+...

+1, I think this is a relevant point, why bother supporting <video> when it will only serve a small subset of users? The same for all the hype around the Javascript engines of Chrome/Firefox 3.5, it's nice for synthetic benchmarks but worthless in practice as a webapplication has to be fast enough to run on IE, voiding any gain by compiled Javascript. Both will be nice in 5 years and that's optimistic.
It's not hard to degrade the video tag to flash for IE users (see link in my answer)
There are more browsers than FF and IE. Anyone who was coding HTML during the late 90s knows lots of reasons to run away from tags that only work in one browser..
<layer> anyone? ;)
Maybe you could also have a look at http://code.google.com/p/video4all/ ("Bringing <video> tag support to archaic browsers that don't support it!")

One Con is the fact that the current html 5 spec has not been able to agree on a single codec due to browser vendor dissagreement.

From the article below:

"After an inordinate amount of discussions, both in public and privately, on the situation regarding codecs for and in HTML 5, I have reluctantly come to the conclusion that there is no suitable codec that all vendors are willing to implement and ship"

Browser vendor squabble

Ultimately, even if you do use the video tag, your video codec may not be supported in all browsers, even if they do support the tag.

As others have mentioned, this may not pose any real issue, but I believe having to make multiple versions of the same file available certainly negative.

Darien Ford
Err. Codec requirements were dropped, NOT the video tag. At the moment, it looks like there is going to end up with everyone supporting Ogg Theora anyway - Apple is the only hold out among vendors supporting <video>, and I don't imagine they are going to survive in the market if they keep that up.
David Dorward
You are right, I should have clarified.
Darien Ford
This is pretty much a non-issue. See [Daring Fireball][http://daringfireball.net/2009/07/ffmpeg2theora]: all this means is the server has to store the video in two forms and make both alternatives available.
Seth Johnson
@Stu You are right. Edited and updated for clarity.
Darien Ford
Encoding in multiple qualities and CODECs is fast becoming the reality. Back when people were happy with 256kbps Real streams, and phones were monochromatic LCD, this was OK. Now we have various qualities and devices--web, iPod, phones, and soon TV. The reasons for complaining about encoding content into multiple formats/qualities is weak. And, I believe, if one wants a lowest common denominator CODEC, then they can go old school with h.263 which is likely to be everywhere. Only the new, sexy CODECs are an issue.
Stu Thompson
The spec shouldn't decide the codec anyway. I don't recall the <img> tag having any such requirements besides the industry standard JPG and GIF, and more recently PNG. I could imagine one or two of these three image formats becoming obsolete in 10 years when better ones will be introduced. Same goes for video codecs.
@Hannson: Not so...all browsers implementation of the `img` tag do not universally support all image formats . I encourage you to look review this link for details: http://en.wikipedia.org/wiki/Comparison_of_web_browsers#Image_format_support
Stu Thompson
+23  A: 

Flash is a real headache on non-Windows platforms. Not only is it slow and inefficient (as someone else pointed out), but it isn't very stable, either. As we learned at the most recent Apple WWDC, "browser plugins" (read: Flash) account for the majority of all application crashes across all of Mac OS X (and by "majority", I mean some absurdly high number like 80% or something, can't remember the exact figure offhand). This is such a problem on Mac OS X that for Snow Leopard, Apple has re-engineered Safari so that Flash runs, not just sandboxed, but in fact as an entirely separate process, so that when (not if) Flash crashes, Safari as a whole remains unaffected.

The instability of Flash on OS X, coupled with its poor performance, is why...

  • ...Flash is not now, nor unlikely to be soon, available for the iPhone. I disagree with the premise that people don't want to watch video on their mobile devices -- this is why Apple made a special arrangement for YouTube to serve their content in h.264 for the purposes of allowing it to play on the iPhone. I, for one, happily paid the $10 for MLB 2009 exactly because I could watch video on my iPhone, and if they made every game available for live viewing, I'd pay much much more.
  • ...so many Mac OS X users (like me) are installing Flash blockers for their browsers. By my choice, Flash content no longer even loads in my browser without my explicit permission. Since installing it, my CPU usage has dropped considerably, and my browser crashes have basically gone away. This is great news for me, of course, but it's bad news for any advertisers hoping to serve me Flash-based ads.

As far as users having to know anything about codecs is concerned, you can avoid this issue and serve them the appropriate codec (including Flash, if their browser doesn't support OGG or h.264) by using the simple non-Javascript html code found in this article.

Alex Basson
OK, this is a good point.
+1 for overall good argument, but I use Flash heavily on OSX and Safari (being an ActionScript developer). Of the browser plugins accounting for 80% of all app crashes on OS X, maybe that's the Flash Player, and maybe it's not. I don't experience a lot of browser crashes, and like I say, I use the FP heavily. And, 80% of all app crashes isn't a large number on OS X. At least not for me. Lastly, it may be the case, but I've never noticed, in human terms, slowness or inefficiency in the Flash Player on Mac.
Ross Henderson
+7  A: 

Adobe's Flash player (being a plugin) does not take any of the browser's privacy settings into account, while Adobe is not actively making clear to normal users what is being stored. This alone is a good reason to stop using Flash (or any video plugin) and welcome <video>.

Some details about the privacy issues (not to be confused with security issues or vulnerabilities) can be found at How to automatically remove Flash history trail? on Super User.

Like Vilx noted in the comments: these privacy issues remain when replacing Flash-video by <video>, as Flash is used in many more ways. Still, once <video> is supported then site owners who offer video (and don't use Flash in any other way) will have a choice not to burden their visitors with this poorly documented record of visited Flash-sites.

(EDIT: I replaced the details with a link to SU, which gives some more insight; some of the comments below will only make sense with respect to a previous revision.)

But these problems will persist anyway unless a person uninstalls Flash Player. And nobody will do that just because they can now watch videos without it. Flash player is used for far more than just videos - there are also a ton of games and even whole webpages built on it. People will keep it, there's no doubt about that.
True, @Vilx, you've got a point there. However, once <video> is supported then as a site owner I will have a choice not to burden my visitors with this poorly documented privacy breach.
this is not totally true. only sites embeding flash content are saved. and LSO are not cookies, but a local storage. cookies are a part of HTTP, that allows server to set variables that will be transmitted by the client. their usage for session handling has proven to cause vulnerability. LSOs stay on you machine and can be read only from flash files coming from the same domain. flash player has its own settings, since it occurs people have multiple browser. and one plugin. this is a bit like installing quicktime on windows, and complaining, it ignores the automatic updates settings :-P
Allright, of course Flash does not store any sites without Flash, I should make that more clear. But LSO definitely behaves like cookies as we know them from HTTP, and that's exactly why many call them Flash Cookies. In fact, even Adobe uses that name in many of their support articles. The main difference: unlimited storage in terms of time and size, cross-browser, and quite unknown to most users. :-(
This is a pretty FUDdy answer. It's true that LSOs are woefully inaccessible to deletion and privacy mode, but at the same time they are not cookies (they're not sent out with outgoing HTTP requests, for one). And saying that they are "more dangerous" than regular cookies is huge FUD, considering that there are known exploits with regular cookies and none with LSOs.
Though I don't agree to a plain "they are not cookies" (agreed, they are not *HTTP* cookies, but even Adobe often writes "sometimes called Flash LSOs or *Flash* cookies"), I hope my last edit makes it more clear that my answer is about privacy in the sense of tracking (and leaving a trail), not in the sense of security or vulnerabilities. Reading my reply to back2docs' comment again, "LSO definitely behaves like cookies as we know them from HTTP" should also have referred to leaving the trail. And by the way: I never wrote that all Flash Cookies are more dangerous than all regular cookies :-)
+39  A: 

The biggest benefit of <video>? It's easy. Crazy easy. Ridiculously easy. Your-grandma-can-code-a-video-tag easy. <video src="myfile.ogv"></video> and you're done.

<video> also has clear benefits for your users. They get a browser-native video player, which can potentially be very efficient. They get a consistent UI that won't change from site to site. Mobile browsers that may not implement flash can still implement <video>.

The only con is a temporary one, and that is compatibility. Obviously IE doesn't support <video> now, and likely won't for some time. As well, there's some fight over which codecs to support for the videos - Firefox and Opera are betting on Ogg Theora, while Apple is shipping H.264, and Chrome is splitting the middle and shipping both. For now, this just means that you have to post your video in two formats and provide them both with the source element, i.e.:

  <source src='video.mp4' type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
  <source src='video.ogv' type='video/ogg; codecs="theora, vorbis"'>

To add support for IE and other downlevel clients (like older versions of FF/Safari/Opera/etc), just put your standard video embed code inside the <video> tag, below the <source> elements. If the browser supports <video>, it'll ignore the embed. If it doesn't, it'll ignore the <video> and run the embed instead.

In other words, to get a reasonable cross-browser compatibility, it goes from "crazy easy" to "sphagetti-level messy". Plus, you now have to encode the video in at least 3 different formats now. And you still haven't got rid of the old flash player - you've only added some mumbo-jumbo code around it. Riiight.....
The compatibility issue is not an issue (see link in my answer). @Vilx - I disagree, moving to proper standards is an important part for evolution of the internet. Your argument was heard some time ago when people started moving from table based layout to divs and css.
@Vilx, that's supposed to be temporary, though it will probably take at least 5 years for <video> to become mainstream
hasen j
Encoding in multiple qualities and codecs is fast becoming the reality. Back when people were happy with 256kbps Real streams, and phones were monochromatic LCD, this was OK. Now we have various qualities and devices--web, iPod, phones, and soon TV. The reasons for complaining about encoding content into multiple formats is weak.
Stu Thompson
Vilx: Yes, it's difficult to use compatibly *right now* (though hardly 'spaghetti-level messy'). It's just now being adopted by everyone. That's normal. If you want the ease I talk about in my answer, wait a few years for the browsers to stabilize. The non-IE browsers should join together in a few years when they're done with the codec fight, and with luck IE9'll include <video> with a compatible codec as well. Then you've just got to wait until you can ignore IE<9 and you're set.
Two formats will do, as flash supports H.264 (`video/mp4; codecs="avc1.42E01E, mp4a.40.2`). Or you can go with three formats, and add WebM support. Anyway, you don't need FLV for flash: you can reuse the MP4 video.
+9  A: 

It's also an advantage the video-tag is native to html, so it integrates nicely. This sounds like a non-issue, but it's not. You can for example overlay the video with some HTML caption. And the HTML caption can use the same styles as other captions on the same page.

You also can apply some (future) CSS transitions to the video element: look at this demo.

Mixing video with HTML/CSS is a good reason indeed. When all the browsers support it, this will allow for some really nice effects!
yay! Full color GIFs

You can use Flash today... it's the most realistic way to reach full-sized audiences.


John Dowdell
Can someone say... "bias" ?
@LiraNuna: You think he's wrong?
hmmm ... well, at least he's honest ... could have pretended he's from the W3C ... :-D ... and he has a very good point ...
It seems clear to me that to only use HTML5 these days would be a mistake. To not even offer HTML5 as an option, however, stands in the way of progress, as <video> is clearly the way to go.
+2  A: 

Seth got most of the big ones. Others I can think of:

  • the size of the test matrix blows up (I saw one bug occur only on IE7 with Flash 9.0.48 -- how many minor versions of Flash do you want to test with each browser?)
    • Even if you were to pick only one exact version to support, and force everybody else to upgrade/downgrade, it's not true that "Flash is the same everywhere": the "Flash plugin for IE" and "Flash plugin for everybody else" aren't even the same binary (and yes, it matters: they access the network in different ways, which was part of the cause of my IE7/F9 bug)
  • everybody writes their own player so UI and reliability are inconsistent
  • browsers are allowed to implement a full-screen option for HTML5 video, which means they all will soon if they don't already (many Flash video players have this but many don't)
  • no, not everybody has Flash (granted, it's more common than HTML5 video right now, but it's not all happy candy fun land)
  • scripting is a huge pain (has its own DOM, events, not-quite-ECMAscript language, etc.)
  • it has abysmal performance, if you're not on Windows (running it in a Windows virtual machine under Mac OS X uses 5-10x less CPU than running the native Mac plugin)
  • it has lousy stability (every browser crash I've seen in at least 3 years has been on a Flash page; if your video kills their whole browser, they're not coming back, even if it's really Adobe's fault)
  • it doesn't run at all in many places, e.g., in a 64-bit process (if your users happen to launch "Internet Explorer (64-bit)" instead of "Internet Explorer" by mistake, poof, no video)

In short, the only reason to use Flash is "most people have it installed today" -- which can be a pretty good reason, as long as it lasts.

Many of these are good, but a few seem off. While it's true that Flash isn't identical across versions and browsers, it's certainly more consistent across versions than, say, CSS, and more consistent across browsers than, ah, anything. ;) And as for scripting being a pain, I rather *like* having the exact same DOM in every browser :P And I don't know if you've looked at AS3, but by comparison JavaScript is getting pretty ice-age. (Until Harmony emerges anyway..)
Good points, except: (a) there are JS/CSS libraries that cover most of the inconsistencies (it's really not that bad), and (b) the failure mode for weird CSS in IE6 is "spacing isn't right (small hack needed)", while for Flash bugs it's often "doesn't work at all (and good luck debugging!)".And (per my first point), I'd actually much rather have highly inconsistent CSS than slightly inconsistent Flash; the former is O(n) test runs, while the latter is O(n*m) test runs (i.e., there's no way we can ever cover them all).
Oh, and as for DOM, I rather like having one DOM for my entire document. Different priorities, I guess, but IME passing things between JS and AS is much more painful than browser DOM differences.
+1  A: 

Since now the browser gets the video file via regular HTTP, as compared to some obscure method defined in the SWF file (which would need to be parsed), you can now have web proxies that can also cache video files! As well as have the very browser be able to cache a video file.

Well, as far as I have seen flash videos, they have all used plain HTTP underneath. Just fire up Fiddler and see what they are doing (nice way of saving ANY flash video btw).
Half true: Flash can get video from either HTTP or RTP. Fact is, most on-demand video is delivered via HTTP. Watch how youtube servers up videos if you don't believe me.
Stu Thompson
+10  A: 


  1. You can easily use the tag and let it degrade to flash or other filetypes/codecs for backwards compatibility without using javascript.
  2. Doesn't need a proprietary plug-in
  3. Is platform-independent while flash is not (see nr. 2)
  4. Using it will encourage other browser vendors to implement it (read as IE)
  5. The tag has semantic meaning.
  6. Comes built into the browser.
  7. No vendor lockin


  1. It's a part of an unfinished standard.
  2. A very small percentage of installed browsers support it <-- not an issue (See pro nr. 1)
  3. Browser vendors have yet to agree on a standard codec <-- not an issue either, see link in nr. 1)
All this talk of platform independence is laughable. HTML is far more platform DEPENDENT than flash, because every platform implements HTML differently, and its implemented by a different company on every platform! Flash is a platform of its own (along with Java), that's developed cross-platform by a single entity, and therefore displays the same cross-platform... like stuff from the original version of flash still plays correctly in the latest plugin. Flash is a godsend, and its available on 99% of browsers (http://www.adobe.com/products/player_census/flashplayer/version_penetration.html)
Why would you require users to install an insecure, slow and resource-heavy plugin for their browsers when they shouldn't need to, see pro nr1. What about platforms that Adobe doesn't support or drops support in the future? I suppose you don't use css either as a web developer? It is after all by your own account, far more platform dependent than flash because every platform implements CSS differently. I'm not saying that we should ignore flash but we shouldn't ignore the possibilities of open standards, especially in this cause where flash can be used for backwards compatibility.
So pushing the users to have to download new codecs is going to be easier? This was how things were before flash took off - every media type (Real, WMP, Quicktime) had a very simple tag that fired off, and the plugin handeled it.
I specifically said that it wouldn't be required. It is possible to simultaneously support many codecs (including flash) so there's no need for user involvement for that matter.

I believe this will demolish Flash, as an open source standard support on iphone and android and other mobile handsets can be rapidly implemented as well as desktop OS support. The OGG format allows me to skip forward in the video file over a regular http connection. I can right click and save the file if allowed, sharing and transporting these files will be easier. As 'proper' markup it can be navigated by the literally 100's of thousands of users using specializad devices to access the Internet. As a 'proper' dom element it can communicate with javascript allowing it to fully interact with the rest of the page content, and finally, Microsoft have a track record of pretending to ignore upcoming standards while promoting their proprietary solution, as user demand peaks they throw the rudder full right and roll out an implementation to secure their user base. Flash has been the only choice for video on the web, but not for much longer, its an excellent piece of software in its own right and I see it holding some position, but for video it's only ever been an 'only choice' runner.


I think the large majority of these answers condense to this: Flash is engineered mostly for the mass market, so it provides the easiest way to cover the bulk of the market, but it is deficient in covering less common and emerging platforms (i.e. shaky Linux and no iPhone). This has been the story with Flash pretty much from day one. It's practically a case study of how proprietary and OS software differ (and complement each other).

On the other hand, I think most answers are seriously underplaying the codec angle. There is one primary reason why Flash video dominates the web today: it's the only way to publish a single version of a video and expect it to be viewable by more than about half your audience. Even though the video tag looks to be designed well, as far as matching up multiple source files to the user's installed codecs, it's still difficult to know how many codecs are needed to cover what percentage of an audience, and impossible to know whether people will upgrade as new codecs emerge. Flash video has more known quantities, and a reasonably good expectation of upgrades for the large bulk of the audience.

I also kind of think that the performance angle is overstated in most answers, as well. It's true that Flash uses more CPU than any other player I have, but it also starts up more quickly - by orders of magnitude. When I come across a web page with an embedded MPG, my browser is frozen for 15+ seconds while QuickTime boots, or perhaps only 5 seconds if it was already running. (Almost as bad as PDF ;) ) Obviously Flash is less efficient in some ways, but from where I stand it's more efficient in others; like any software solution tradeoffs are involved.

QuickTime is just another browser extension like Flash. The video tag being built into the browser will definitely mean that there will be no startup time.
+68  A: 

Imagine if there was no img tag. If you want images, you have to use a 3rd party plugin, that is really slow and has no standard way to embed it in a page. You can't easily copy images in this way, and search engines basically have no clue what if it's an image or a game or anything.

Without this, no images were available.

Then imagine that a browser was released that just let you use this fancy new img tag.

The video (and audio) tag are a logical sensible way for things to work. We shouldn't need a third party plugin to use a completely standard media format.

Rich Bradshaw
Interesting analogy. From this viewpoint, the <video> tag does indeed make sense.
Yes, very good analogy. And SVG is a painfully unsupported CODEC...sigh...
Stu Thompson
@Stu - Ironically there are SVG browser plugins :)
@Hannson: Only needed on IE, of course.
Not a good analogy. Videos and images are not the same. Images are static and videos are interactive and require an interface. Images are aligned together next to other images to form larger patterns and backgrounds, whereas videos are often center pieces, not to mention they embed sound and we can only listen to one soundtrack at a time to make sense of it. Static images are a lot like text, in fact text is often embedded as an image. Video is very different; the only thing it shares in common with images is pixels, but that's true of anything displayed on a computer screen.
Stu Thompson
@Stu: The analogy is bad, because it oversimplifies the problem. Adding a "video" tag (and codecs) to a browser will not change that video is graphical and interactive and needs a G.U. interface to control it. There is no silver-bullet video playback interface for which everyone will abandon their creative drive and bow before. If you then try to add custom interfaces, you've successfully defeated the purpose of an easy-to-use, "just works" tag. Furthermore, video is not always accessed linearly, and this tag would have to support streaming and random access for all supported formats. G.L.
@Triynko: I would disagree with "there is no silver-bullet video playback interface". Video playback is a simple aggregation of a few VERY common, VERY well understood tools: play, pause, stop, forward, reverse, volume and a time tracking bar. It doesn't matter how many visual variations on those tools you have...the all video playback interfaces boil down to the **same, exact tools**. Given that, I would expect browsers to expose the visual elements of a video playback interface as stylable via CSS soon enough, allowing each site to customize the look and feel.
Skip to end, skip to beginning, full-screen, different resolution...
@jrista: ...resolution, CC language, timeline comments, video object manipulation (http://www.engadget.com/2008/11/29/video-adobe-dabbles-in-video-object-manipulation/). One-size-fits-all video makes no more sense than one-size-fits-all image gallery control... <image-gallery style="nextbutton-hover:url('nexthover.png' [...]>, but it's all the same basic stuff: next image, previous image, zoom, category, search, tag, rotate, compare, comment, etc. etc. etc. [sarcasm]. A simple style sheet won't let you innovate around an interactive object. It's a creative BLOCK, and will NEVER dominate.
If you need a bunch of custom tools for your video playback, you can always use a custom implementation. However, for the vast majority of video playback, your basic video controls are useful enough. Perhaps a "full screen" control should be part of the standard set. There should also be no reason why things like timeline comments couldn't be done via events and standard HTML/CSS. A standardized video control will make video considerably more accessible than it is now, as all video right now requires a custom control. A standardized tag won't eliminate the need for custom controls, though.
+4  A: 


  • Ogg/Theora/Vorbis is royalty-free for all parties is the chain (the H.264 grace period for hosting H.264 ends at the end of 2015 and encoding and decoding are already subject to royalty)
  • Once fallback for IE is no longer necessary, <video> will be easier than Flash
  • No need for the plug-in prison—browser vendors can fix their own bugs
  • Integrates with CSS effects
  • Integrates with SVG effects
  • Integrates with JavaScript
  • Can be ported to any platform without permission from Adobe
  • User can save the video to disk easily
  • Can be made work safely in syndication feeds (but software not ready yet)


  • IE support for the video element has to wait until IE9; current IE-compatible Ogg fallback renderer relies on Java until the ActiveX solution or the Silverlight solution is finalized
  • Safari needs XiphQT to play Ogg, because Apple hasn't shipped Theora.
  • Royalty-encumbered format needed with the iPhone (but no worse than Flash)
  • Can't go full-screen in every desktop implementation shipping today
The issue with Theora are actually not royalties but patent trolls. Once the big players with the deep pockets begin to support it we can expect someone evidently getting sued.
Someone (MPEG-LA) is known to collect royalties for H.264. No one is collecting royalties for Theora. Both are vulnerable to so far theoretical patent trolls. (Consider how Microsoft got sued for MP3 despite having licensed the portfolio.)
Getting-addicted period has been moved to 2016.
Edited the comment to reflect recent developments.
+1  A: 

More pros for Flash:

  • Adobe can add new features and new codecs to video a lot quicker to a mass audience (generally under a year over 90% of users upgrade to the latest version of Flash) compared to browser vendors (there's still a large number of IE6 users out there and that browser came out in 2001).

  • Features found in Flash that I imagine will eventually make it to browsers but are not there yet:

    • full screen video (there's a Firefox add-on that supports this but none of the browser do natively yet)
    • video cam, only a small number of websites use this, but there's some really cool stuff happening these days with the video cam and augmented reality in Flash
    • peer-to-peer video, was just added in Flash Player 10 and as the penetration of Flash 10 is getting close to 90%, I think you will see more

As those who say Flash is not indexable, check out what Google has been doing lately with indexing Flash content thanks to a headless player Adobe has supplied. So if you do a google search for FLV files, you can see that Google already indexes Flash video files.

Meanwhile, Adobe Premiere CS4 has speech recognition that will output subtitles for video files in an XML format that can be easily used in Flash video. So expect video for Flash to become a lot more searchable in the future.

Matthew Fabb
I would argue that the same people that are using IE6 are likely using Flash 6. I've run across dozens of people with computers with ancient Java / Flash / horrible codec packs installed, and nothing else. Users upgrade, not the company that makes the product. Your note on subtitles is a good point, though to my knowledge both competing video formats allow subtitle streams, and <video> would allow users to have a system-wide preference for subtitle displays, without waiting for Adobe to add that feature.

Seems to be a kind of dingo's kidneys ... you're writing in your post?

OK, my post isn't that constructive and actually I don't want to discuss, but IMO you have no idea which pros and cons Flash have, just suggestions and assumptions. Please leave it.

Say...what? To whom are you addressing this?
You don't want to discuss then don't post! -1
+2  A: 
  1. Many Mobile Devices support today: iPhone, iPod Touch, Symbian S60, Android, etc

  2. Mozilla Firefox, Google Chrome, Apple Safari, and Opera all support the tag (granted, you'll need to encode to 2 formats: H.264 and Ogg Theora. However, you can reuse the H.264 video with a Flash or Silverlight failsafe for older browsers and Internet Explorer

Justin Haygood
+1  A: 

I would say the definite pro of using <video> instead of Flash is that I will be able to watch videos in my browser without having it crash or go crazy slow. I use 64bit OpenBSD, so gnash is all I can get and I only enable it when I'm feeling really risky because most of the time I'll come across a flash banner ad and my browser(firefox 3.5) will crash.

And my mobile phone browser doesn't support flash, yet it supports the video tag(and it's not an overly "fancy" phone either).


I've been reading around this recently for a site I'm building now. I've gone with Flash video for now, because the launch is pretty soon. Also, we're on a shared hosting environment, so all video conversion has to be done before the video is uploaded. I don't want to ask the client to upload two versions of each video.

But, ultimately, I do want to switch to open video. It looks pretty cool. I've seen a demo which uses javascript to overlay subtitles on a video, degrading gracefully in the absence of javascript to a text transcript below the video. (I think that was on A List Apart.) And Mozilla have some fun demos up. http://arstechnica.com/open-source/news/2009/05/google-dailymotion-endorse-html-5-and-standards-based-video.ars

And this: http://www.bluishcoder.co.nz/2007/08/svg-video-demo.html.

I think HTML5 is more convenient to use than Flash. HTML5 will become more and more popular, but it won't completely replace Flash.


Regarding this point:

"As for the semantics part - I understand that search engines might be able to detect videos better now, but... what will they do with them anyway? OK, so they know that there is a video in the page. And? They can't index a video! I'd like some more arguments here."

if optimized properly, a video will include a transcript, which a search engine can read, and correspondingly divulge all of the information about the video. I guess they can index the video's page? as for the value of it...i guess i won't have to watch crap I don't need, to find something I need, bcz I will know exactly what's in the video


Flash is controlled by a single company. That company can decide exactly what to do with the future of Flash and nobody else can affect it. Let's say, for example, that they (Adobe) suddenly decide charging a license fee for using Flash. What would happen to all the millions of web sites depending on it?

We need taking action, and that is now. We must use open standards, and we do need it badly. That's the only thing that makes the tag bleeding important to the world.

(Licensing fee for Flash might or might not seem like a realistic move from Adobe, but that does not matter. My point is that they are in control. Another thing that could happen is that Adobe decide to cancel Flash. Imagine what would happen then, if there were no tag.)


HTML5 Pros:

  1. It supports whole new DOM API for video objects, you can write script which can interact with new HTML5 tags.
  2. You can detect different video format support play, pause, and track video playback.
  3. Its already well supported. Firefox, opera, chrome already support chrome, video , etc... Even youtube is testing some HTML5 player.

Flash Pros/ HTML5 Cons:

  1. Flash is there everywhere. So HTML5 will take lot and lots of time to catch up.
  2. Flash support extensive features, let it be HW rendering, high definition video supports, Animation features it supports are simply irreplaceable(?)
  3. DOM API would never replace AS2/AS3 feature already supported by flash.
  4. Just count the number of professional flash developers out there... they will never switch unless HTML5 answers all their questions. There are number of flash developers who haven't switched from AS2 to AS3 yet :-) :-)
+1  A: 

There are many good points here, and like a Martial Arts fighting style, each point has its thrust, and each can be defended; but each can be defeated with the proper moves.

Anyone standing on arguments about "propietary" plugins will fall quickly. Microsoft, Apple, and Adobe all bear the guilt, but that's just BUSINESS. You won't change business overnight, and each layer of complexity added by a new tag such as <video> which supports a very technical interface will result in * slightly * different implementations by each browser.

HTML 5 works now, and so does Flash. How it is implemented, the skill it requires- this defines each resource, whether it's an employee's performance, a webmaster's power, or a domain's influence.

Although I'm only 40, I began programming when orange or green monochrome monitors were the color choice, and hardware installation came with prayer books instead of instruction manuals. Maybe you could figure out AT commands for the modem when it wouldn't configure with your hardware, and 64K RAM was like, WOWWWWW!

HTML 5/Flash is a minor nuisance compared to that crap. Let's all learn how to collaborate in community toward a better resource. There is an Open Source Flash Project, it will have bugs. So will HTML 5...

Every argument here is true, but not necessarily productive. Use that energy toward a solution.

Max Bellasys
Amen! I didn't think there could be an accepted answer to this question, but I think that these words of wisdom deserve to be on the top.