With the impending launch of the Apple iPad, the Cupertino-based company's shunning of Adobe Flash technology has been brought to the forefront of technological discussions. While it was one thing to forgo Flash on a small, mobile device such as the iPhone or iPod Touch, some are questioning whether lack of Flash support is going to be a make-it-or-break it feature for the new slate devices arriving next month - devices which, if you believe Apple CEO Steve Jobs - are "better than netbooks."
On the flip side, Apple supporters echo the company's sentiments that "Flash is a CPU hog" and including support for the technology in Apple's mobile line-up would negatively impact battery life.
However, recent tests have put Flash up against HTML5, the new web markup language that eliminates the need for the Adobe plugin. The results of these tests show that this is not a simple black-and-white issue. Is Flash really a CPU hog? Yes, in some cases. But, surprisingly, not all the time. In fact, sometimes HTML5 actually performed worse.
Jan Ozer is an expert in video encoding technologies, has worked in digital video since 1990 and is the author of 13 books related to the subject [Editor's Note: some people have pointed out that Ozer has done seminars and written books featuring Adobe products, so therefore he makes money from the success of Adobe Flash. We don't think that has any effect on the test outcomes, but we thought it was worth updating the post to note it.] Recently, he put HTML5 up against Flash in a series of tests that pitted the two technologies against each other on both the Mac and PC and in different web browsers including Internet Explorer 8, Google Chrome, Apple Safari and Mozilla Firefox.
The results of the tests in their entirety are published here on StreamingLearningCenter.com. The summary in a nutshell? Flash isn't always a CPU hog, sometimes that honor goes to HTML5.
Some of the highlights of Ozer's findings are below, broken up into both Mac and Windows test results.
In analyzing the results of the tests, Ozer determined that the key to better Flash performance was dependent upon whether or not it could access hardware acceleration. This feature, launched in Flash 10.1, allows the plugin to use the graphics processing unit (GPU) on some computers to decode video. Depending on the video card and drivers, (NVIDIA, AMD/ATI and Intel offer products that support this), the video decoding process in Flash 10.1 can now work for all video playback, not just full-screen playback as was available in Flash 10.0.
According to Adobe, hardware acceleration is not supported under either Linux or Mac OS X, the latter because Mac OS X does not expose access to the required APIs. Adobe goes on to say "The Flash Player team will continue to evaluate adding hardware acceleration to Linux and Mac OS X in future releases."
Here's what this all means in layman's terms: Apple isn't allowing Flash to become more efficient on their Mac OS X/Safari platform (or their iPod/iPhone/iPad one, either) by not providing the access to the hardware it needs to reduce its CPU load. Adobe is waiting and watching to see if they do, but, as Ozer says "the ball is in Apple's court."
Will Apple budge? At this point, it's unlikely. In blocking Flash on Apple devices, the company can easily claim that it's simply not an efficient technology...and that's true for now, considering how it's set up. But if the company wanted to allow it and make it work, it seems reasonable to believe that they could. This is what leads some insiders to believe that the decision to block Flash is less of a technological one and more of a business-minded one. After all, if you could easily visit Hulu.com to stream TV shows and movies, then why would you need to buy them from the iTunes Store?
So while Flash's "CPU hogging" may be a contributing factor in Apple's decision to not support the technology on their mobile devices, that's probably not the only reason behind the block.
Thank you to Dan Rayburn, who pointed us to Jan Ozer's article.
Comments
Subscribe to comments for this post OR Subscribe to comments for all ReadWriteWeb posts
I tried
I many times tried to use HTML test on Youtube. it does not work correctly. It seems to load faster as visible from slider but it actually not. and it gives jerks when you play. Mine is only 256 kbps speed so I generally cache content and then play video on youtube. but in HTML5 test on youtube caching does not work.
The only people these results should surprise are the ones who aren't paying attention. Apple's decisions regarding Flash have everything to do with controlling content and therefore revenue from their devices. If it didn't, they wouldn't support Java - for all the same reasons they claim they don't support Flash.
I'm not saying Flash doesn't have problems, but it's pretty apparent that their "laziness" just isn't such a reality based on what they've been doing on other platforms.
These tests were conducted on desktop platforms. The war is on the mobile battlefield. Let's see testing when Android/Palm webOS has Flash vs HTML5 on iPhone/iPad and Android/Palm webOS.
I can't speak for anyone else, but my MacBook Pro (last years model) fully stocked on memory, in Firefox, chokes on every single Flash video. It's terrible. I run a flash blocker in firefox now. Its usable in Opera and Camino, but totally unusable in Firefox. Whereas, HTML 5 video is fantastic. Loads faster, plays instantly, doesn't send my cpu into a tail spin, doesn't spike Firefox's memory through the roof. Same goes on my kids brand new mac mini (fully loaded on memory). They hate flash and complain about it all the time.
This misses the point. Flash will not work with "touch" since so many of its controls are mouse/keyboard based. This is a "Mexican standoff" and I would be more comfortable putting my money on Apple than Adobe. But it sure is fun to watch.
Disclaimer: I hate Flash. It's a buggy piece of garbage and I use Flash-blocking tools on all platforms.
That said, you've got it exactly right when you say that "Flash's "CPU hogging" may be a contributing factor in Apple's decision to not support the technology on their mobile devices, that's probably not the only reason behind the block". Apple has generic language in the iPhone developer agreement that blocks substantially more than Flash from the App Store:
3.3.2 An Application may not itself install or launch other executable code by any means, including without limitation through the use of a plug-in architecture, calling other frameworks, other APIs or otherwise. No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple's Documented APIs and built-in interpreter(s).
If it weren't for this, Adobe would be able to publish an app that allowed users to browse with Flash. It wouldn't be as efficient as it could be with hardware video decode support, but it would at least be something. There are already alternative browsers on the iPhone (see iCab, for example), but they are required to use the WebKit engine and can't bundle other plugins.
This condition also blocks Java from the App Store, along with numerous other programs, such as emulators for classic computer architectures and programming tools. I used to have a dozen different programming languages on my Palm OS devices, including a full C compiler! None of these would be allowed on the iPhone.
This condition also blocks Firefox and the Opera Mobile browser from the app store, as neither of these browsers uses Apple's JavaScript engine.
Please, mention this condition when covering the issue of Flash. It blocks a wide variety of useful applications from the iPhone. Flash is just a secondary victim.
It's sound's strange to me. Why would Apple want to block site's like hulu.com? Hulu could switch to .h264 (html5) video's just like youtube and vimeo. Blocking flash is a strange way of holding back competition for iTunes.
I'm not really into OS X programming, but can't adobe use the Grand Central Dispatc and OpenCL API's that apple put in Snow Leopard?
I personally will never buy an iPad until it supports flash or hulu.com and others (online magazines like catchmagazine.org) work in HTML5.
Moot point
Flash assumes mouse input, will never function properly for touch ( iPad, Android tablets ) without a total rebuild.
Larger issue - Flash is now, will always be, closed proprietary plug-in, with brutal developer fees and licensing. HTML has zero fees, no licensing entanglements and ( I'm just as shocked as any one by this ) will supposedly be supported in IE9
Nobonetopick: that doesn't make any sense. It's the same as saying HTML or normal GUIs won't work. The fact that it can use mouse position and keyboard states doesn't mean it can't use clicks and gestures. The platform is fully supportive of those UI elements. Stop repeating this myth, it's just nonsense.
So, this test tells us that the Flash plugin performs better on Windows than it does on the Mac. There was a time, before twitter and facebook and all the social media gobliegoop - you know a time when not EVERYONE on the planet had a microphone and was a technology expert - and quite a few people knew that to be the fact.
Notoriously, since Macromedia and the Flash 3 days, the flash plugin performs worse on the Mac than on Windows. Back then, it was simply because Macromedia had more engineering resources on the Windows version since the majority of usage was on that platform.
I believe "performance" is the scape goat for the reason why Apple doesn't bring Flash on it's iPhone OS. Does anyone remember the presentation of OS X some 10 years ago? Adobe came out as a leading partner for porting its top apps (Photoshop etc) to the new OS. All the apps were pigs and were running on crutches - but dammit - they were running on OS X.
Apple has nothing to benefit from bringing Flash on the iPhone. They are doing quite well dominating the market and having tons of apps/games/video content without Flash. Adobe on the other hand, has all the reasons why they want Flash on that gravy train.
I am going to have to agree with Mike Cane, these tests need to be done on mobile devices. Also measuring cpu usage alone is not enough. The assumption here is that gpu cycles are more efficient on power consumption than cpu cycles. I would like to see that documented as part of the test. Also if battery life is the issue then that is what should be tested, not the component parts of what might be draining the power.
You forgot to mention that Jan Ozer sells books and gives paid seminars on Flash and was hired on more than one occasion, by Adobe Press, to pen books about Adobe products. Disclosure fail.
Todd: so I guess the videos we've seen around of existing Flash content working perfectly well on touch devices such as the Nexus One or the Palm Pre are what, a surreal dream?
There's no "complete rebuild" necessary. Unless one uses an interface that relies 100% on mouse overs (how many of those do you know?), things work perfectly well. And to be quite honest, I've seen a lot of HTML interfaces and menus relying onmouseovers for pulldown. This will also need to be "completely rebuilt", therefore by your logic the ipad shouldn't have HTML.
Your ignorance of the licensing snafu with HTML video and "brutal developer fees" while you forget the main tools are free and that the format needs no licensing just makes your whole "larger issue" point a baffling exaggeration.
The only real comparison can be made once the html5 spec has been signed off and all browser support it.
Does anyone know how much cpu a js controlled canvas animation uses compared to flash?
Well what normals might not know about HTML5 in Chrome is that a) it's still very early and there are many issues being worked on with respect to video and audio performance on Mac OS X Platform (remember it's still in beta). and b) the standard for HTML5 has not yet been finalized.
Flash is a closed system that vastly underperforms on non-windows PC systems. It is legacy, HTML5 is the future. Why is it the future? Because developers wont have to pay for software to develop HTML5 like they do for flash and they can use the same language and tools they use for the rest of their website work.
I'm not going to trust claims that Apple is blocking flash from accessing the "required hardware" on the Mac unless you have the evidence to prove it. Out of anyone developing for the Mac, Flash is the only program I've heard that's having this "problem." So, what's the deal here?
+1 youngluck -- "You forgot to mention that Jan Ozer sells books and gives paid seminars on Flash and was hired on more than one occasion, by Adobe Press, to pen books about Adobe products. Disclosure fail."
The guys livelihood depends on Flash being around. Could you not mention a little bit more about his past involvements in each technology before blindly posting his findings?
It is certainly a business move on Apple's part. Apple owns patents that are involved in the HTML5 spec. One is the Canvas tag and the other is of course their H.264 video codec. The more proprietary code Apple can push into the HTML5 spec, the more opportunity they create for themselves.
Apple is attempting to put a standard on web design by doing this. It seems they are trying to push developers to focus on building services for Apple's platforms instead of creating technology. The fact that Apple doesn't support any plug-in architecture on iPhone or iPad is more proof that Apple wants control of internet technology.
Sure, Flash is proprietary code, but at least Flash is a runtime environment for software. Software is open in that it allows developers to innovate / invent new technologies provided they deploy on the Flash platform. HTML5 is simply a markup language and does not allow for any innovation. It also requires a web browser to be viewed where as Flash can be deployed across all screens and devices (proven with the imminent release of Flash Player 10.1 and AIR 2.0 for mobile).
You can read a bit more about the Apple HTML5 Open Standards issues and rivalries here: http://blog.nothinggrinder.com/id-rather-be-a-woz
The interesting thing, is that according to this article from Adobe's Tinic Uro who's on the Flash Player team, Apple recently worked with Adobe to make Flash Player 10.1 faster in rendering graphics on a Mac (faster apparently than Windows now):
http://www.kaourantin.net/2010/02/core-animation.html
Yet Apple won't work with Adobe on improving Flash video on the Mac opening up the required API.
You trash Flash for being proprietary and yet support H.264 in HTML5. H.264 is proprietary. It requires a royalty fee to be paid by the content creator if you're making money with your video.
Apple is spearheading HTML5. They own part of H.264. They sanction what apps go on THEIR devices. They control everything. You guys are being dupped in the name of "standards".
"hardware acceleration is not supported under either Linux or Mac OS X, the latter because Mac OS X does not expose access to the required APIs"!!!
It is case of security!!! Now wonder there is so much of malware for Windows since its APIs provide access to the hardware.
So many apples in the walled garden.
I'm not sure you're comparing apples to apples. Flash is a runtime. HTML5 video is a call out to whatever plays video and setups up a context for rendering for . I don't even know why you'd expect performance of playing video to be close, it actually surprised me that they were on non-windows platforms but as I've said Flash is a runtime and can do things like defer to the GPU if possible.
Adobe has already stated that CoreImage/Animation will be used on OS X to dramatically drop CPU usage to the point where it will be faster than Windows.
I guess the better question is how does render video and can/will the process be improved? If they're just pipelining the video to something like ffmpeg and playing the video, do you really expect the performance to be that great? Or does it load up QuickTime on OS X, which isn't the quickest thing to run already?
I guess I'd rather know more about how the runtime and each of the browsers play the video rather than just looking at CPU numbers and calling it a day.
In much cases CPU usage depends on developers optimization ability. So it doesn't matter if it is Flash or HTML5. A web application in both platforms without optimization could kill a 8 core CPU.
It is a big brands war that's happening now, so we all have to wait and see what's next.
Adobe is in cooperation with many mobile device and platform manufacturers (who are looking forward for lack of iPhone sales), and probably Apple Mobile devices will be only the ones who don't support Flash Player soon. Besides I don't think Adobe will allow Flash to die after all that investments and those smart guys should have a plan as we saw a couple of examples at Adobe MAX 2009.
@David Yes, h.264 is proprietary but MPEG includes approximately 350 members per meeting from various industries, universities, and research institutions. Not just Apple.
Because the Flash plugin is privately owned it is dependent on Adobe to provide upgrades to all OS's to perform equally. This is not what they've been doing. Except Windows, Flash performs lousy everywhere else. With h.264, it allows an equal playing ground for performance. Adobe hasn't even mentioned what when hardware acceleration will be available for Linux.
I sure it'll be nice to have Flash videos on many smartphones but there will be a price to pay. With that come Flash ads which will also help to murder battery life.
Your conclusion
...more of a business-minded one. After all, if you could easily visit Hulu.com (or, overseas, the BBC iPlayer, for example) to stream TV shows and movies, then why would you need to buy them from the iTunes Store?
does not make sense as BBC iPlayer is available on iPhone.
There are some misunderstandings in this article and in some of the comments.
H.264 is NOT part of the official HTML5 spec. The codec is still being agreed upon. It is likely that Google's recent purchase of a streaming video company will result in Google open sourcing that company's videos codec in order to mitigate the proprietary and licensing concerns of the other proposed codecs.
Adobe's claims of hardware acceleration not being supported in OS X and Linux are false. Apple exposes hardware acceleration through the Quicktime API, however, Adobe is complaining because they want lower level access to the hardware. They could readily utilize the QT API that Apple has developed for all OS X applications to be able take advantage of.
As for Linux, there are ways, though I can see the lack of "standardization" on Linux being a hurdle. Nevertheless, it is still possible.
To say "HTML5 doesn't run as well as Flash" in some scenarios is also an incorrect statement. That's like saying HTML4 doesn't render correctly because IE6 struggles to do so. HTML5 is a standard. Just as Javascript rendering engines have become more efficient, rendering techniques such as those for the canvas tag will become more efficient.
What's great about HTML5 is that performance is up to the browser developers. Being that HTML5 is a proposed standard, browser developers can readily, freely work on performance issues as necessary. It is yet another front they can compete on, and that's a good thing. With Flash, performance is bound to Adobe, and they clearly have not cared about performance across platforms (and not in general until recently).
Is this part a business move? Absolutely, but it's not to block sites like Hulu. It makes no sense to blanket-sweep the entire Internet's main form of video playback solely to encourage users to purchase from the iTunes Store when most of the videos on the Internet are non-commercial. As @Danny said, sites could easily switch to HTML5 (once the video codec is agreed upon).
This is both a technical and political war. I'm with Apple on this one.
Posted by: tricon.myopenid.com
|
March 10, 2010 9:32 AM
Not really a Pear to Pear comparison in this post. For Mac's you compare Flash to HTML5 and for Windows you compare Flash versions.
What I did like about this post is Apple's potential threat to not support Flash. I think that's great. I'm sure Google thinks it great as well as they keep selling more and more Androids + whatever else where Apple decides to not support. Cmon Apple, stop supporting Java while you are at it!
People, you can't say Flash dosen't allow Multi-Touch Screen!!
Here is even a tutorial, it's so easy, it basically takes seconds to convert from MouseEvents to TransformGestureEvent.
http://gotoandlearn.com/play?id=119
Let me understand what you guys are saying.
You are measuring cpu load, saying that platforms where flash can move it's processing onto the GPU have less cpu load, and then not telling us what the gpu load is?
I'm not saying that is completely invalid, but it seems a bit obvious that platforms where adobe has optimized flash to use less cpu and more gpu would have less cpu usage. The problem is that you make a hasty generalization that flash performs better on that system because of lower cpu usage. That is, simply, and invalid conclusion. To do that, you would have to show an aggregate of the cpu and gpu load. Instead, the only conclusion you can draw is that flash uses less cpu on those platforms. There is a difference which is noticeable by the person using the computer.
It is time for the web - and the web builders - to grow up.
You simply cannot build an open web on closed technology controlled by one agressive little company (Adobe Inc.).
The Flash problem is not Apples. And it is not Adobes either. Thats not where the problem is.
The problem is the people that have been allowed to build the sites. They have been using closed, commercial technology when they should have known better. Like the Toyota CEO these people should publically remorse, cry and ask for forgiveness for their incompetence and lack of vision. And then they should get a job at wal-mart and let more responsible web-builders do the heavy lifting in building websites from now on.
Apple is simply building a web-rendering boxes based on the open standards they are presented with. And a lot of sites doesnt work - this problem is with the sites and the people that make (or influence) the decisions. And this include readwriteweb.com. Shame on you.
Indeed, the idea that Apple is blocking Flash for iTunes-related reasons is silly. There is nothing stopping Hulu or Netflix from making an iPhone or iPad app to view their content, or making an HTML 5 version of their pages to serve to iPhone OS devices. It's simply not a logical conclusion.
The only tests that mattered here were the OS X Flash vs. HTML5. We all knew Flash was faster on Windows. Period. Sorry, but watching Flash in 720p vs. HTML5 is a joke on OS X.
85%-110% for Flash vs. 15% For HTML5. Since Jobs is the one who has brought this to attention, why are you testing Windows? His stance only concerns OS X and derivatives. And Yes the motivations are murky as to the reasons why. Is it bad openGL implementation? Apples lack of API access? These 2 companies rely so much on one another you would think they could get it together. But for the last 3 years they have been part of a blame game that has resulted in support less apps and crummy performance. We all end up suffering.
@Jensen Gelfond
Adobe itself already said that they cannot use the Apple's core API and that it is restricted... This is known issue for more than one year. That's why the Adobe is lazy Job's thing is just stupid.
@Mauro Adobe saying that it is Apple's fault is not evidence. An impartial developer explaining the situation and programming issues would be evidence. So if you're going to rag on me in specific, at least give me something to chew on.
Yet another misleading headline and poorly written article by this writer and site. Your headline claims to have HTML5 vs. Flash results, but it's mostly just a comparison of results from different Flash versions. In the case where Flash vs. HTML5 results are presented, Flash is clearly the poorer performer, which is not surprising, yet you downplay the results and quickly move on to irrelevancies, which is beginning to not be surprising here either.
Adobe goes on to say "The Flash Player team will continue to evaluate adding hardware acceleration to Linux and Mac OS X in future releases."
exactly the reason why flash is fubar, some people actually use linux and would benefit using an standard
Glad to see all the people who went to Parsons Art school, for a "degree" in Flash, defend Flash and reassure us all on how HTLM5 will never replace Flash in the comments!
:P
P.S. Flash will be a mere footnote in the history technology by ~2012
I'm pretty sure the only numbers there that are relevant to the iPad decision are the Safari / OS X numbers, and they seem to be pretty convincing in favor of the decision Apple has made. 12% compared to 37%?
The root problem isn't that Flash is "always a hog", it's that it's a proprietary technology controlled by one vendor and so the performance you get is at the whim of that one vendor.
Adobe can claim they can't get hardware acceleration on OS X or Linux, but it's an excuse. There are public APIs for getting accelerated H.264 playback in OS X and open source libraries for doing the same on Linux. The reason there's no hardware acceleration is because (at least prior to the iPhone and the Mac's market resurgence), Adobe didn't think those markets were important enough to spend the resources optimizing.
The desire for an open standard is only partially fueled by poor engineering in some of Adobe's products, but there's a much bigger, much more important issue that HTML5 is trying to address.
this article acts as if the graphics processor doesn't use power. just because the load is shifted to the "hardware" doesn't mean the load goes away. the processing done there continues to draw power from the battery.
when we see those figures the analysis will be complete.
oh.... sarah is a microsoft contractor. nevermind. i expected fairness. silly me.
This article literally makes no sense. There is no such thing as HTML5 video; when you are talking about video performance you are talking about codecs and decoders. Thankfully the article from Jan delves into the actual technologies involved, but shame on Sarah for not taking the time to write about things accurately.
Video is only a small part of Flash and HTML 5. Flash can do so much more then just Video, and therefore it should be able to co-exist with HTML 5, assuming the Adobe guys do keep their focus and do the right thing, as Flash is a hopeless illogical tool to work with. AS3 makes it simply worse
The clincher for me is that I use the iPhone for almost all my web use for over a year and very very rarely miss flash. For the vast majority of sites, it's a boon to avoid junk adverts or other dross that doesn't compete for my attention or take any resources (CPU or GPU, they would both take power).
The few sites I miss flash with I blame the web designers for using a proprietry format for no good reason since without fail, other sites provide the same utility without it.
Sure, I know there are flash games etc that I can't view, but since those tend to be written for either a mouse or keyboard, they would be unusable on the iPhone (or any other touch screen only device) anyhow without being re-written.
Will I miss flash on the ipad? Sure sometimes, but very rarely and I suspect with decreasing frequency as more web designers realise they're alianating a slice of their demographic - a demographic with demonstrably more disposable income from having paid the Apple tax in the first place :)
Let's just get right down to, shall we? Steve Jobs, as bright as the guy is, just doesn't want the ability for people to create Adobe Air apps for free to place on devices like the iPad or other Apple devices that can replace paid applications that folks would normally pay for from Apple.
It's not a compatibility issue. It's a greed issue. If your Mac is crashing because of Flash whereas PCs do not? Well - buy a PC - they just work.
I think this really goes to a bigger question.
what is the design requirements for this device?
heavy internet (can I call it that?) usage, or lighter more flighty usage?
I think that people are thinking this is a "tablet" like device, and I think Apple isn't/wasn't. I think the approach from Apple is that this an ereader that is pretty potent. People don't want the crappy ereaders available today... they want a portable device with a touch screen that has an OS built into it that's fast, non battery hog, and can pretty much do all the things there desktop can do on the go.
reality is that this isn't the device for that.
HTML5 is much, much more than just video. It allows us to use browser native user interface controls like buttons, text boxes, dropdowns, checkboxes and so on, it brings local storage, and more. HTML5 be programmed in universal (nearly) JavaScript rather than other proprietary scripting. Bring on HTML5 ASAP.
"Video is only a small part of Flash and HTML 5. Flash can do so much more then just Video ..."
And that is the real problem. You can skip the OS and the web browser if the Flash program is sophisticate enough. Worst but most people intentionally ignored, it is not open standard.
1 2 3 4 Next