5 ms·
An interesting solution could be to work at the SWF level instead of the Player level. Instead of rewriting, porting or locking down the Player, could it be pos
by demurgos 9y ago
An interesting solution could be to work at the SWF level instead of the Player level. Instead of rewriting, porting or locking down the Player, could it be possible to automatically translate SWF files to another format?
I am fairly certain that there was some work about this but I'm not sure if anything succeeded. Regarding the ActionScript part, a plausible solution would be to target Haxe with the OpenFl library. OpenFl is a Haxe library exposing the same API as Flash so you can use it to compile projects to the targets supported by Haxe (JS, C++, ...). Some advanced AS code could be tricky to translate, but using untyped sections and restricting it to JS it could maybe be possible?
- joosters 9y agoI remember hearing about some attempts to do this, I thought they had got fairly advanced. A quick search brings up a project called Smokescreen, which could play some flash. However, the project's website no longer exists. There's a github project - https://github.com/cesmoak/smokescreen https://github.com/cesmoak/smokescreen but the last commit was in 2011.
- demurgos 9y agoThanks for the link, it's definitely interesting. Unfortunately it seems that most of the open source Flash projects died out around 2011-2012. What I had in mind was more about converting the programs (SWF files) instead of fixing the VM. I know that there were some open source VMs, but were there some successful attempts at converting SWF files to a different format?
- toxican 9y agoI've seen a few solutions to Flash's death pop up yesterday and today..all dead github projects. My hope is that the official announcement from Adobe will reinvigorate those developers or inspire new ones to pick up the mantle on continue on.
- simion314 9y agoYou need the entire Flash Player APIs implemented, graphics, audio, video , just translating the bytecode from the swf won't be enough, I think is similar to Java , it is useless if you can compile or run Java code if you do not have the entire base/core libraries converted and the ability to load any third party libraries.