Adobe Flash 10.1: Harnessing GPU Acceleration And Tackling HTML v5 Competition
Adobe’s Flash has certainly been on the hot seat of late, and not just due to yours truly. No less an industry luminary as Steve Jobs reportedly ripped into the pervasive proprietary browser plug-in during a recent meeting with the Wall Street Journal, echoing and expanding on comments he’d earlier made during a pep talk session with Apple employees:
Jobs was brazen in his dismissal of Flash, people familiar with the meeting tell us. He repeated what he said at an Apple Town Hall recently, that Flash crashes Macs and is buggy. But he also called Flash a "CPU hog," a source of "security holes" and, in perhaps the most grevious insult an famous innovator can utter, a dying technology. Jobs said of Flash, "We don’t spend a lot of energy on old technology." He then compared Flash to other obsolete systems Apple got people to ditch… Jobs claimed the iPad’s battery performance would be degraded from 10 hours to 1.5 hours if it had to spend its CPU cycles decoding Flash, we’re told…Ditching Flash would be "trivial," he suggested. For one, he suggested the newspaper use the H.264 video compression system, which is compatible with both the iPad and the Flash Player installed on most Web browsers.
The lack of integrated (or for that matter, add-on) support for Adobe Flash or Flash Lite in iPhones, iPod touches and the forthcoming iPad (all based on the same ARM-flavored spin of OS X), has been a longstanding grumble of the systems’ owners since their introduction. And given the comments above, expecting Apple to embrace Flash any time soon would probably be foolhardy. Granted, Jobs echoed issues that I myself have raised in past print and online editorial pieces. And admittedly, Flash Lite is a halfway-there hack that, like WAP before it, forces content developers to redundantly code two versions of clips and applications, therefore limiting its appeal and restricting its relevance. But let’s be clear; at its core, and IMHO, Apple’s resistance to Flash is fundamentally nothing more than a defensive move intended to preserve and pad the company’s fiscal fortunes.
Consider, for example, FarmVille, one of the most popular (albeit incredibly annoying, again IMHO) Flash-based games available both hosted on its own website and as a Facebook app. Every eyeball on FarmVille and its revenue-generating advertisements is an eyeball that could instead be on an advertising-supported (or not) app sourced from the iTunes App Store. And speaking of iTunes, you gotta believe that Apple wants to do everything in its power to keep its customers away from Hulu and Netflix Watch Instantly (which uses Windows Media video and DRM technologies, not Flash, but the overall point still holds), and instead getting their movies and TV shows from Apple’s lucrative Store. Not to mention all of the Flash-based streaming music services such as Pandora and Slacker…after all, let’s not forget, Apple forced YouTube to redundantly re-encode its Flash-based video library in native H.264 in order to obtain Jobs’ blessing for the service…blazing a path that Hulu may be pondering following.
What of Jobs’ performance- and battery life-sapping claims regarding Flash? They definitely have merit, as my own past testing has revealed, but specifically only when hardware acceleration support on the graphics coprocessor doesn’t exist. As such, the situation is very reminiscent of past ones involving CPU-centric video algorithms until GPUs (sometimes) embraced them…MPEG-2, for example, WMV/VC-1, various MPEG-4 flavors, Ogg Theora, and On2 (now Google’s) VP series. And Adobe’s hard at work on garnering cognizance with a diversity of both PC and handheld GPUs in its upcoming Flash v10.1 iteration, which is currently in advanced beta testing. Flash 10.1 will be supported in Google’s Android (albeit only latest-generation builds, and only with latest-generation CPUs and GPUs), Microsoft’s Windows Mobile v7 (albeit not out of the chute, and Adobe’s dropped earlier plans to support v6.5 and earlier Windows Mobile iterations), the Nokia-led Symbian O/S, and Palm’s webOS. Yes, keen-eyed readers will note that not only is Apple not on the list (for reasons that have everything to do with Apple), RIM’s Blackberry O/S is also absent…
Check out, for example, this recently published video clip showing Flash 10.1 running on the Google Nexus One:
More video demonstrations are here, on various hardware platforms. As such, I don’t buy developers’ claims that Apple’s objections have anything to do with iPad user interface limitations. Implementing Flash support on a touchscreen device might not be easy, but it’s possible…and anyway, what engineer doesn’t love a good challenge?
Bottom line, even if HTML 5 is ascendant, Flash won’t fade. For one thing, reiterating Drucker’s Law, "An emerging technology must be 10x better than the incumbent approach in order to have a reasonable likelihood of replacing that incumbent". HTML 5 doesn’t pass that law. HTML 5 is also predominantly focused on video, at least in the near term, although it’s just put a death sentence on Google Gears-coded applications. Flash’s focus is much broader, expanding to rendered graphics and beyond. HTML 5 is only supported in latest-generation browsers; need I remind you of the enduring ‘popularity’ of Internet Explorer 6 (although Google’s doing its utmost to put a stake in IE6’s heart)?
And here’s the biggie; HTML 5 (at least currently) has no notion of digital rights management. DRM is a core concern of any content rights owner, and without it (in robust, long-proven-unhackable form, I might add), HTML 5 is a non-starter for anything of notable value. So please keep working on improving Flash, Adobe, but don’t worry; your fifteen minute of fame aren’t (yet) over.