Hey everyone,
I have a client who is having an issue with a video player. The video loads and plays fine. But, sporadically, the video will lock up or pause for several seconds. We’ve determined it is “probably” not a bandwidth issue. But, we’re not sure what else would cause it. When the video locks up, it’s state is changed to “paused”.
I believe the code is fine but I’ve included it here just in case. This is a simplified version that only includes a basic video player. I’m starting to think it has something to do with the compression/quality/bit rate of the video but I don’t know enough about it to speak intelligently.
I was hoping someone else might have some insights. He’s using Sorensen squeeze to compress the videos. I believe the originals were made in AfterEffects.
First, here is the test URL:
http://jumpco.dygfloyd.com/VideoTest1
The actual URL is:
http://jumpco.dygfloyd.com/
Here is an abbreviated version of the code but, as I said, there’s not much to it. I know the code could have been written more efficiently but I just wrote this in about 15 minutes just as a test. I wanted to strip out everything except just the videos to see if they were the thing causing the problem.
NOTE: I can’t reproduce the error my client is referring to. So, if you can’t see it either, please feel free to post “Works for me.”
// All of this code is in the constructor of the class
Player = new FLVPlayback();
Player.x = 10;
Player.y = 10;
Player.width = 640;
Player.height = 360;
Player.source = "videos/JumpReel.flv";
Player.addEventListener(VideoEvent.STATE_CHANGE, onVideoStateChange);
addChild(Player);
Button1 = new MovieClip();
Button1.x = 10;
Button1.y = 380;
Button1.graphics.beginFill(0x000000);
Button1.graphics.drawRect(0, 0, 120, 60);
Button1.graphics.endFill();
Button1.buttonMode = true;
Button1.addEventListener(MouseEvent.CLICK, Button1Click);
addChild(Button1);
(( I add 4 more buttons like this ))
//
// This code is outside the constructor
private function Button1Click(e:MouseEvent):void
{
Player.source = "videos/NASCAR_Day.flv";
}
(( 4 more identical button handlers ))
private function onVideoStateChange(e:VideoEvent) {
Status.text = e.state;
Status.setTextFormat(StatusFormat);
}
Thanks for your help!