Actionscript Flash NetStream.seek方法在本地测试中有效,但在服务器上无效
我有一个20分钟的FLV,它可以在服务器上正常播放。客户端希望在会话之间保留用户的位置,以便将time()保存到mySQL中,并作为FlashVar传递回,并(如果设置)反馈给seek()和文本字段进行测试。问题是seek()在本地运行良好,但在服务器上,无论seek()设置为什么,我总是会收到NetStream.seek.InvalidTime错误。文件是;这是一个非常简单的函数 //编辑刚使用向FLV添加的关键帧,但这并没有解决问题Actionscript Flash NetStream.seek方法在本地测试中有效,但在服务器上无效,actionscript,netstream,seek,Actionscript,Netstream,Seek,我有一个20分钟的FLV,它可以在服务器上正常播放。客户端希望在会话之间保留用户的位置,以便将time()保存到mySQL中,并作为FlashVar传递回,并(如果设置)反馈给seek()和文本字段进行测试。问题是seek()在本地运行良好,但在服务器上,无论seek()设置为什么,我总是会收到NetStream.seek.InvalidTime错误。文件是;这是一个非常简单的函数 //编辑刚使用向FLV添加的关键帧,但这并没有解决问题 src = "videos/LivingProof.flv
src = "videos/LivingProof.flv";
nc = new NetConnection();
nc.connect(null);
nets = new NetStream(nc);
mc_flv.attachVideo(nets);
//Attach your netstream audio to a movielcip:
snd.attachAudio(nets);
// create a sound object
my_snd = new Sound(snd);
// to adjust the volume
my_snd.setVolume(50);
nets.play(src);
if (starttime) {
var dest:Number = Math.floor(starttime);
nets.seek(dest);
this.test.text = 'target time = ' + dest;
}
nets.onStatus = function(infoObject:Object) {
if( infoObject.level == "status" && infoObject.code == "NetStream.Play.Stop" ) {
getURL("javascript:setTime('9999999999');", "_self");
nets.seek(0);
nets.pause();
mc_play.gotoAndStop(1);
trace('onStatus listener fired');
} else if (infoObject.code == "NetStream.Seek.InvalidTime") {
_root.test.text = "NetStream.Seek.InvalidTime";
nets.seek(infoObject.details);
}
_root.status.text = infoObject.code;
};
以前有人见过吗?尝试将if语句添加到您的
onStatus
处理程序中,以检查NetStream.Play。启动代码,并将seek逻辑移到以下位置:
src = "videos/LivingProof.flv";
nc = new NetConnection();
nc.connect(null);
nets = new NetStream(nc);
mc_flv.attachVideo(nets);
//Attach your netstream audio to a movielcip:
snd.attachAudio(nets);
// create a sound object
my_snd = new Sound(snd);
// to adjust the volume
my_snd.setVolume(50);
nets.play(src);
nets.onStatus = function(infoObject:Object) {
if( infoObject.level == "status" && infoObject.code == "NetStream.Play.Stop" ) {
getURL("javascript:setTime('9999999999');", "_self");
nets.seek(0);
nets.pause();
mc_play.gotoAndStop(1);
trace('onStatus listener fired');
} else if (infoObject.code == "NetStream.Play.Start) {
if (starttime) {
var dest:Number = Math.floor(starttime);
nets.seek(dest);
this.test.text = 'target time = ' + dest;
}
} else if (infoObject.code == "NetStream.Seek.InvalidTime") {
_root.test.text = "NetStream.Seek.InvalidTime";
nets.seek(infoObject.details);
}
_root.status.text = infoObject.code;
};