みんパイ
ming-0.3.0 + ming-py-0.3.0 + patch
「みんPy」 と云っても 某ベストセラー本 のことではありませんよ ;-p)
ming-py-0.3.0 に パッチ をあてました。 昨日の C++ コード を python で書き直したもの ↓ で試したところ、 SWF (FLASH) ファイル はできました。
# vim: set fileencoding=utf-8 enc=utf-8 : from ming import * movie = SWFMovie() movie.setDimension(640, 480) # 写真 photo = SWFBitmap('machi2006-02r.jpg') movie.add(photo) # タイトル font = SWFFont('Mincho.fdb') text = SWFText() text.setFont(font) text.setColor(0x00, 0x00, 0x00, 0xff) text.setHeight(30) text.addUTF8String("祭り唄") item = movie.add(text) item.moveTo(10, 30) # サウンド opt = SWF_SOUND_ADPCM_COMPRESSED | SWF_SOUND_16BITS sound = SWFSound('machi-05k.adpcm', opt) movie.startSound(sound); movie.save('sample.swf')
フォントファイルは ttf から fdb タイプに変換しました。 ttf→fft 変換は本家から ttf2fft を持って来て make したものを使います。 makefdb は ming に付属しています。
$ ttf2fft -e 0 -o Mincho.fft /usr/X11R6/lib/X11/fonts/TrueType/sazanami-mincho.ttf $ /usr/bin/makefdb Mincho.fft $ mv Sazanami\ Mincho.fdb Mincho.fdb
サウンドファイルは wav 形式でも構いませんが、 ADPCM 形式で圧縮すればかなり小さくなります。
$ /usr/bin/raw2adpcm sample.wav sample.adpcm 1 0
SWFSound に与えるフラグセットは試行錯誤が必要です。 確かな情報はソースコードを見るしかなさそうです。 諸々のファイルは ここ に置きました。
参考サイト