Changes

Jump to navigation Jump to search

Flash

4,068 bytes added, 19:11, 23 September 2022
Comparisons
{{WIP}}
{{Infobox console
|title = Adobe Flash
! scope="col"|Platform(s)
! scope="col"|Latest version
! scope="col"|Accuracy
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
! 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>|-|Adobe 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]
|Reference ||{{✗}} ||{{~}} ||{{✓}}|-|[https://github.com/vidkidz/waflash WAFlash]|align<ref group=left|{{Icon|Web}}|[https://clubpenguinadvancedN>Adobe versions discontinued.githubHarman versions currently maintained for enterprise customers only.io/waflash-demo</ Web]|High ||{{✗}} ||{{✓}} ref> ||{{✓}}
|-
|[https://ruffle.rs/ Ruffle]
|align=left|{{Icon|Windows|Linux|macOS|Web}}|[https://githubruffle.com/ruffle-rs/ruffle/releases #downloads Nightly builds]|Mid ||{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://lightspark.github.io/ Lightspark]
|align=left|{{Icon|Windows|Linux|Web}}<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.56.1]|Mid ||{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://swf2jsgnu.comorg/ensoftware/ swf2jsgnash GNU Gnash]|align=left|{{Icon|WebWindows|Linux}}|[https://githubwww.gnu.comorg/software/swf2jsgnash/swf2js JavaScript file 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|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://leaningtech.com/cheerpx-for-flash/ CheerpX for Flash]Ruffle|alignrowspan=left|"7" {{Icon|Webna}}|[https://docs.leaningtechgithub.com/cheerpx-forruffle-flashrs/Changelog Version 31ruffle git]|? ||{{}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://awayfl.org/ AwayFL]
|align=left|{{Icon|Web}}
|[https://github.com/awayfl/awayfl-player git]
|{{?}} ||{{✓}} ||{{✓}} ||{{~}}<small> (WIP)</small>
|-
|[https://gnugithub.orgcom/softwarevidkidz/gnash GNU Gnashwaflash WAFlash]|align=left{{na}}|{{Icon✗}} |Windows|Linux{{✗}}||{{~}}|-|[https://wwwswf2js.gnu.orgcom/en/softwareswf2js]|[https:/gnash/downloadgithub.html com/swf2js/swf2js 0.7.8.10]|Low {{~}} ||{{✗}} ||{{~}} |-|[https://leaningtech.com/cheerpx-for-flash/ CheerpX for Flash]|[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]
|Low ||{{✓}} ||{{✗}} ||{{✗}}
|}
<references group=N />
===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. ====Desktop / NPAPI====[[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 ''Common aspectsmostly''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 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:The proprietary reference player, which Adobe stopped directly supporting at the end of 2020. The plugin version has been delisted from Adobe's website and also has a built-in kill-switch that was flipped in January 2021, so it's probably not much use even in browsers that still support NPAPI. However, 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]. ;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 desktop-only C++ player that went inactive in 2017, with the most recent stable release dating back to 2012. Probably not much reason to use it over newer versions of Lightspark, which seem to have mostly (if not entirely) superseded Gnash for compatibility. ;GameSWF:An ''extremely'' old C++ player, definitely one of the first serious efforts to reverse-engineer Flash Player into an open-source package. Inactive since 2009, though it did lay the foundations for Gnash. ;swfdec:Another very early effort to create an non-proprietary replacement for Flash Player. Actually pretty advanced for 2008-09, but it hasn't been active since. ====HTML5====Pretty much all of the HTML5 emulators players listed here are specifically designed to be used as [[wikipedia:Polyfill (programming)|polyfills]] by webmasters who want to keep their Flash-based sites going despite the forced obsolescence of Adobe's in-browser Flash plugin. Therefore most of these emulators They are really therefore largely not intended for personal use, however although it's usually not impossible and some of them (Ruffle, most notably) even have official demo pages that you can be installed as browser addons using the WebExtension systemuse to load whatever SWF file you want.''
;Adobe CheerpX for Flash Player:The official closed-source implementation by Adobe, who discontinued it in 2020. The web A proprietary software package designed to make the Harman version relies on [[wikipedia:NPAPI|NPAPI/PPAPI]], an obsolete browser plugin system that for many years only stuck around specifically because of this Flash plugin; when the plugin was officially dropped Player usable in modern browsers by Adobe, so too was the plugin system dropped by all the major browser vendors. The desktop player version is still available for download from the Adobe website's debug downloads sectionrunning it inside CheerpX, and Harman International is also maintaining an extended support version specifically for enterprise users.:;CheerpX for Flash::A a payware HTML5 emulation package which combines CheerpX, an x86 emulator in WebAssembly, with Harman International's extended support version of the official Flash player from Adobe. No-one on this wiki has formally evaluated had the chance to properly evaluate it (yet), but you shouldnwe't d expect amazing performance given reference-level accuracy at the added complexity cost of such woeful performance. That being said, CheerpX apparently has an approachalternate 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.
;Ruffle:A pure Rust implementation mainly targeting HTML5, but also available as a desktop player. The devs are planning to focus on ActionScript 1 and 2 support first, with AS3 support coming later. Development of Ruffle is sponsored by multiple veteran Flash game archives, most notably Newgrounds. It's progressed to the point where it can run many early Flash games, including the original Flash version of AwayFL<small> ([https://wwwexponenta.newgrounds.comgames/portalgames/viewAFL/59593web demo])</format/flash?emulate=flash Alien Hominid]small>:Developed by the Away Foundation, as well as playing this is arguably the vast majority most direct alternative to Ruffle, which it's roughly even with in terms of compatibility although there are still a bunch of [https://old.homestarrunner.com Homestar Runner] toonsSWFs that'll work fine in one but not the other.
;Lightspark & GnashWAFlash<small> ([https://clubpenguinadvanced.github.io/waflash-demo/ web demo])</small>:Two An inactive, closed-source C++ implementations -to-WebAssembly player that somewhat complement each othertechnically hasn't been made available to outside users, and although there are both designed specifically to provide a FLOSS alternative to Adobe's official playersfew sites where you can use it. Lightspark says it has 78% It was considered the most accurate of the APIs covered, while Gnash has focused on older versions of unofficial Flash that Lightspark is less likely to support properly, hence why Lightspark can use Gnash players as an automatic fallback if both are installed simultaneously. Lightspark's external dependencies would make it cumbersome to port it to HTML5of late 2021, so it's only available in browsers as an NPAPI/PPAPI plugin, similar to the official one from Adobealthough 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 HTML5 implementation player that uses a dynamic recompiler. The opensource-source available "Free Version" version supports limited features, such as AS1, AS2 and ZLIB compression, whereas the payware "Production Version" supports further version is better suited to newer Flash files using such features, such 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.
;Shumway
:A relatively very early HTML5 implementation. Developed player, developed rather actively for a few years, under Mozilla sponsorship, between 2012 and 2016 but ultimately abandoned in 2016 before it could reach a usable beta state.
==See also==
Anonymous user

Navigation menu