

I'm not categorically anti-GPL, but I like to stick with the most permissive license possible. Lightspark is GPL v 3, which means picking its bones for code will require our entire project to be GPL as well. There might be great things to learn here. The good news is that it's still getting (slowly) updated! It seems to have really struggled to attract contributions, but it's a notable and relevant project, particularly for being written in C/C++. Unfortunately it is still very alpha, only implements about 60% of the Flash API's, and relies on plugin architecture to work in browsers, which means it's days on the web are numbered given how anti-plugin browsers have become. Lightspark is similar to Shumway, but it's written in C/C++. Shumway uses the Apache License 2.0, which as I understand it is a pretty permissive license. The chief limitations of Shumway are that: a javascript based interpreter is sloooow, and lack of resources killed the project before it could really achieve its goals. It took a "full emulator" approach - an entirely HTML5 based tech solution, with runtime AS3 interpretation (a full javascript AS3 VM), and the ability to render arbitrary swf files. Mozilla Shumway is a the most interesting and relevant project but is basically considered dead in terms of active development.

Here is a list of previous attempts to create a replacement Flash player (I am also quite open to hearing alternatives) Prior attempts We should use LIME/OpenFL for SWF parsing and rendering, and pair it with Adobe's open-sourced AVMPlus for action script bytecode execution. I propose we take the best from each and make a true Flash Emulator. However, there do exist a wide variety of open source projects that have solved nearly every problem necessary to build the sort of true "Flash Emulator" we want. There do exist several incomplete and/or abandoned projects, namely Mozilla's Shumway, as well as the Lightspark project. There's the existing Flash player binaries, but with Adobe sunsetting Flash in general there is no guarantee that the Flash player will continue to work reliably into the future, even on desktop targets, and it is already persona-non-grata on all major web browsers.Īs of this writing, there exists no complete, "Flash Emulator" that supports arbitrary SWF playback with sufficient accuracy and performance. We must rush to preserve what's left, but we don't even have a reliable open source Flash player that we can count on standing the test of time. Some Flash content is already lost forever - including stuff that was quite popular in its day. Today, most web browsers block Flash content by default, if they even feature a Flash plugin at all. Once upon a time, nearly all "rich internet applications" and web games were written in Flash.
