動的にswfファイルを出力したFlashLiteによる携帯サイト作成 by swfmill(インストール編)

はてなブックマーク - 動的にswfファイルを出力したFlashLiteによる携帯サイト作成 by swfmill(インストール編)
このエントリーをはてなブックマークに追加
Share on Facebook

php & mingのインストール編はこちら

昨日phpとmingを使って動的にFlashを生成しようとインストールしていじってみたのだけれど、swfファイルをphpに変換するswftophpがどうもうまく動かない。

なのでming&phpという選択肢は保留にして、swfmillを使って動的swfファイル生成にチャレンジ。

swfmillはswfファイルとxmlファイルの相互変換ソフト。
swf⇒xml
xml⇒swf
の両方ができる。
なので、やりたいこととしては、

  1. 普通にFlashを作る
  2. swfmillでswfファイルをxmlに変換。
  3. 出力されたxmlを書き換え(多分phpで)
  4. 書き換えたxmlをswfに変換

これで動的にswfが生成できるぽい

まずは、インストールから(公式サイト

wget http://swfmill.org/releases/swfmill-0.2.12.tar.gz
tar zxvf swfmill-0.2.12.tar.gz
cd swfmill-0.2.12

ここでFlashLite1用のエンコーディングパッチを入れる(klabの人が作ってくれてました

wget http://lab.klab.org/files/flash/encoding.patch
patch -p1 < encoding.patch
./configure

失敗したら怒られたものをインストール

yum install -y libxslt-devel
make
make install

できたー。

試しに使ってみる。
FlashLite1.1で書き出したhello.swfをhello.xmlに変換

swfmill swf2xml hello.swf hello.xml

できた。
次は逆変換

swfmill xml2swf hello.xml hello.swf

できない。
どうも文字コードが問題らしい。xmlの文字コードをutf-8にしてhello2.xmlを出力

nkf -w hello.xml > hello2.xml

でもってhello2.swfを生成する

swfmill xml2swf hello2.xml hello2.swf

できた!!
だけど、日本語が文字化け。
ここで、"-e cp932"を付けて変換すればいいらしい。

swfmill -e cp932 xml2swf hello2.xml hello2.swf

でけた!
動的にするには、xmlを書き換えてから変換すればおっけー!

・画像の差し替えについて

生成したxmlで画像データはこんな感じで格納されている。

<DefineBitsJPEG2 objectID="12">
<data>
<data>[base64エンコードされた画像データ]</data>
</data>
</DefineBitsJPEG2>

これを書きかえればいいみたい。
phpでささっと書こうかな。

追記:
そしてこれを作ってみました↓
FlashLiteを使った「画像検索 for mobile」をリリースしてみた

動的にswfファイルを出力したFlashLiteによる携帯サイト作成 by swfmill(インストール編)” への3件のコメント

  1. ピンバック: swfmillでケータイFlashを動的生成してみよう(インストール編) | 携帯サイトをつくろう。

  2. ピンバック: centOS5でswfmill « sk4

  3. ピンバック: 牢獄に暮らす奴隷

コメントをどうぞ

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt="">