Adobe Flash: A Look At Browsers, Codecs, And System Performance

Final Words

Final Words

Codecs: If you want to make sure that hardware-accelerated decoding works, you have to pay attention to codecs. For better performance and battery life, hardware-based decoding is always better than software; video is going to be more fluid and your laptop is going to run cooler for a longer period of time. Remember that there are less popular Web sites that still use Sorenson Spark (Sorenson H.263) and VP6.

Providing you're running a capable platform, if you stick to Hulu and anything above 240p on YouTube, you will get hardware decoding. We see the vast majority of video ads (animated ads are different) continuing to use VP6, which isn't necessarily a bad thing. For one, we don't need high-quality advertising to understand gist of what they want us to buy. Also, some Flash video ads load automatically, and we'd rather not incur a performance penalty when we're browsing free content supported by Flash-based advertising.

Browsers: If you are a self-diagnosed Hulu or YouTube addict (particularly if you take advantage of higher bit rate options on either site), we have mixed recommendations. In windowed mode, you shouldn't run into any problems with any browser. We can certainly recommend Opera, Chrome, or Safari for mobile users who stick to windowed mode.

If you have a tendency to favor full-screen viewing, you have to make a choice. Again for mobile users, Opera, Chrome, and Safari bring you lower CPU usage and a longer battery life, but you won't often see the higher frame rates needed to enjoy scaling up to fullscreen mode. IE and Firefox remain our recommendations, if only for the better viewing experience. If you are on a desktop with ample processing muscle (anywhere in the neighborhood of a Core i5 should work), then every browser is a potential candidate. Just keep in mind that performance will differ in each browser during Flash playback.

If you have anything slower than a Core i5-540M, we recommend staying away from IE8 for Flash video playback. On our Lenovo ThinkPad T510, the frame rate drops are tolerable and barely noticeable. Slower systems, especially Atom- and Core 2 Duo-based machines, see a heavy penalty if you are just moving your mouse around. Hopefully, Adobe and Microsoft work on this issue for newer revisions of the ActiveX-based Flash Player.

Aero: Besides the whole Broadcom, GMA 500, and Windows 7 Starter conundrum, our tests show that enabling or disabling the Aero interface does matter. In general, you are going to see better performance from not having Aero enabled. On mobile systems, this will translate into additional battery life. But desktop users may only be stymied in multi-tasking scenarios.

Fullscreen: Again, this mattered in the YouTube, Sevenload, and Boeing videos we watched. Expect CPU usage to go up when you switch to any full-screen mode. However, we have been informed by Adobe that this is a matter of implementation. There are situations where there could actually be no net effect. This depends on how the content is packaged and presented to the consumer within Flash. There is simply no way for us to test Flash on every single Web site we noted earlier, so we leave it at that.

Hardware: We should add that AMD's UVD2 decode hardware doesn't seem up to par with the fourth generation of PureVideo (1215N: Ion 2, T510: Quadro 3100M) or the decode hardware on Intel's Arrandale design with HD Graphics (or newer Sandy Bridge-based CPUs) or on the older Core 2 Duo (UL20A: 4500MHD). This is also reflected in additional tests with VLC and Windows Media Player.

Looking for the best decode hardware wasn't part of our original plan here. However, at the eleveth hour, we also added a 1080p H.264 trailer to our playback tests. According to all of our results, the overhead of post-decoding processors such as frequency transformation, pixel prediction, and deblocking have a noticible affect on performance. As we already noted, VLC only uses the fixed-function decoder for its decode stage, but there is more to the decode pipeline than just bitstream processing/entropy decode that you would otherwise see employed on a software decoder. Note also that VLC only supports hardware decoding on Nvidia and AMD hardware. This explains why WMP12 is still more efficient at video playback.

Now, we enjoy VLC as much as everyone else does for its wide range of accepted video formats. However given the choice between longer battery life/a cooler notebook and more compatibility, we'll take longer battery life/cooler notebook. Remember that this applies only to H.264, MPEG-2, VC-1, and so on.

Swipe to scroll horizontally
Lenovo ThinkPad T510Aero EnabledHardware Acceleration DisabledHardware Acceleration Enabled
IE8 YouTube 1080pFullscreen21%12%
Chrome8 YouTube 1080p Windowed17%15%
Windows Media Player 12-3%
VLC v.1.1.5-12%

If you have a desktop replacement notebook or a desktop PC with a beefier processor, you aren't going to run up against the same problems that more mobile notebook users are going to see. Why? A processor like the Core i5-540M has compute horsepower to spare, so the scale of difference between a software decoder and hardware acceleration is that much smaller.

We should point out that on November 30, 2010, Adobe released Flash 10.2 beta which aims to do everything on the GPU, including scaling and color space conversion, through the new StageVideo API. As we mentioned before, in order to address the hardware fragmentation problem, Adobe is now relying more on native platform libraries. Thus, consistent acceleration with hardware compositing is now available in Flash Player 10.1 on Mac OS X, which takes advantage of Core Animation in browsers that support Core Animation (Safari). Flash Player 10.2 beta also now supports hardware compositing with Internet Explorer 9.

This is extremely exciting because we are talking about very low CPU overhead for video playback. This does really change the war between HTML5 video and Flash in a huge way, but we will explore that in another article. To the point, you should know that the latest version isn't able to achieve 0% CPU usage, but based on demos that Adobe has shown us, it gets damn close.

Don't expect the benefits to be readily apparent, because this needs to be enabled by content providers. If you install the update today, you won't be able to hit Hulu or YouTube and see benefits. It hasn't been implemented yet on any commercial site, though you can play around with some of the videos on Adobe's StageVideo demo site to get an idea of what to expect. We will take another look at this once it's final. Be warned: this could be the cause of frustration. Now that scaling and color space conversion will happen in the GPU, the door is opened for deficiencies in quality to affect video playback. Adobe must be pretty confident of the work the hardware folks are doing.

At the moment, some higher 16:9 resolutions make Flash text look insanely poor. But this is the case with all systems. If you look at a YouTube video at 1600x900 (full-screen) that has poor menu text, it looks the same on every system because it uses the CPU for processing. Video data can be processed in highly specialized ways and can be handled differently, as we have seen in past image quality tests between AMD and Nvidia hardware. We'll be watching with a close eye on how 10.2 materializes to change this. Hopefully, nobody takes any shortcuts.

As a final note, this look into Flash was a bigger bite than we originally intended to take because we had so many varaiables in play. As it turned out, we logged more than four hundred individual tests. All of the data is sitting in MATLAB in a multidimensional array, and initial analysis was performed using a programmable SOM. Due to the sheer volume of data, we have selected examples to show the effect of specific test parameters. Fortunately, none of the variables seem to be tied to one another. For example, there was no special case where Aero + Firefox + full-screen mode was better than Aero Disabled + Opera, and playing the video in windowed mode. Having watched somewhere around 20 cumulative hours of the Harry Potter and the Deathly Hallows trailer back to back, we'll end this discussion stupefied. It'll take some time for us to finally realize we aren't actually wizards.

  • Scott2010au
    Notify Mozilla - they care!
    Reply
  • Tamz_msc
    Detailed and interesting article.
    Reply
  • Another interesting article they should do in regards of flash is games/applications in flash vs java and other methods. I know a majority of the flash games that are on facebook have a tendency to put netbooks into a crawl whereas other methods perform a lot better. Also, an article on how to possibly improve flash performance on netbooks would be a really useful article as well.
    Reply
  • reprotected
    This article should have not been released. Now Apple, Chrome and Opera is going to race against Firefox and IE for the best flash playing browser. MORE HYPE!
    Reply
  • What about performance of flash in different operating systems. For example speed in Ubuntu and Windows?
    Reply
  • acku
    What about performance of flash in different operating systems. For example speed in Ubuntu and Windows?

    Installing Flash in Ubuntu isn't straight forward unless you are on the 32-bit version. I hear 64-bit is a nightmare. And I'm talking about the official version. That says nothing about the poor performance of Gnash and swfdec. Now there is nothing wrong with using Linux, but it wasn't intended for that type of usage. I code in Linux occasionally. That said, we might look into it down the road.

    Can you clarify what you mean by speed comparisons? I'm not sure I follow. Video is video. Regardless of operating system, the difference is going to be performance overhead.

    Andrew Ku
    TomsHardware
    Reply
  • What baffles me is the frame rate drop in full screen mode on Chrome/Safari/Opera.

    And it would be very interesting to see results on a Mac.
    Reply
  • acku
    UmrathWhat baffles me is the frame rate drop in full screen mode on Chrome/Safari/Opera.And it would be very interesting to see results on a Mac.
    Yeah, we only can speculate as to why that is for those three. There defiantly is something going on. As for Macs, point taken I'll be sure to address that in the future.
    Reply
  • randomizer
    9507892 said:
    Installing Flash in Ubuntu isn't straight forward unless you are on the 32-bit version. I hear 64-bit is a nightmare. And I'm talking about the official version.
    The 32-bit version works fine on 64-bit Linux, you just need to install the 32-bit libs. Flash player 10.2 beta has a 64-bit version I believe, and it doesn't need to pull in all those extra dependencies. I've used it on Arch Linux without an issue. Hopefully 10.1 officially gets replaced soon :)

    9507892 said:
    That says nothing about the poor performance of Gnash and swfdec.
    Gnash is an admirable project, but it's too far behind Adobe's Flash player to be relevant. I don't think it even works with some more recent videos.
    Reply
  • acku
    9507895 said:
    The 32-bit version works fine on 64-bit Linux, you just need to install the 32-bit libs. Flash player 10.2 beta has a 64-bit version I believe, and it doesn't need to pull in all those extra dependencies. I've used it on Arch Linux without an issue. Hopefully 10.1 officially gets replaced soon :)

    Gnash is an admirable project, but it's too far behind Adobe's Flash player to be relevant. I don't think it even works with some more recent videos.

    https://help.ubuntu.com/community/RestrictedFormats/Flash#Flash%20for%2064-bit%20%28x86_64%29
    While 64-bit Flash for linux is still beta, Ubuntu mentions that it provides
    # Greater stability
    # Greater speed and performance
    # Fewer dependencies to install

    over using 32-bit Flash in 64-bit Ubuntu. I haven't tried it myself, so I can't say for sure. I'm trusting Ubuntu's internal tests on this one.

    We're of the same mind on gnash.

    Andrew Ku
    TomsHardware
    Reply