Gnashに注力するFree Software Foundation
米コロラド州を拠点にコンサルタント活動を行うSavoye氏は、FSFの声がかかる以前から、Flashプレーヤの実装を丹念に調べていた。組み込み可能なプレーヤを手がける顧客の依頼を受けてのことだ。swfdecがActionScriptに対応しておらず、GPLFlashのコードが根本的に書き直されていることを知った彼は、Flashに対応していたゲーム開発用ライブラリgameswfに取り組むことを決めた。gameswfは、ActionScriptに対応し、Flash 7の仕様の大半を実装するなど機能も充実していた。
Electronic Frontier Foundationの創立者で、GNUへの貢献度も高いJohn Gilmore氏は、脚光を浴びた数々のGNUプロジェクトに数年間参加してきたSavoye氏の経歴を知って、gameswfのFlash仕様の実装をWebブラウザMozilla Firefoxのプラグインにできないかと持ちかけた。2005年春のことだ。
やがて、ハリケーン「カトリーナ」の直撃により、Savoye氏は数ヶ月間仕事を離れ、メキシコ湾岸地域の救済活動に加わる。仕事への復帰にあたってgameswfからブラウザプラグイン用のコードを抜き出すことを決意した彼は、12月には正式にGnashプロジェクトを始動させた。
Gnashは、FSFの最重要プロジェクトの1つとして位置づけられている。フリーBIOS、ATI製ビデオカードのドライバ、JavaコンパイラのGCJなど、名だたるプロジェクトと同じ扱いだ。FSFでは、こうした少数の最重要プロジェクトを「(フリーソフトにとっての)死活的ニーズ」と捉えている。代わりになるものが他にはないからだ。
Flashの仕様は「オープン」または「フリー」である、という記述をときどき見かける。Macromedia ― とその跡を受けたAdobe ― が、ソフトウェア開発キット(SDK)を無償で提供しているからであろう。しかし、これは間違いである。このSDKのライセンスでは、代替Flashプレーヤの開発が明示的に禁止されている。Adobeが認めているのは、サードパーティのソフトウェアによるFlash互換のコンテンツ作成だけである。したがって、あらゆるフリーFlashプレーヤは、SWFフォーマットをリバースエンジニアリングによって解読しなければならない。
ここ数ヶ月間、FSFはフリーのFlashプレーヤ開発を公然と推進している。反保守的なOSやアーキテクチャのプラグインとしての利用以外に、携帯型メディアプレーヤやセットトップボックスのような組み込み機器のFlash対応化の動きも活発になりつつある。FSFによるGnashの正式採用が決まれば、より多くのプログラマが集まって開発ペースが向上する、というのがSavoye氏のねらいだ。
現在、Gnashはスタンドアロンのアプリケーションとして動作し、Flash 7のほぼすべての機能が実装されている。プロジェクトでは、必要な残り作業を確認するためのテストケースが作成されている。このテストケースはFlashの他の実装にとっても貴重になるだろう、とSavoye氏は期待している。
このスタンドアロンのプレーヤをMozilla Firefoxのプラグインにするのは、もっと難しい、とSavoye氏は言う。確かに、ブラウザの「拡張機能」を手がける開発者には詳細情報が提供されている。しかし、Savoye氏によると「プラグイン」開発者向けのドキュメントはほとんど存在しないという。
現行のプラグインの開発版リリース(バージョン0.7)は、OpenGLのグラフィックを利用している。Savoye氏も認めているとおり、この解決策には問題が多い。ただし、あくまで一時的なものだ。彼がGnashメーリングリストに投稿した非公式なロードマップによると、当面の目標はこのプラグインを機能させることであり、バックエンドであるOpenGLの置き換えはその後に検討されることになっている。
興味のあるユーザは、今すぐCVSをチェックすることができる。あるいは次の開発版リリースを待つのもいいだろう。Savoye氏は、プロジェクトの支援に関心を持つすべての人に、Gnashメーリングリストへの参加、またはプレーヤの試用とバグ報告を呼びかけている。
原文