Website | Demo | nächtliche Builds | Wiki
Ruffle ist ein Adobe Flash Player-Emulator, der in der Programmiersprache Rust geschrieben ist. Ruffle zielt mit WebAssembly sowohl auf den Desktop als auch auf das Web ab.
Ruffle unterstützt ActionScript 1, 2 und 3 ziemlich gut, ist aber noch lange nicht fertig. Bitte melden Sie alle Probleme im Issue Tracker.
Der einfachste Weg, Ruffle auszuprobieren, besteht darin, die Web-Demoseite zu besuchen und dann auf die Schaltfläche „Datei auswählen“ zu klicken, um eine SWF-Datei Ihrer Wahl zu laden.
Nightly-Builds von Ruffle sind für Desktop- und Webplattformen verfügbar.
Ausführlichere Anweisungen finden Sie auf unserer Wiki-Seite.
java
(erforderlich zum Erstellen der Bibliothek mit den integrierten Flash-Klassen für ActionScript 3)Typische Abhängigkeiten für Linux sind:
Verwenden Sie den folgenden Befehl, um die Desktop-App zu erstellen und auszuführen:
cargo run --release --package=ruffle_desktop
Um eine bestimmte SWF-Datei auszuführen, übergeben Sie den SWF-Pfad als Argument:
cargo run --release --package=ruffle_desktop -- test.swf
Um im Debug-Modus zu erstellen, lassen Sie einfach --release
im Befehl weg.
Der Rüschen-Desktop kann aus unserem Homebrew Tap erstellt werden:
brew install --HEAD ruffle-rs/ruffle/ruffle
Hinweis: Da es sich nur um HEAD handelt, müssen Sie brew upgrade --fetch-HEAD ruffle
jedes Mal ausführen, wenn Sie ein Update durchführen möchten.
Befolgen Sie die Anweisungen im Webverzeichnis, um entweder die Web- oder Browser-Erweiterungsversion von Ruffle zu erstellen.
Dieses Projekt wurde mit BrowserStack getestet.
Befolgen Sie die Anweisungen im Projekt ruffle-android
um die Android-Anwendung von Ruffle zu erstellen.
Wenn Sie eine Sammlung „realer“ SWFs zum Testen haben, kann der Scanner zum Benchmarken der Parsing-Fähigkeiten von Ruffle verwendet werden. Wenn es mit einem Ordner und einem Ausgabedateinamen ausgestattet ist, wird es versuchen, alle Flash-Dateien zu lesen und über den Erfolg einer solchen Aufgabe zu berichten.
cargo run --release --package=ruffle_scanner -- scan folder/with/swfs/ results.csv
Wenn Sie eine SWF-Datei haben und ein Bild davon aufnehmen möchten, können Sie das Exporter-Tool verwenden. Dies erfordert derzeit eine Hardwarebeschleunigung, kann aber kopflos (ohne Fenster) ausgeführt werden.
cargo run --release --package=exporter -- path/to/file.swf
cargo run --release --package=exporter -- path/to/file.swf path/to/screenshots --frames 5
core
– Kernemulator und gemeinsamer Codeswf
– SWF- und ActionScript-Parserdesktop
– Desktop-Client (verwendet wgpu-rs
)web
– Web-Client und Browser-Erweiterung (verwendet wasm-bindgen
)render
– verschiedene Rendering-Backends für Desktop und Webvideo
– Backends für die Videodekodierungflv
– Flash-Video-Decoderwstr
– eine Flash-kompatible Implementierung von Stringsscanner
– ein Dienstprogramm zum Massenparsen von SWF-Dateienexporter
– ein Dienstprogramm zum Generieren von PNG-Screenshots einer SWF-Datei Sie können die Entwicklung von Ruffle über GitHub-Sponsoren unterstützen. Durch Ihr Sponsoring tragen Sie dazu bei, die Zugänglichkeit von Flash-Inhalten auch in Zukunft sicherzustellen. Danke schön!
Herzlichen Dank an die Diamant-Sponsoren von Ruffle:
Ruffle ist unter einer der beiden Lizenzen lizenziert
nach Ihrer Wahl.
Ruffle ist auf Bibliotheken von Drittanbietern unter kompatiblen Lizenzen angewiesen. Vollständige Informationen finden Sie unter LICENSE.md.
Ruffle freut sich über jeden Beitrag. Hilfe für den Einstieg finden Sie unter CONTRIBUTING.md.
Sofern Sie nicht ausdrücklich etwas anderes angeben, unterliegt jeder Beitrag, der von Ihnen absichtlich zur Aufnahme in das Werk eingereicht wird, einer Doppellizenz wie oben, ohne zusätzliche Bedingungen oder Konditionen.
Von der gesamten Ruffle-Community, einschließlich des Chatrooms und des GitHub-Projekts, wird erwartet, dass sie sich an den Verhaltenskodex hält, dem das Rust-Projekt selbst folgt.