Actionscript - 视频播放器帮助! - 闪存

问题描述:

我一直在想几天来弄清楚如何让视频在闪存中播放,我几乎没有任何地方。我有下面的代码,但不知道还有什么可以尝试使它工作。任何人都可以帮忙吗?Actionscript - 视频播放器帮助! - 闪存

var conn:NetConnection = new NetConnection(); 
conn.connect(null); 

var nstream:NetStream = new NetStream(conn); 
nstream.setBufferTime(10); 

trailer.attach(nstream); 
nstream.play("arthur.flv"); 
+0

已经设法让它工作。我不知道我做了什么,但它的工作,所以我很高兴:) – 6TTW014 2011-05-02 23:24:52

看来您忘了一个crutial一部分,你需要给NetStream添加到视频对象的NetConnection已成功连接后。


var connection = new NetConnection(); 
connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); 

function netStatusHandler(event:NetStatusEvent):void { 
     switch (event.info.code) { 
      case "NetConnection.Connect.Success": 
       connectStream(); 
       break; 
      case "NetStream.Play.StreamNotFound": 
       trace("Stream not found: " + videoURL); 
       break; 
      } 
} 

function connectStream():void { 
    stream = new NetStream(connection); 
    stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); 
    stream.client = new CustomClient(); 
    var video:Video = new Video(); 
    video.attachNetStream(stream); 
    stream.play(videoURL); 
    addChild(video); 
} 

查看AS3 NetStream文档here。这里有许多信息和例子可以帮助你顺利完成任务。

拖车是否加入舞台?像这样:

var trailer = new Video(); 
trailer.attachNetStream(nstream); 
addChild(trailer); 

你是否还检查过NetStream不会产生错误?像这样:

nstream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler); 
nstream.play("video.flv"); 
function asyncErrorHandler(event:AsyncErrorEvent):void{ 
    trace(event); 
} 

编辑:还有你检查净状态和安全错误吗?就像这样:

nstream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); 
conn.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); 
conn.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); 

function netStatusHandler(event:NetStatusEvent):void { 
    switch (event.info.code) { 
     case "NetConnection.Connect.Success": 
      connectStream(); 
      break; 
     case "NetStream.Play.StreamNotFound": 
      trace("Unable to locate video: " + videoURL); 
      break; 
    } 
} 

function securityErrorHandler(event:SecurityErrorEvent):void { 
    trace("securityErrorHandler: " + event); 
} 
+0

是的,我已经尝试过所有这些,但仍然没有。 – 6TTW014 2011-05-02 23:01:33

+0

究竟是什么问题?您的视频对象是否可见但只是黑色而什么都没有发生? – rzetterberg 2011-05-02 23:02:16

+0

根本没有任何反应。 – 6TTW014 2011-05-02 23:09:13