It’s not long until Mobile World Congress and those fortunate enough to be there will finally get the chance to try Flash Player 10.1 running on mobile. To-date we’ve only seen some sneak peek videos released by Adobe showing Flash-enhanced sites running on devices such as the Nexus One, but I want to know how the majority of Flash-based sites will perform, not just a carefully selected few.
It’s clear even from those early videos that Adobe has spent considerable effort optimising Flash Player 10.1 for mobile. Forcing Flash to run on mobile devices without exhausting memory and at the same time keeping performance up must be an incredibly difficult task – after all, to increase performance you tend to have to consume more RAM.
From digging around on the web, here’s what I believe the engineers at Adobe have done to address these issues.
Flash 10.1 will support hardware acceleration. This will include video acceleration where the device’s GPU will be used to decode video leading to better video quality, improved frame rate and less power consumption. It doesn’t end there though; Flash’s traditional vector rendering pipeline will also be supported by the GPU meaning that vectors, bitmaps and animation will all render faster.
A very important question regarding mobile is ‘how will the device handle multiple player instances?’ After all, it’s a frequent occurrence to see multiple SWFs served from a single page and there is a real danger that this could cripple the handset. Adobe’s engineers have spent considerable time and effort addressing this. Traditionally on a web page, every single instance is started. But for mobile, Adobe have written an instance manager that will decide which instances should be started and which should not initially.
To aid instance management there will be a new HTML parameter called hasPriority that will allow the web author to specify the SWFs that are most important to the overall experience. The instance manager will also look for helper SWFs that are typically 1×1 pixels in size and start them up. The manager will also monitor memory usage closely and shutdown instances when the device is close to running out of memory. When shutting down instances, the player begins with those that are off screen or do not have focus.
The good news is that these changes aren’t just restricted to mobile – desktop users will also benefit from many of the changes too, although I believe the GPU vector renderer will initially only appear on mobile. And for those who’ve complained about Flash’s performance and poor stability on Mac, from a tweet by Adobe’s Lee Brimelow it looks like there might be some light at the end of the tunnel regarding that too. Here’s what Lee had to say in his tweet:
We will be putting out more information about the player issues on OS X very soon. Thanks for being patient everyone.
I’m looking forward to Flash Player 10.1, especially for mobile. Now does anybody know if it’ll be making an appearance on my Nokia 5800? Looks like Android is the lead platform.