PepperFlash (PPAPI)

How to replace Chrome's integrated Flash with Adobe's original Flash Player Plugin


You may have come across some issues with Chrome's integrated Flash Player Plugin called PepperFlash, like misbehaving Stage3D implementation, or bad performance with 3D content, bad display of fonts / typefaces or bad video playback.
As a developer of the 3D action MMOBG (Massively Multiplayer Online Browser Game) Xatrium, we know there are some issues with Google's implementation of Flash.
To overcome these issues, we will show you in this tutorial, how to disable PepperFlash and replace it with the original Adobe Flash Player Plugin. Please note that this guide doesn't apply to Linux system, because Adobe doesn't offer a Linux version of their plugin anymore. Further information about what's wrong with PepperFlash can be found below this article.

Step 1 - Get the original Flash Player from the Adobe website

Instructions about how to download the original Flash Player Plugin

Step 2 - Replace Chrome's builtin Flash Player with Adobe's version

Please note that, if Chrome updates itself, it will also update PepperFlash and re-activate it. You'll then have to disable it again.

Instructions about how to replace Chrome's builtin Flash Player Plugin with Adobe's version

What's wrong with Chrome PepperFlash?

Chrome's implementation of Stage3D is based on it's WebGL framework. In many ways, it behaves very different from the original implementation. First of all is to notice that OpenGL will always be used, even if DirectX is available. That is because of the WebGL-OpenGL-Wrapper.
What's happening in the case of Xatrium is that the Stage3D looses context on various, sometimes unpredictable occasions. For example it can happen, if we upload new geometry into the graphics card, or if the browser window is being resized. Chrome also seems to resize iframes randomly - this is truely weird!
So what's the problem with loosing the context? Well, all the 3D data is lost. Speaking not only of some geometry, but also of all the textures. While this is not a big deal for an offline game, because everything can be loaded from disk again and uploaded into the graphics card, it is indeed a problem for an online browser game like Xatrium. All the data has to be reloaded from the webserver and transfered to the player's computer. One might argue that there's a cache, but if that cache has exceeded it's quota, the data will be requested again.
In addition to that, we also got lots of error reports where the context was lost in the middle of the game, what is very unfortunate for the player.
If you have any further questions, you're welcome to join our community and ask questions in the forums.

written 2013-08-15 by Daniel Bunte (@DuncanConroy)