OpenLaszloはオープンソースのRIAで、LZXというXMLとJavaScriptを組み合わせて記述したものを、DHTMLやFLASHに変換する。
RIA関連は結構いろんなものが出てるし、FLASHだってFlex2 SDKはタダで手に入るけど、オープンソース大好き人間としてはOpenLaszloを選ばないわけには行きません。
とりあえずやりたかったのはYoutubeとかニコニコ動画のような動画ストリーミング。
実現するには、OpenLaszloだけじゃなく、RTMPの配信サーバーも必要だけど、これもオープンソースなRed5をいじってみたいところだ。
今回は、プログレッシブダウンロードだけ試してみた。
まずはmp3。
ちょー簡単なんですけど。
< view resource="http:xxxxxxx.mp3" id="player" />;
これをlzxファイルのどっかに埋め込んどくだけで、とりあえずmp3を聴ける。
mp3はlzxと同じ場所に置いてある。
あとはこのviewのメソッドを呼ぶだけ。
<button onclick="player.play()">Play</button>
<button onclick="player.stop()">Stop</button>
stopメソッドは普通のプレイヤーでいうストップではなく、ポーズになる。
ストップさせるには、stopメソッドとseekメソッド両方を呼び出せばいいのだろうか。
まだ未確認。
次はflv
<videoview url="video.flv" autoplay="true"/>
コンポーネントってすばらしい。
同じく、flvファイルはlzxと同じ場所。
まあ、簡単にできるって話は結構目にするので、簡単だろうとは思ってたが、まさかここまでとは。
(コネクションの確保とかくらいはすると思ってた。)
これを試すために、flvファイルの作成やらなんやらで、Macにエンコーディング環境をいちいち作る方が面倒だった。
iTunesやQuickTimeでやれば楽なんだろうけど、なんとなく意地でオープンソース(っぽいものを含む)で固めた。
- ffmpeg
- lame
- HandBrake
RTMPはRed5しか選択肢ないのかな。
Python製のRTMPサーバーがあって欲しいものだが、Twisted関連でやってるところがあるのかも。
|