After reading Penguin.swf, it looks like the reason for Adobe not to open source the Flash Player is third-party codecs (On2, Sorenson, etc).
I’d like to shoot in the air. Maybe I’ll catch a bird.
I guess Flash Player does not re-implement those codecs but uses it as an external library. Therefore, a possible solution would be:
- Adobe releases the Flash Player source code that belongs to Adobe, not the third-party libraries. How is this going to benefit Adobe and Flash Player in general? A lot more people would hack in the Flash Player source, improving it.
- Adobe defines the API to access and use these third-party libraries or even a general API for codec access. Nobody modifies those source files because if someone breaks that API, Flash would not work with third-party codecs.
- Flash Player may be compiled without those third-party libraries. Whenever Flash Player tries to play a Flash movie that needs codec X, it searches the local computer for the codec. If codec X is not installed, Flash Player downloads it from Adobe as a binary. Something like what the Microsoft Windows Media Player does. How is this going to benefit Adobe and Flash Player in general? Whenever Adobe decides On2 VP6 is old and wants to use On2 VP7, no new version of Flash Player is needed: just download the new codec. Using a little part of wine/darwine (just like mplayer does), this method would work in every platform.
In short, what I’m proposing is a limited-capability, full open source Flash Player and third party codecs being downloaded from Adobe as needed. After a couple of movies, everybody would have the codecs they need (unless they choose not to install them, but that’s their option).
Update There was a comment on Reddit saying wine only runs on Linux-x86 and OSX-x86. Wrong. Wine runs at least on Solaris (x86 and Sparc), Linux (x86, Sparc and PowerPC), OSX (PPC and x86) and FreeBSD (at least, x86).
I think the whole idea of Flash player success is that it is a complete package. You either have it or don’t.
Compare this with dozens of variants of other plugins and their success or failure, including Java.
Flooding the world with Flash players crippled like you suggest, would do no good for Flash. Average Joe would get their negative opinion on Flash in general the first time they happened to miss a codec.
From the geek standpoint that certainly would open chances for tinkering around. As long as Flash success would last, that is.
It would clearly benefit all the community, specially the linux users.
You are wrong about “crippled Flash Players”. The open source Flash Player would be a full featured source player, lacking only third-party codecs. When such a third-party codec is required, the user is notified and the codec is downloaded from Adobe’s site, just like Windows Media Player does.