我有一个 Flash CS6 FLA,其中包含 FLVPlayback 组件 (2.5.0.26) 的实例和舞台上的进度条组件的实例,用于加载外部 FLV。
我正在尝试在播放之前预加载特定百分比的视频。
当托管在服务器上时,视频在 80% 的时间内按预期启动和播放,但有 20% 的时间视频在启动时卡在缓冲状态(视频应该在的空白区域),我无法获得它可以通过 AS3 播放或单击皮肤控件上的播放按钮。奇怪的是,如果我在浏览器卡住时刷新浏览器,我会在页面重新加载之前看到视频的一瞥,然后按预期播放视频。
我在 Mac (Lion) 上的 Chrome、Firefox 和 Safari 上进行了测试,得到了相同的结果。如果我使用 SpeedLimit 限制我的带宽,视频问题会变得更糟。
任何建议将不胜感激。
代码:
public class SimpleVideoLoad extends MovieClip {
var isLoaded:Boolean = false;
public function SimpleVideoLoad() {
// constructor code
loadVideo();
}
function loadVideo():void
{
my_FLVPlybk.x = 0;
my_FLVPlybk.y = 0;
my_FLVPlybk.width = 743;
my_FLVPlybk.height = 300;
my_FLVPlybk.source = "CARSdotCOM_OLD.flv";
//preloader component
pb.source = my_FLVPlybk;
pb.addEventListener(ProgressEvent.PROGRESS, progressHandlerPB);
}
//progress bar component
function progressHandlerPB(event:ProgressEvent):void {
var percentOfVideoLoaded = pb.percentComplete;
if (percentOfVideoLoaded>10 && isLoaded == false){
isLoaded = true;
my_FLVPlybk.play();
}
}
}