2015-09-22 50 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