Ruffle

Ruffle（ラッフル）は、オープンソースのAdobe Flashエミュレーター。2020年でサポート終了したAdobe Flash Playerの代替として使用でき、デスクトップ及びブラウザ上で動作する。プログラミング言語にはRustを採用している。

 歴史 
2000年代を通して、Adobe Flashは動画やゲームといった様々なコンテンツの作成に最も広く使用されるマルチメディア作成プラットフォームだった。 Flashを使用して作成されたコンテンツはSWFファイルとしてエクスポートされた後、無料のAdobe Flash Playerプラグインを備えたブラウザで実行できた。

しかし、より柔軟なマルチメディア管理を可能とするHTMLバージョンであるHTML5の出現により、Flashは徐々に衰退し始めた。 2015年、アドビはHTML5が成熟したオープンスタンダードであると述べ、HTML5を公式に提唱するようになった。その後、Flashの人気は低下し続け、2017年、アドビは2020年までにFlashを廃止する計画を発表した。

新しいFlashコンテンツの作成を除き、古いSWFファイルを実行可能な状態で保存することはデジタルアーカイブ上の大きな懸念事項となり、2016年、マイク・ウェールズはFlusterの名でプロジェクトを開始した。後にRuffleと改名されたこのプロジェクトは、デスクトップとブラウザ上で実行可能な、Rustで記述されたFlash Playerエミュレーターを開発した。アドビによるFlash廃止の発表と多くのブラウザ開発元によるサポート終了の発表を受け、RuffleはFlash Playerの現実的な代替手段としてより注目を集めるようになった 。

Ruffleは現在GitHubでオープンソースソフトウェアとして開発中。当プロジェクトにはNewgroundsやCoolmathGamesといったFlash コンテンツに支えられたウェブサイトがスポンサーとなっている。

2020年11月、Internet ArchiveはAdobe Flash コンテンツのアーカイブにRuffleを採用した。これによりAdobe Flash Playerプラグインなしでもインターネットアーカイブ上の一部Flash コンテンツが実行可能となった。また、インターネットアーカイブへのSWFファイルのアップロードが呼びかけられている。

 特徴 
RuffleはRustプログラミング言語で書かれており、WebAssemblyを使用して動作する。外部プロセスに頼らず、ブラウザによって提供される実行環境内でのみプログラムを実行することにより、オリジナルのFlash Playerに存在していた脆弱性の問題を解決している。またWebの標準技術のみを使用して実装されているため、動作環境に依存しない仕組みを実現している。

2024年12月現在、ブラウザ拡張機能(Chrome/Firefox/Edge/macOS版Safari)、ホスティング用スクリプト、デスクトップアプリケーションの3つの使用方法がある。拡張機能およびアプリはユーザーサイドでの対応、スクリプトはサイト運営者側での対応となり、どちらかがRuffleを導入してさえいればFlashコンテンツを再生できるようになる。

Ruffleは過去にはActionScript 1/2.0のみをサポートし、3.0は開発段階としていた。2024年12月現在ではどちらも開発が進んでおり、両者ともにサポートされている。どちらも動作する言語機能は9割以上、APIは7割以上と、非常に高い互換性を実現している。

 脚注 

 関連項目 
 Haxe

 Lightspark

 外部リンク 






Category:Adobe Flash
Category:メディアプレーヤーソフト
Category:オープンソースソフトウェア
Category:クロスプラットフォームのソフトウェア
Category:エミュレーションソフトウェア
Category:MITライセンスを利用するソフトウェア
Category:Apache Licenseのソフトウェア
Category:Rustでプログラムされた自由ソフトウェア