2008年03月03日

SWFファイルフォーマットとライセンス(その2)

はてなブックマークに登録

少し前の話になりますが、とうとうFlex 3 SDKとAIR SDKが公開されました。既にお使いの方も多いかと思います。 さて、以前「SWFファイルフォーマットとライセンス」という記事を書いたのですが、Flex 3 SDKが公開されてどうなったかの続報をお伝えします。

まず、大きな変更として、オープンソースな部分が増えました。Flex 2 SDKのときはFlex FrameworkのみがMPL(Mozilla Public License)だったのですが、Flex 3 SDKになって、コンパイラ、デバッガ、SWFライブラリ等もMPLになりました。Adobe Open SourceFlex SDK プロジェクト があるので、詳しくはそちらをご覧下さい。「プロジェクトページなんてどうでも良い、早くソースを見せろ」という方は、Flex SDK のsvnリポジトリが <http://opensource.adobe.com/svn/opensource/flex/sdk/> にあるので、svn coして下さい。

で、このリポジトリを探してみたのですが、残念ながらSWF Fileformat Specificationは含まれていませんでした。その代わりswfutils.jarが想像以上にすごい事が判りました。勝手にswfを生成するためのライブラリだと思っていたのですが、swfを読み込むこともできるのです。

flexsdkのbin/ディレクトリの中には、swfdumpという、swfファイルをswfxというXMLフォーマットでダンプするツールが含まれています。この実体は flash.swf.tools.SwfPrinter#main()になります。なんか、swfのリバースエンジニアリング大歓迎っていう感じのツールですね(笑)

flexsdkのbin/ディレクトリに含まれてはいないのですが、swfxからswfへの変換もswfutils.jarに含まれています。flash.swf.tools.SwfParser#main()が実体なので、

$ java -cp $FLEX_HOME/lib/swfutils.jar flash.swf.tools.SwfxParser test.swfx
とすると実行することができます。が、実行してみようとしてみたところ、swfx.xsdというリソースの取得に失敗して止まってしまいます。swfx.xsd自体はflexsdk/modules/swfutils/src/java/flash/swf/tools/swfx.xsd にあるので、これからJavaとJarとAntを勉強してSwfxParserを使えるjarの作成に挑戦してみます。

Flex SDKの中には、コンパイラやディスアセンブラ等色々含まれていますので、swf関係者(?)な方はぜひ覗いて見てください


@methane
klab_gijutsu2 at 19:44│Comments(0)TrackBack(0)flash 

トラックバックURL

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔   
 
 
 
Blog内検索
Archives
このブログについて
DSASとは、KLab が構築し運用しているコンテンツサービス用のLinuxベースのインフラです。現在5ヶ所のデータセンタにて構築し、運用していますが、我々はDSASをより使いやすく、より安全に、そしてより省力で運用できることを目指して、日々改良に勤しんでいます。
このブログでは、そんな DSAS で使っている技術の紹介や、実験してみた結果の報告、トラブルに巻き込まれた時の経験談など、広く深く、色々な話題を織りまぜて紹介していきたいと思います。
最新コメント