swfmillで携帯Flashを動的に生成
linux, サーバー関連 2011年2月20日,
たまにはソーシャルアプリネタ。
携帯で使われるFlash Liteはいろいろ制限があって外部ファイルを使って動的にFlashを作る事が出来ない。
そこでアクセスの度にサーバー内部でFlashを動的に毎回作成するといった事で対処させる必要がある。
このswfmillはswf⇔xmlの相互変換が出来る。
swfからxmlに変換してxmlをphpなどで書き換えてまたswfに戻すといった手順。
(ただこの変換も文字コードの問題でいろいろとややこしい事になります・・・)
K-LABさんが公開している
「swfmillでFlash Lite 1のswfを扱えるようにしてみた」
http://dsas.blog.klab.org/archives/51174693.html
のパッチをあてるとFlash lite 1.xでもswfmillにて使用が可能なのでこのパッチも当てます。
2011/02/20現在swfmillは最新で0.3.1ですがこのパッチがswfmill-0.2.12を元に作られているので
swfmill-0.2.12を使います。
ちなみに今回使用したOSはCentOSです。
swfmill-0.2.12のインストール+swfmillのswf内テキストエンコーディング指定オプション追加パッチ
1 2 3 4 5 6 7 8 9 | wget http://swfmill.org/pre/swfmill-0.2.12.2.tar.gz tar xzf swfmill-0.2.12.2.tar.gz mv swfmill-0.2.12.2 swfmill-0.2.12 cd swfmill-0.2.12 wget http://lab.klab.org/files/flash/encoding.patch patch -p1 < encoding.patch ./configure make make instal |
make途中でこんなエラーが出ました
1 2 3 4 5 6 7 8 9 10 | swft_css.cpp -fPIC -DPIC -o .libs/libswft_la-swft_css.o swft_css.cpp: In function 'void swft_unit(xmlXPathParserContext*, int)': swft_css.cpp:197: error: 'strcmp' was not declared in this scope make[3]: *** [libswft_la-swft_css.lo] エラー 1 make[3]: ディレクトリ `/usr/local/src/swfmill-0.2.12/src/swft' から出ます make[2]: *** [all-recursive] エラー 1 make[2]: ディレクトリ `/usr/local/src/swfmill-0.2.12/src' から出ます make[1]: *** [all] エラー 2 make[1]: ディレクトリ `/usr/local/src/swfmill-0.2.12/src' から出ます make: *** [all-recursive] エラー 1 |
gccのバージョンによるエラーだそうなので
1 2 | src/swft/swft_css.cpp src/swft/swft_import_mp3.cpp |
に#include
実行
1 | swfmill |
実行したら以下のエラーが出たので
1 2 | swfmill: error while loading shared libraries: libswft.so.0: cannot open shared object file: No such file or directory |
/etc/ld.so.confに/usr/local/libがある事を確認して共有ライブラリの再作成
を行うとうまくいきました。
1 | /sbin/ldconfig |
結果
1 2 3 | swfmill swfmill 0.2.12.2 XML-based SWF (Shockwave Flash) processing tool |
おk
7月 21st, 2013 at 12:41 PM
そなーブログ » Blog Archive » swfmillで携帯Flashを動的に生成
9月 13th, 2013 at 10:32 AM
[ウェットスーツ] ポロシャツ 通販 http://www.taobao8813.com/