みんパイ
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 に与えるフラグセットは試行錯誤が必要です。 確かな情報はソースコードを見るしかなさそうです。 諸々のファイルは ここ に置きました。
参考サイト