Flash 闪存视频播放器内存问题
我制作了一个带有播放列表的视频播放器。大约45分钟后,声音停止!视频继续播放。我播放短片(每个大约3到4分钟) 播放器基于两帧: 第1帧使用文件名定义变量VidReference:Flash 闪存视频播放器内存问题,flash,actionscript-3,memory,video,audio,Flash,Actionscript 3,Memory,Video,Audio,我制作了一个带有播放列表的视频播放器。大约45分钟后,声音停止!视频继续播放。我播放短片(每个大约3到4分钟) 播放器基于两帧: 第1帧使用文件名定义变量VidReference: VidReference = trackToPlay; 第2帧播放视频: var nc:NetConnection = new NetConnection(); nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); nc.connect(
VidReference = trackToPlay;
第2帧播放视频:
var nc:NetConnection = new NetConnection();
nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
nc.connect(null);
var ns:NetStream = new NetStream(nc);
ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
const buffer_time:Number = 2;
ns.bufferTime = buffer_time;
ns.client = this;
ns.play(VidReference);
var vid:Video = new Video();
vid.attachNetStream(ns);
addChild(vid);
vid_frame.addChild(vid);
视频播放完成后,将转到第1帧(将新值放入VidReference变量),然后返回第2帧播放新视频。
我是否应该在每次加载新视频时删除视频对象?我是否每次循环(第1帧>第2帧)并将每个视频添加到RAM时都会声明一个新的视频对象,并最终使flash播放器崩溃
我听说过垃圾收集,但我不知道如何删除视频对象,以便从内存中清除它(以及视频本身)
当我检查System.totalMemory时,每次加载新视频时,它都在累积,我不知道如何从内存中删除旧视频。请不要重新发布问题
if(!vid){
var nc:NetConnection = new NetConnection();
nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
nc.connect(null);
var ns:NetStream = new NetStream(nc);
ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
const buffer_time:Number = 2;
ns.bufferTime = buffer_time;
ns.client = this;
ns.play(VidReference);
var vid:Video = new Video();
vid.attachNetStream(ns);
//addChild(vid); // you shouldnt add the video to2 display objects
vid_frame.addChild(vid);
}else{
ns.play(VidReference);
}