Netstream won pause/resume. it gets disconnected

im having somethin very odd. when i try to pause a progresive flv it works, but to resume it gets disconnected. and theres no way to get it working.
this is my code
Code:

      package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.display.MovieClip;
    import fl.video.VideoPlayer;
    import fl.video.VideoEvent;
    import fl.video.MetadataEvent;
    import fl.video.VideoProgressEvent;
    import fl.video.VideoScaleMode;
    import fl.video.VideoState;
    import fl.video.NCManager;
    import flash.events.NetStatusEvent;

    public class myvid extends MovieClip {

        private var player:VideoPlayer;

        public var src:String;
        private var meta:Object;

        private var srcw:Number;
        private var srch:Number;
        private var srcduration:Number;
        private var bar:Sprite;
        private var posbar:fondo;
        private var currentpos:fondo;
        private var bloaded:fondo;
        private var vc:vcontrol;
        private var actionclose:Event=new Event("actionclose");


        public function myvid(src:String) {

            myMC.dispatcher.addEventListener("actionclose", actioncloseHandler);

            player = new VideoPlayer();

            //player.idleTimeout=1000000;
            player.bufferTime=5;
            player.scaleMode=VideoScaleMode.NO_SCALE;
            player.setSize(480, 320);
            player.x=360;
            player.y=7;
            addChild(player);
            addEventListener(Event.REMOVED,removedHandler);
            player.addEventListener(VideoEvent.COMPLETE,vidcompleteHandler);
            player.addEventListener(VideoEvent.PLAYHEAD_UPDATE, playingHandler);
            player.addEventListener(MetadataEvent.METADATA_RECEIVED, metadataHandler);
            player.addEventListener(VideoProgressEvent.PROGRESS, loadingHandler);
            player.addEventListener(VideoEvent.STATE_CHANGE, stateHandler);
            player.addEventListener(VideoEvent.READY, readyHandler);


            controller();
            vidload(src);


        }
        public function vidload(url:String) {

            player.load(url);


            player.netStream.addEventListener(NetStatusEvent.NET_STATUS,nsHandler);
            player.netConnection.addEventListener(NetStatusEvent.NET_STATUS,nsHandler);

        }
        public function controller() {

            bar=new Sprite();

            posbar=new fondo(0x333333,0x111111,480,3);
            bloaded=new fondo(0x226666,0x111111,480,3,1);
            currentpos=new fondo(0xffffff,0x111111,480,3,0.4);
            bar.x=365;
            bar.y=328;

            vc=new vcontrol();

            vc.x=360;
            vc.y=327;
            vc.addEventListener(MouseEvent.CLICK,vcclikHandler);
            addChild(bar);
            addChild(vc);
            bar.addChild(posbar);
            bar.addChild(bloaded);
            bar.addChild(currentpos);
            bar.width=475;
            function vcclikHandler(event:MouseEvent):void {

                trace(player.state+"||||||||"+event.currentTarget);
                /*if (vc.currentFrame==1) {
                    //vc.gotoAndStop(2);
                    
                } else {
                    //vc.gotoAndStop(1);
                    player.netStream.pause();
                }*/
                

                if (player.state!= "playing") {
                trace("try play");
                vc.gotoAndStop(1);
                player.netStream.pause();
                //player.play();
                
                }
                if (player.state== "playing") {
                trace("try pause");
                vc.gotoAndStop(2);
                player.netStream.pause();
                
                }
                

            }

        }
        private function stateHandler(event:VideoEvent):void {

            trace("||||||||"+event.state);


        }
        private function nsHandler(event:NetStatusEvent):void {
            trace("_______________"+event.info.code);

        }
        private function metadataHandler(metadataObj:Object):void {

            meta = metadataObj;
            srcduration=meta.info.duration;
            trace(meta.info.videodatarate);
        }
        private function loadingHandler(event:VideoProgressEvent):void {
            var percent:Number=event.bytesLoaded/event.bytesTotal;

            bloaded.width=480*percent;
        }
        private function readyHandler(event:VideoEvent):void {
            trace("ready");
            player.play();

        }

        private function vidcompleteHandler(event:VideoEvent):void {
            //player.autoRewind=true;
        }
        private function playingHandler(event:VideoEvent):void {
            currentpos.width=(480/srcduration)*event.playheadTime;
        }
        function actioncloseHandler(event:Event):void {
            trace("close");
            parent.removeChild(this);
        }
        function removedHandler(event:Event):void {
            player.close();
            addEventListener(Event.REMOVED,removedHandler);
            player.removeEventListener(VideoEvent.COMPLETE,vidcompleteHandler);
            player.removeEventListener(VideoEvent.PLAYHEAD_UPDATE, playingHandler);
            player.removeEventListener(MetadataEvent.METADATA_RECEIVED, metadataHandler);
            player.removeEventListener(VideoProgressEvent.PROGRESS, loadingHandler);
            player.removeEventListener(VideoEvent.STATE_CHANGE, stateHandler);
            player.removeEventListener(VideoEvent.READY, readyHandler);
        }
    }
}