2015-09-22 184 views
1

您好,請有人可以幫助我這個...播放外部FLV視頻

我想打一個外部FLV視頻("../sync/video/video.flv"),但如果視頻丟失或當有(StreamNotFound)錯誤 我想自動播放另一個flv視頻。

case "NetStream.Play.StreamNotFound": 
    ns.play("../sync/filler/video2.flv"); 

,但它不工作....

這裏是全碼:

var vid:Video; 
var nc:NetConnection = new NetConnection(); 
    nc.connect(null); 
var ns:NetStream = new NetStream(nc); 

var customClient:Object = new Object(); 
    customClient.onMetaData = metaDataHandler; 
ns.client = customClient; 
ns.play("../sync/video/video.flv"); 

vid = new Video(); 
vid.attachNetStream(ns); 
addChild(vid); 

function netStatusF(e:NetStatusEvent):void 
{ 
    switch (e.info.code) 
    { 
     case "NetStream.Play.StreamNotFound" : 
      ns.play("../sync/filler/video2.flv"); 
      break; 
    } 
} 

function metaDataHandler(infoObject:Object):void 
{ 
    vid.width = infoObject.width; 
    vid.height = infoObject.height; 
} 

回答

0

你剛纔的NetStatusEvent.NET_STATUS事件偵聽器添加到您的NetStream對象:

ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusF); 

然後您必須確保您的第二個視頻文件存在,否則您將擁有一個循環問題。

希望能有所幫助。

+0

非常感謝!完美地工作 – carlc1