使用NetConnection、NetStream和Video类来显示FLV

怎么在Flex应用程序中使用NetConnection、NetStream和Video类来播放flv文件?怎么使用onMetaData和onCuePoint事件来处理视频的元数据和嵌入提示点。代码如下:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
			   creationComplete="init()" >
	<fx:Script>
		<![CDATA[
			import mx.events.FlexEvent;
			import mx.utils.ObjectUtil;
			private var nc:NetConnection;
			private var ns:NetStream;
			private var video:Video;
			private var meta:Object;

			protected function init():void
			{
				// TODO Auto-generated method stub
				
				var nsClient:Object = new Object();
				
				nsClient.onMetaData = ns_onMetaData;
				
				nsClient.onCuePoint = ns_onCuePoint;
				
				nc = new NetConnection();
				
				nc.connect(null);
				
				ns = new NetStream(nc);
				
				ns.play("http://192.168.0.50:81/TestRSL/avatar.flv");

				ns.client = nsClient;
				
				video = new Video();
				
				video.attachNetStream(ns);
				
				uic.addChild(video);
				
			}
			
			private function ns_onMetaData(item:Object):void
			{
				trace("meta");
				
				meta = item;
				
				video.width = item.width;
				video.height = item.height;
				
				uic.width = video.width;
				uic.height = video.height;
				
				panel.title = "frame rate:" + item.framerate;
				panel.visible = true;
				
				trace(ObjectUtil.toString(item));
			}
			
			private function ns_onCuePoint(item:Object):void
			{
				trace("cue");	
			}

		]]>
	</fx:Script>
	<fx:Declarations>
		<!-- Place non-visual elements (e.g., services, value objects) here -->
	</fx:Declarations>
	<s:Panel id="panel" visible="true"  width="376" height="374">
		<mx:UIComponent id="uic" />
		<s:controlBarContent>
			<s:Button label="Play/Pause" click="ns.togglePause()" />
			<s:Button label="Rewind" click="ns.seek(0); ns.pause();" />
		</s:controlBarContent>
	</s:Panel>
</s:Application>

很好的blog地址: http://blog.flexexamples.com/

你可能感兴趣的:(function,object,video,application,library,flv)