FLEXの学習:TV画像のブラウザ上への出力
November 8, 2009 – 6:23 pm前回の「MXコントロールVideoDisplayを使ったflvの再生」に引き続きFLEXの学習。今回は、TVの映像をPCのブラウザ上に出力してみた。一連の手続きを簡単にメモしておいた。
TV映像のPCへの取り込み: BS Digital用のチューナー(DST-BS500)が倉庫に放り投げてあるのを思い出し、これから出力されるTV映像を、Flashを使って、ブラウザに出力してみることにした。
チューナーから出力される映像をPCに取り込む仕組みが必要ということで、近所のPC-DEPOにてVideo-Captureを購入。
購入した製品はBuffalo社製の「USB接続MPEGキャプチャー」(PC-SDV/U2)。価格は、ほぼ5000円と、私にしては高額だったが、ともかくなんらかのかたちでTV映像の取り込みをしなければならないということで・・・。余り考えないで買い物をするとムダ使いになってしまう典型かもしれない。
TV映像出力用のmxmlを書いてみた。コードは、以下;
<?xml version="1.0"?> <!-- controls\videodisplay\VideoDisplayCamera.mxml --> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="initCamera()" width="640" height="360" layout="absolute"> <mx:Script> <![CDATA[ // Define a variable of type Camera. import flash.media.Camera; public var cam:Camera; public function initCamera():void { cam = Camera.getCamera(); // Initialize the variable. cam.setMode( 640, 360, 30, false ); myVid.attachCamera(cam); } ]]> </mx:Script> <mx:VideoDisplay id="myVid" x="0" y="0" width="640" height="360" /> </mx:Application>
これをコンパイルしてFlashファイル(VideoDisplayCamera.swf)を作成し、前回と同様にswfobject.jsを用いhtmlページ上に貼り付けた。
htmlページがロードされると、右図のように、映像の取り込み許可を求められるので、「許可」ボタンを押すと、TV映像が出力される。
課題: 以上、ほとんど問題なくTV映像をブラウザ上に出力することができた。手続き自体は簡単ではあるが、cam.setMode()で行う設定方法について検討することが必要と思う。さらに、映像の出力にあたって、その開始時に動作が不安定になることが見られ、検討を要する(原因は不明)。
次回は、いよいよ、RED5を使って、TV映像のブロードキャスト、さらにはそのサブスクライブ(受信)に挑戦しよう。
参考: VideoDisplayコントロール(Adobe Flex3 ヘルプ)
1 Trackback(s)