2014-09-22 56 views
0

我想知道在设置播放视频的数组的可能性时,它们之间绝对没有停顿吗?无论如何设置它,连续播放之间没有任何缓冲或暂停的方法吗?例如:Actionscript 3以无间断的顺序连续播放视频

import flash.events.NetStatusEvent; 

var videos:Array = new Array("Ad01.flv", "Ad02.flv", "Ad03.flv"); 
var currentVideo:uint = 0; 
var duration:uint = 0; 
var ready:Boolean = true; 

var nc:NetConnection = new NetConnection(); 
nc.connect(null); 
var ns:NetStream = new NetStream(nc); 
myVideo.attachNetStream(ns); 
ns.play(videos[currentVideo]); 

var listener:Object = new Object(); 
listener.onMetaData = function(evt:Object):void { 
duration = evt.duration; 
ready = true; 
}; 

ns.client = listener; 

ns.addEventListener(NetStatusEvent.NET_STATUS,nsHandler); 

function nsHandler(evt:NetStatusEvent):void { 
if (ready && ns.time > 0 && ns.time >= (duration - 0.5)) { 
ready = false; 
currentVideo++; 
if (currentVideo < videos.length) { 
ns.play(videos[currentVideo]); 
} else { 
ns.removeEventListener(NetStatusEvent.NET_STATUS, nsHandler 
); 
} 
} 
}; 

我想打破一个视频成多个部分,并把它无缝地再现。我已经测试了以上,但我需要明确地知道。

+0

视频本地吗?您可能需要在当前结尾之前预先加载队列中的下一个视频,以确保无缝连接 – BadFeelingAboutThis 2014-09-22 18:29:30

+0

不可以。您只能靠近完成大量工作。您可以使用两个视频播放器并来回切换。最好的解决方案是在影片中不会受到坏影响的影片中的断点 - 如果影片跳过前面或后面半秒钟。最好的方法是淡入黑场景转换,改变视频,当它是黑色的,没有声音。 – moot 2014-09-22 20:12:27

回答

1

你可以做到这一点的一种方法是将视频嵌入到单独的swfs的时间线中,然后下载swfs,并在所有加载完成后在需要时播放每个时间轴。

+0

如果你绝对不想暂停/休息,这通常是最好的方式。 – Scott 2014-09-23 01:52:36