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

Adobe Flash Player: A Brief History

For better or for worse, Adobe's Flash format is ubiquitous in today's Web surfing experience. In fact, it is estimated that roughly 75% of all online video is Flash-based (according to ComScore). Whether you are a prolific consumer of the missed TV show or just a business user surfing for news, there isn't a day that goes by that doesn't force you to bump into Flash content online. Now, there are competing solutions for content delivery, including Microsoft's Silverlight technology and HTML5 video. We will explore both of those at a later time. Today's agenda is purely Adobe Flash-related.

It is important to make the distinction between a codec and a file container. Adobe's Flash format is merely a video container, basically a storage wrapper. But three possible codecs can be used: Sorensen Spark, H.264, and On2 VP6. So, what is the exact difference between a codec and a container? Think about your most recent vacation. Your luggage is the file container, and the type of luggage you chose dictates where you put your clothes, bath products, computer, and so on. The codec (compression decompression) is the manner in which you squash everything (the data) down to fit into your luggage. This basically applies to any multimedia content. For example, Microsoft's AVI (Audio Video Interleave) format is a file container, but it it could have video encoded with H.264, Xvid, DivX, and so on.

Codecs: Where Are We Now?

In the earliest days of Flash (pre-version 8), the Sorensen Spark encoder was the only game in town. This was an incomplete derivative of the H.263 implementation that is still widely used. However, Adobe introduced another codec--On2's VP6 for Flash 8. At the same data rate, VP6 provides higher quality video compared to Sorensen Spark, but you lose some backward compatibility in the process. Once you move to H.264, the processing power requirement noticeably goes up, but so does the potential quality. 

For example, when Hulu first launched, the first round of videos were all VP6 (360p: 640x360 @ 700 Kb/s). However, they provided an option for H.264 (480p: 720x480 @ 1 Mb/s). According to Hulu's CTO Eric Feng, they chose VP6 because of backward compatibility. Now that almost everyone is at least running Flash 9, the company has discarded VP6 and made a full switch to H.264. So, if you get the feeling your laptop is running warmer watching Hulu today than it was a year ago (Ed.: would that be a feeling you get in your pants?), there is a good reason for that.

As consumers of multimedia content, we generally don't concern ourselves with matters of bit rates and codecs. However, when people talk about HD today, we spend so much time bickering about resolution that it seems foolish. For those of us that actually create 2D/3D content, it's the bit rate and codec efficiency that matter, not how many pixels run across the screen.

To that end, it is a pity that AMD seems to be falling into a quagmire of marketing terminology. Platforms based on the C-50 and C-30 APUs (Ontario) will be branded as "HD Internet" as part of its Vision campaign. The insinuation seems to be that these machines are more capable of playing back 1080p content than a Core 2, Atom/Broadcom Crystal HD, or Atom/Ion 2 combination, and that's not necessarily the case. Those C-series APUs won't even be going into configurations capable of 1920x1080. But as we mention, it's not an HD resolution that determines the quality of your content, but the bit rate and codec.

Never mind the fact that tiering a brand makes it all the more difficult to understand. Just imagine if Intel had tiered Centrino with Bronze, Silver, Gold, Platinum, and Diamond levels. Instead, we're dealing with Vision Black, Vision Ultimate, Vision Premium, Vision, and HD Internet. Convoluted enough for you?

But we digress...

  • 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