We are having problems with choppy, slow and delayed live video streaming
Hi, we have installed FMS on our godaddy server to work with and used live video streaming services. We are having problems with the video quality being choppy, slow and pauses continuously during live broadcast and motion. We can't figure what is wrong; video needs to be flawless and in high quality. The godaddy server is running:
Red Hat Fedora Core 7
Intel Core 2 Duo - 2.13 GHzRAM
2 GB RAM
250 GB Total Disk Space
So here is the issue in detail with our code, any help would be greatly appreciated. Thanks.
I am facing below mentioned problem regarding video broadcasting with adobe flash media interactive server (Developers version).I am using DVRCAST for recording video from a webcam and broadcasting the same live.please find video settings below.
width:320
height:240
fps:15
quality:90
bandwidth:150
buffer time:0.01
Our problem is that videos are not playing smoothly in application. The motion is getting paused and inturreped in time of broadcast live.
I downloaded and checked the recorded flv files from server and found the recorded file also has same problem. So this problem is appearing in time of streaming the video from client computer to fms server. if anyone can advise me how to solve this problem, I would appreciate it.
This problem is not appearing when i am testing the application in my localhost.
My code for live streaming mentioned below
private function publishCamera():void {
cam = Camera.getCamera();
cam.setMode(cameraSettings.width,cameraSettings.height,cameraSettings.fps);
cam.setQuality(cameraSettings.bandwidth,0);
cam.setQuality(cameraSettings.bandwidth,cameraSettings.quality);
cam.setQuality(0,cameraSettings.quality);
mic = Microphone.getMicrophone();
ns = new NetStream(nc);
ns.client = new CustomClient();
ns.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, onAsyncError);
ns.attachCamera(cam);
ns.attachAudio(mic);
ns.bufferTime=0.01;
ns.publish(stream, "record");
}
private function onNetStatus(event:NetStatusEvent):void{
trace(event.info.code);
switch(event.info.code){
case "NetConnection.Connect.Success":
publishCamera();
displayPublishingVideo();
displayPlaybackVideo();
break;
case "NetStream.Play.Start":
trace("dvrFlag " + dvrFlag);
if(dvrFlag){
nsPlayer.seek(1000000);
dvrFlag = false;
}
break;
}
}
Thanks a bunch,
Steve
