2012.09.10
Flash Media Server4.5 ⑦ ビデオチャットを作成する~その6~
「FlashMediaServer4.5(FMS)の環境を利用し、簡易ビデオチャットを作成する」の6回目です。
今回は、前回説明した「FMSから配信される動画を受信する」部分のスクリプトの説明を行います。
var r_ns:NetStream = new NetStream(nc);
NetStreamオブジェクトのインスタンス(ns)を生成します。
NetStreamオブジェクトはFlashPlayerとFMS間で単方向のストリーミング接続を開きます。
今回のインスタンスは受信用なのでFMS→FlashPlayer方向の接続です。
r_ns.addEventListener(NetStatusEvent.NET_STATUS, r_onNetStatus);
イベントリスナーを用意します。
ここでは、NetStreamオブジェクトである「r_ns」の
「netStatus」イベント(NetStatusEvent.NET_STATUS)を検知します。
イベントの発生をきっかけとして、第2引数で定義しているr_onNetStatus関数が実行されます。
function r_onNetStatus(re:NetStatusEvent):void{ trace(re.info.code); }
r_onNetStatus関数です。
NetStatusEventコードを表示します。
r_ns.play("nspublish");
第4回で作成した送信側のストリーム「nspublish」を受信します。
var rvid:Video = new Video(); rvid.x = 370; rvid.y = 0; rvid.width = 280; rvid.height = 210; rvid.smoothing = true;
受信したストリームを表示するためのビデオオブジェクトを作成します。
縦横位置、幅、高さを指定します。
smoothingプロパティはビデオを拡大 / 縮小する際にスムージング (補間) するかどうかを指定します。
rvid.attachNetStream(r_ns); addChild(rvid);
ビデオオブジェクトに受信ストリームを適用し、
ビデオオブジェクトを表示リストに登録します。
以上で受信画面が表示できます。
次回は、FMSサーバ側の処理について説明していきます。