31,32日目:QVGAのMP4を FLASHでVGAに拡大表示させる
PodTVの場合、今まで作成&提供していただいた動画はすべて H264エンコードの QVGA(320x240)のサイズになっています。これは 5G iPodが表示できるのがそのサイズだったからです。
その後、時が流れるにつれこのサイズの動画を表示できる端末が増えていきました。例えば、PSPとか FOMAの N904iとかです。
しかし昨今の状況では、QVGAサイズだと画質・迫力的に物足りなく思うようになってきました。また、5G iPodもバージョンアップして、VGAサイズの動画を表示できるようになりました。そこで、ここらで PodTVも VGA化をしたいと思います。
前回 QuickTimeで拡大表示してくれないかと思ったらダメだったので、今回は Flashを使います。
といっても自分の Flashの知識は Ver3で止まっていて、Flashのアプリを書けないのでいろいろ探した結果、FLAVERというソフトがフリーで商用利用可能でした。
FLVアルバム FLAVER 2.0
http://rexef.com/webtool/flaver2.html
いろいろ設置方法がある中で、まずはシンプルモードというのを試してみました。これだと htmlに直接オプションを書いていけば良いので、非常に楽チンです。
<html> <body> <!-- <object> タグによる設定XML無しのソース --> <h2>旧コンテンツ(320x240)を 640x480で表示</h2> <object data="flaver.swf?video=http://mediaengine.jp/pjpodtv/200805/pjpodtv_0389_watanabe.mp4&time=59:59" type="application/x-shockwave-flash" width="660" height="560"> <param name="movie" value="flaver.swf?video=http://mediaengine.jp/pjpodtv/200805/pjpodtv_0389_watanabe.mp4&time=59:59" /> <param name="wmode" value="transparent" /> </object> <br /> <h2>新コンテンツ(640x480)を 640x480で表示</h2> <object data="flaver.swf?video=/countdown.mp4&time=59:59" type="application/x-shockwave-flash" width="660" height="560"> <param name="movie" value="flaver.swf?video=/countdown.mp4&time=59:59" /> <param name="wmode" value="transparent" /> </object> </body> </html>
ちなみに、違うドメインにあるサーバにデータファイルを置くときは、crossdomain.xmlというファイルをそのサーバのルートに置く必要があるようです。この辺が参考になりました。
カスタムポリシーファイル crossdomain.xml について
http://yoshiweb.net/blog/?itemid=162
Flash,JSONでのクロスドメインアクセス
http://gihyo.jp/dev/serial/01/web20sec/0004
自分はこんな風に設定しました。
<?xml version="1.0" ?> <!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"> <cross-domain-policy> <site-control permitted-cross-domain-policies="all"/> <allow-access-from domain="podtv.jp" /> <allow-access-from domain="podtvlabo.com" /> </cross-domain-policy>
で、やってみるとあっさり動いてくれました。
http://podtvlabo.com/flaver2.html
強いて言えば、シンプルモードだと、Flashプラグインの最初の画面でサムネイルを表示できないのですが、それは次回のちゃんとした設置法を試してみます。あと、動画ファイルの再生時間をパラメーターとして渡さないといけないのですが、これはどうやって事前に確認すればよいのか分からないので、とりあえず 59分59秒の長さがあるよーという事にしておきます。