Changes

Jump to navigation Jump to search

Flash

146 bytes added, 19:11, 23 September 2022
Comparisons
! colspan="6"|HTML5 / WebAssembly
|-
|[https://github.com/vidkidz/waflash WAFlash]Ruffle
| rowspan="7" {{na}}
|[https://clubpenguinadvanced.github.iocom/waflashruffle-demo/ Web]|{{✗}} ||{{✗}} ||{{✓}}|-|Ruffle|[https:/rs/ruffle.rs/demo Web demogit]
|{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://awayfl.org/ AwayFL]
|[https://github.com/awayfl/awayfl-player git]<br />[https://exponenta.games/games/AFL/ Web demo]
|{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://github.com/vidkidz/waflash WAFlash]
| {{na}}
|{{✗}} ||{{✗}} ||{{~}}
|-
|[https://swf2js.com/en/ swf2js]
|[https://github.com/swf2js/swf2js Download (Free Version only)]<br />Demo sites:<br />[https://swf2js0.com/free/index7.html Free Version]<br />[https://swf2js.com/prod/index.html Production Version8]
|{{~}} ||{{✗}} ||{{~}}
|-
===Comparisons===
====Hybrid====
;Ruffle<small> ([https://ruffle.rs/demo/ web demo])</small>
:A Rust-based player that targets both HTML5 and desktop. Notably used by a bunch of veteran Flash content sites including [https://www.newgrounds.com Newgrounds], [https://homestarrunner.com Homestar Runner] and [https://www.coolmathgames.com CoolMathGames], and also by the Internet Archive's [https://archive.org/details/softwarelibrary_flash Flash library]. By 2021, it had progressed to the point where it can run many early Flash games, including the original Flash version of [https://www.newgrounds.com/portal/view/59593/format/flash?emulate=flash Alien Hominid]; support for newer AVM2-based files is now underway, although still far from complete. Unlike the other HTML5 options, Ruffle can actually be installed as a browser addon, with the caveat that a website's hosted copy will usually override the addon even if the site is running an older build.
[[wikipedia:NPAPI|NPAPI/PPAPI]] is an obsolete browser plugin system for a bunch of different in-browser software platforms that tried to co-exist in the earlier days of the Internet, before basically only being used for Flash Player once Flash became properly dominant. By the mid-2010s, the plugin system was increasingly being seen as an ancient relic that modern browsers would be better off without; and so, while Adobe was phasing out Flash Player in late 2020, NPAPI was gradually being dropped by all the major browser vendors. It hasn't entirely disappeared (some smaller browser devs still maintain NPAPI in their own forks of stuff like Firefox and Chromium), but it is ''mostly'' dead nowadays.
You may also notice that a lot of older Flash player projects specifically fizzled out around 2009-2010. That's in huge part because before then, many video hosting sites actually needed some type of SWF element to be able play videos in a browser, and the development of open-source alternatives was motivated by free software advocates people not wanting an increasingly large part of the Internet to hinge on a single proprietary software platform, along with Macromedia/Adobe not necessarily seeing Linux support as a top priority. It wasn't until the start of 2010 that YouTube in particular started pushing really hard for HTML5 media elements, which have since become a standard feature in modern browsers and single-handedly made Flash Player completely redundant for multimedia playback.
;Flash Player
;Lightspark
:A C++ player that's designed specifically to provide drop-in FLOSS replacements for both the desktop and NPAPI versions of Flash Player. It claims to have 83% of the overall SWF spec covered, as of August 2022, but development has been fairly slow since 2015 when it became a mostly one-person effort. Lightspark historically focused on more recent versions of the SWF spec that weren't supported by Gnash, hence why Lightspark could (and still can) use Gnash as an automatic fallback if both are installed simultaneously.
;GNU Gnash
:A proprietary software package designed to make the Harman version of Flash Player usable in modern browsers by running it inside CheerpX, a payware x86 emulator in WebAssembly. No-one on this wiki has had the chance to properly evaluate it, but we'd expect reference-level accuracy at the cost of woeful performance. That being said, CheerpX apparently has an alternate mode of operation that offloads most of the emulation and processing work to a server app, at which point the in-browser part is effectively just a streaming client.
;AwayFL<small> ([https://exponenta.games/games/AFL/ web demo])</small>
:Developed by the Away Foundation, this is arguably the most direct alternative to Ruffle, which it's roughly even with in terms of compatibility although there are still a bunch of SWFs that'll work fine in one but not the other.
;WAFlash<small> ([https://clubpenguinadvanced.github.io/waflash-demo/ web demo])</small>
:An inactive, closed-source C++-to-WebAssembly player that technically hasn't been made available to outside users, although there are a few sites where you can use it. It was considered the most accurate of the unofficial Flash players as of late 2021, although other still-active projects have caught up significantly.
;swf2js<small> (web demos: [https://swf2js.com/free/index.html free], [https://swf2js.com/prod/index.html production])</small>
:An open-core player that uses a dynamic recompiler. The source-available "Free" version supports limited features, such as AS1, AS2 and ZLIB compression, whereas the payware "Production" version is better suited to newer Flash files using such features as AS3 and LZMA compression. Built on more traditional JavaScript code, so it pretty much always performs worse than the WebAssembly-based options, sometimes noticeably so.
Anonymous user

Navigation menu