民浩

 

利用flash中的Video类播放flv格式文件,每次播放十秒左右就无故停止解决方法

package 
{    
	import flash.display.Sprite;    
	import flash.events.AsyncErrorEvent;    
	import flash.media.Video;    
	import flash.net.NetConnection;    
	import flash.net.NetStream;    
	import flash.events.SyncEvent;    
	/**     
	* ...     
	* @author chb  
	*/    
	public class videoExample extends Sprite   
	{       
		/**    
		* ...    
		* 构造函数    
		*/    
		public function videoExample():void     
		{       
			trace("进入了构造函数");      
			setMain();   
		}          
		/**    
		* ...    
		* 主函数    
		*/    
		public function setMain():void    
		{     
			//创建远程连接对象     
			var nc:NetConnection = new NetConnection();     
			nc.connect(null);     
			//创建视频流       
			var ns:NetStream = new NetStream(nc);     
			ns.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);     
			//http://124.42.1.100/nn1.flv       
			ns.play("http://124.42.1.100/nn1.flv");       
			//创建视频对象      
			var vid:Video=new Video(550,400);      
			vid.smoothing=true;      
			vid.attachNetStream(ns);       
			//把视频对象添加到舞台        
			stage.addChild(vid);          
		}        
		public function asyncErrorHandler(e:AsyncErrorEvent):void    
		{       
			trace("连接出现错误");   
		}  
	}  
}
以上是flash播放器的一段简单代码,就这么一段简单的代码就可以播放flv文件啦。但是里面会存在一个问题,就是播放十秒左右视频就无故停止啦,解决办法是把这段声明var ns:NetStream提到方法外面去,由局部变量变为全局变量,它不能声明在方法里面。

posted on 2011-06-15 00:00  民浩  阅读(2193)  评论(2编辑  收藏  举报

导航