AS3版本FMS Streaming FLV播放方式

AS3版本的FMS Streaming FLV的方法與前一篇的Progressive的方法基本一致,我們只需要把前一篇中的代碼的某些部分做改動即可。注意看區別就在nc.connect的參數部分,下面是代碼:
package {
  import flash.display.Sprite;
  import flash.net.NetConnection;
  import flash.net.NetStream;
  import flash.media.Video;
  import flash.display.MovieClip;
  public class StreamingFlvplayer extends Sprite {
    public function StreamingFlvplayer() {
      //創建NetConnection對象,並在nc.connect參數部分傳遞rtmp路徑
      var myNc:NetConnection=new NetConnection();
      myNc.connect("rtmp://localhost/StreamingFlvplayer/_definst_");
      //使用onMetaData函數,Flash用來尋找這個方法
      var metaObject:Object=new Object();
      metaObject.onMetaData=onMetaData;
      //構造NetStream對象並且連接創建的myNc對象
      var myNs:NetStream=new NetStream(myNc);
      myNs.play("keiko.flv");
      //發送所有onMetaData調用到NetStream上
      myNs.client=metaObject;
      //創建video尺寸
      var video:Video=new Video(160,120);
      //加載Video到NetStream上去,添加到display列表
      video.attachNetStream(myNs);
      addChild(video);
    }
    private function onMetaData(data:Object):void {
      //發送Flash需要的Metadata數據
    }
  }
}
雖然代碼只有一處變動,但是flv文件的放置則有了變化,FMS安裝完後,flv文件放在FMS安裝的Applications文件夾下的_definst_/streams目錄下,這個目錄的文件是通過http不可以訪問下載的。受保護的flv切忌不要放在web server的文件夾下。
這兩篇文件主要簡單介紹如何用AS3方式構造Flv播放,很多開發者習慣AS2(我3年前習慣的方式),而AS3還不太熟悉,就算是一點小幫助吧。
最後用一張表總結一下Embed video in SWF,Progressive和Streaming的比較:
[img]/Files/BeyondPic/2007-10/7/delivery_method.png[/img]
本文轉自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/1974.html
發佈了14 篇原創文章 · 獲贊 1 · 訪問量 1923
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章