我的 Flash 网站需要一个接一个地播放 10 个视频,为了减少等待时间,我需要在播放视频 1 时预加载视频 2 和视频 3,依此类推...
我需要遵循这个结构,因为在视频 1 结束时,用户将有机会选择下一个(2 或 3)。
所有的代码都在我电影的第一帧,我仍然需要学习类、包等。
第一个视频通过我放置在舞台上的链接视频(myVideo)播放,代码如下:
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
ns.addEventListener(NetStatusEvent.NET_STATUS, statusHandler);
ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
ns.play("video1.f4v");
var myVideo:Video = new Video();
myVideo.attachNetStream(ns);
addChild(myVideo);
我需要了解在 nr 时预加载其他两个视频的最佳方法。1正在玩。
我是否应该再创建 2 个链接视频,将它们放在舞台外并在那里加载视频,以便在需要时立即可用?
非常感谢您的帮助!
--- 编辑:在我的帖子中添加了更多详细信息 ---
我正在做一些测试以了解此过程,我尝试了以下方法:
var ns2:NetStream = new NetStream(nc);
var ns3:NetStream = new NetStream(nc);
ns2.play("video/video2.f4v");
ns2.pause();
ns2.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
ns3.play("video/video3.f4v");
ns3.pause();
ns3.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
它可以工作,但是以这种方式加载 2 部电影会导致 100% 的 cpu 使用率和视频播放的帧速率不佳...也许我必须加载视频 2,检查加载是否完成,然后开始加载视频 3...这样做的正确方法?
再次感谢