Changes

Jump to navigation Jump to search

Flash

1,831 bytes added, 19:11, 23 September 2022
Comparisons
! scope="col"|Active
! scope="col"|[[Recommended Emulators|Recommended]]
|-
! colspan="6"|Desktop / Plugin <ref group=N name=plugin>Plugin versions of these players require a browser that supports NPAPI/PPAPI.</ref>
|-
|Flash Player
|align=left|{{Icon|Windows|Linux|macOS|Web}}<ref group=N name=plugin />
|[https://www.adobe.com/support/flashplayer/debug_downloads.html 32.0.0.465]
|{{✗}} ||{{~}}<ref group=N>Adobe versions discontinued. Harman versions currently maintained for enterprise customers only.</ref> ||{{✓}}|-|[https://ruffle.rs/ Ruffle]|align=left|{{Icon|Windows|Linux|macOS}}|[https://ruffle.rs/#downloads Nightly builds]|{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://lightspark.github.io/ Lightspark]|align=left|{{Icon|Windows|Linux|Web}}|[https://github.com/vidkidzlightspark/waflash WAFlashlightspark/releases 0.8.6.1]|{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>|-|[https://gnu.org/software/gnash GNU Gnash]|align=left|{{Icon|WebWindows|Linux}}|[https://clubpenguinadvancedwww.gnu.org/software/gnash/download.html 0.8.10]|{{✓}} ||{{✗}} ||{{✗}}|-|[http://tulrich.com/textweb.pl?path=geekstuff/gameswf.githubtxt GameSWF]|align=left|{{Icon|Windows|macOS|Linux}}|[https://sourceforge.ionet/projects/tu-testbed/files/demos/waflashgameswf-2009-demo08-08/ Web2009-08-08]|{{✓}} ||{{✗}} ||{{✗}} |-|[https://web.archive.org/web/20090116113151/http://swfdec.freedesktop.org/wiki swfdec]|align=left|{{Icon|Linux|Web}}|[https://web.archive.org/web/20090116113151/http://swfdec.freedesktop.org/download/swfdec/0.8/swfdec-0.8.4.tar.gz 0.8.4]|{{✓}}||{{✗}} ||{{✗}}|-! colspan="6"|HTML5 / WebAssembly
|-
|[https://ruffle.rs/ Ruffle]|alignrowspan=left|"7" {{Icon|Windows|Linux|macOS|Webna}}|[https://rufflegithub.rs/#downloads Nightly builds]<br />[https:/com/ruffle.-rs/demo Web demoruffle git]
|{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://awayfl.org/ AwayFL]
|align=left|{{Icon|Web}}
|[https://github.com/awayfl/awayfl-player git]
|{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://lightspark.github.iocom/vidkidz/ Lightsparkwaflash WAFlash]|align=left|{{Icon|Windows|Linux|Webna}}<ref group=N name=plugin>Web version is only available as an NPAPI/PPAPI plugin, and is therefore not OS-agnostic.</ref>|[https://github.com/lightspark/lightspark/releases 0.8.6.1]|{{}} ||{{}} ||{{~}}<small> (WIP)</small>
|-
|[https://swf2js.com/en/ swf2js]
|align=left|{{Icon|Web}}|[https://github.com/swf2js/swf2js Download (Free Version only)]<br />Demo sites:<br />[https://swf2js.com/free/index.html Free Version]<br />[https://swf2js0.com/prod/index7.html Production Version8]
|{{~}} ||{{✗}} ||{{~}}
|-
|[https://leaningtech.com/cheerpx-for-flash/ CheerpX for Flash]
|align=left|{{Icon|Web}}
|[https://docs.leaningtech.com/cheerpx-for-flash/Changelog Version 34]
|{{✗}} ||{{✓}} ||{{✗}}
|-
|[https://open-flash.github.io/ Open Flash / Doμ Player]
|align=left|{{Icon|Web}}
|[https://github.com/open-flash/domu-player git]
|{{✓}} ||{{✗}} ||{{✗}}
|-
|Shumway
|align=left|{{Icon|Web}}
|[https://github.com/mozilla/shumway git]
|{{✓}} ||{{✗}} ||{{✗}}
|-
|[https://gnu.org/software/gnash GNU Gnash]
|align=left|{{Icon|Windows|Linux}}
|[https://www.gnu.org/software/gnash/download.html 0.8.10]
|{{✓}} ||{{✗}} ||{{✗}}
|-
|[http://tulrich.com/textweb.pl?path=geekstuff/gameswf.txt GameSWF]
|align=left|{{Icon|Windows|macOS|Linux}}
|[https://sourceforge.net/projects/tu-testbed/files/demos/gameswf-2009-08-08/ 2009-08-08]
|{{✓}} ||{{✗}} ||{{✗}}
|-
|[https://web.archive.org/web/20090116113151/http://swfdec.freedesktop.org/wiki swfdec]
|align=left|{{Icon|Linux}}
|[https://web.archive.org/web/20090116113151/http://swfdec.freedesktop.org/download/swfdec/0.8/swfdec-0.8.4.tar.gz 0.8.4]
|{{✓}} ||{{✗}} ||{{✗}}
|}
===Comparisons===
====Hybrid====;''Common aspects''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''Pretty much all 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 implementations listed here are specifically designed to options, Ruffle can actually be used 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. ====Desktop / NPAPI====[[wikipedia:Polyfill (programming)NPAPI|polyfillsNPAPI/PPAPI]] by webmasters who want is an obsolete browser plugin system for a bunch of different in-browser software platforms that tried to keep their co-exist in the earlier days of the Internet, before basically only being used for Flash Player once Flashbecame properly dominant. By the mid-based sites going despite 2010s, the forced obsolescence of plugin system was increasingly being seen as an ancient relic that modern browsers would be better off without; and so, while Adobe's was phasing out Flash Player in-late 2020, NPAPI was gradually being dropped by all the major browser Flash pluginvendors. They are therefore really not intended for personal useIt hasn't entirely disappeared (some smaller browser devs still maintain NPAPI in their own forks of stuff like Firefox and Chromium), although but itis ''mostly'' dead nowadays. You may also notice that a lot of older Flash player projects specifically fizzled out around 2009-2010. That's usually 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 people not wanting an increasingly large part of the Internet to hinge on a single proprietary software platform, along with Macromedia/Adobe not impossiblenecessarily 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
:The proprietary reference implementationplayer, which Adobe stopped directly supporting at the end of 2020. The web plugin version relies on [[wikipedia:NPAPI|NPAPI/PPAPI]], an obsolete browser plugin system has been delisted from Adobe's website and also has a built-in kill-switch that for many years only stuck around specifically because of Flash Player; as Adobe was phasing out the pluginflipped in January 2021, so too was it's probably not much use even in browsers that still support NPAPI. However, the plugin system gradually being dropped by all the major browser vendors. The discontinued desktop player version is still available for download from the debug downloads section of Adobe's website, and Harman International is also [https://airsdk.harman.com/flashplayer maintaining an extended support version specifically for enterprise users].:;CheerpX for Flash::A proprietary software package designed to make the Harman version of Flash Player usable in modern web 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.
;WAFlashLightspark:A closed-source C++-to-HTML5 implementation player that technically hasn't been made available s designed specifically to outside users, although there are a few sites where you can use itprovide drop-in FLOSS replacements for both the desktop and NPAPI versions of Flash Player. It seems claims to be have 83% of the most accurate 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 unofficial Flash playersSWF spec that weren't supported by Gnash, hence why Lightspark could (and still can) use Gnash as of December 2021an automatic fallback if both are installed simultaneously.
;RuffleGNU Gnash:A Rust implementation desktop-only C++ player that mainly targets HTML5went inactive in 2017, but is also available as a desktop playerwith the most recent stable release dating back to 2012. Notably used by a bunch Probably not much reason to use it over newer versions of veteran Flash content sites including [https://www.newgrounds.com Newgrounds]Lightspark, [https://homestarrunnerwhich seem to have mostly (if not entirely) superseded Gnash for compatibility.com Homestar Runner] and [https ;GameSWF://www.coolmathgames.com CoolMathGames], and also by the Internet ArchiveAn ''extremely's [https://archive.org/details/softwarelibrary_flash Flash library]. It's progressed to the point where it can run many early Flash gamesold C++ player, including definitely one of the original first serious efforts to reverse-engineer Flash version of [https://wwwPlayer into an open-source package.newgrounds.com/portal/view/59593/format/flash?emulate=flash Alien Hominid]. Unlike the other HTML5 optionsInactive since 2009, 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 though it did lay the site is running an older buildfoundations for Gnash.
;AwayFLswfdec:An HTML5 implementation developed by the Away FoundationAnother very early effort to create an non-proprietary replacement for Flash Player. Sometimes works better than RuffleActually pretty advanced for 2008-09, depending on the specific Flash file youbut it hasn're trying to runt been active since.
;Lightspark====HTML5====Pretty much all of the players listed here are specifically designed to be used as [[wikipedia:A C++ implementation that's designed specifically Polyfill (programming)|polyfills]] by webmasters who want to provide dropkeep their Flash-in FLOSS replacements for both based sites going despite the desktop and NPAPI versions forced obsolescence of Adobe's in-browser Flash Playerplugin. It claims to have 83% of the APIs coveredThey are therefore largely not intended for personal use, as although it's usually not impossible and some of August 2022them even have official demo pages that you can use to load whatever SWF file you want.
;swf2jsCheerpX for Flash:An open-core HTML5 implementation that uses A proprietary software package designed to make the Harman version of Flash Player usable in modern browsers by running it inside CheerpX, a dynamic recompilerpayware x86 emulator in WebAssembly. The sourceNo-available "Free" version supports limited featuresone on this wiki has had the chance to properly evaluate it, such as AS1but we'd expect reference-level accuracy at the cost of woeful performance. That being said, AS2 CheerpX apparently has an alternate mode of operation that offloads most of the emulation and ZLIB compression, whereas the payware "Production" version is better suited processing work to newer Flash files using such features as AS3 and LZMA compression. Built on more traditional JavaScript codea server app, so it pretty much always performs worse than at which point the WebAssemblyin-based options, sometimes noticeably sobrowser part is effectively just a streaming client.
;GNU GnashAwayFL<small> ([https://exponenta.games/games/AFL/ web demo])</small>:A desktop-only C++ implementation that went inactive in 2017Developed by the Away Foundation, with this is arguably the most recent stable release dating back direct alternative to 2012. It focuses on older versions Ruffle, which it's roughly even with in terms of Flash that Lightspark was historically less focused on supporting properly, hence why Lightspark could (and compatibility although there are still can) use Gnash as an automatic fallback if both are installed simultaneously. However, newer versions a bunch of Lightspark seem to have mostly (if not entirely) superseded Gnash and thereSWFs that's probably ll work fine in one but not much reason to use it at all anymorethe other.
;ShumwayWAFlash<small> ([https://clubpenguinadvanced.github.io/waflash-demo/ web demo])</small>:A relatively very early HTML5 implementationAn 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. Developed rather actively under Mozilla sponsorship between 2012 and 2016It was considered the most accurate of the unofficial Flash players as of late 2021, but ultimately abandoned before it could reach a usable beta statealthough other still-active projects have caught up significantly.
;GameSWFswf2js<small> (web demos: [https://swf2js.com/free/index.html free], [https://swf2js.com/prod/index.html production])</small>:An ''extremely'' old C++ implementationopen-core player that uses a dynamic recompiler. The source-available "Free" version supports limited features, definitely one of such as AS1, AS2 and ZLIB compression, whereas the first serious efforts payware "Production" version is better suited to reverse-engineer newer Flash Player into an open-source packagefiles using such features as AS3 and LZMA compression. Inactive since 2009Built on more traditional JavaScript code, though so it did lay pretty much always performs worse than the foundations for GnashWebAssembly-based options, sometimes noticeably so.
;swfdecShumway:Another very A relatively early effort to replicate Flash Player's NPAPI plugin in open-source. Actually pretty advanced for 2008-09HTML5 player, developed rather actively under Mozilla sponsorship between 2012 and 2016 but ultimately abandoned before it hasn't been active sincecould reach a usable beta state.
==See also==
Anonymous user

Navigation menu