1,服务器端可以空实现ApplicationAdapter:示例如下:
?
- package?org.chy.flex01;??
- ??
- import?org.red5.server.adapter.ApplicationAdapter;??
- public?class?Application?extends?ApplicationAdapter{??
- ??????
- ??
- }??
客户端使用Flex实现摄像头获取视频并发布代码如下:
?
<?xml?version="1.0"?encoding="utf-8"?>??
- <mx:Application?xmlns:mx="http://www.adobe.com/2006/mxml"?layout="absolute"?applicationComplete="init()">??
- ????<mx:Script>??
- ????????<!--[CDATA[??
- ????????????import?flash.net.NetConnection;??
- ????????????import?flash.net.NetStream;??
- import?flash.events.NetStatusEvent;??
- import?mx.controls.Alert;??
- ??????????????
- private?var?nc:NetConnection;??
- var?ns:NetStream;??
- var?cam:Camera;??
- function?init():void{??
- ????????????????nc?=?new?NetConnection();??
- ????????????????nc.addEventListener(NetStatusEvent.NET_STATUS,connectServerHander);??
- ????????????????nc.client??=?this;??
- ????????????????nc.connect("rtmp://58.116.56.68:1935/Flex01");??
- ????????????}??
- ??????????????
- function?connectServerHander(evt:NetStatusEvent):void{??
- ????????????????trace(evt.info.code);???
- ????????????????cam?=?Camera.getCamera();??
- ??????????????????
- ????????????????if(cam?!=?null){??
- ????????????????????cam.setMode(313,194,30);??
- ????????????????????cam.setQuality(0,70);??
- ????????????????????ns?=?new?NetStream(nc);???
- ????????????????????ns.attachCamera(cam);??
- ????????????????????ns.publish("red5");??
- ??????????????????????
- ????????????????????var?vi:Video?=?new?Video();??
- ????????????????????vi.width?=?313;??
- ????????????????????vi.height?=?194;??
- ????????????????????vi.attachCamera(cam);??
- ????????????????????videoDisplay.addChild(vi);??
- ????????????????}else{??
- ????????????????????Alert.show("no?Camera");??
- ????????????????}??
- ??????????????????????????
- function?onBWDone(): ????????]]-->??
- ????</mx:Script>??
- ??????
- ????<mx:VideoDisplay?x="162"?y="77"?width="313"?height="194"?id="videoDisplay"/>??
- </mx:Application>??
客户端使用Flex play视频代码如下:
????<mx:Script>??
- ????????<!--[CDATA[??
- import?flash.display.*;??
- import?flash.utils.*;??
- import?flash.events.*;??
- import?flash.net.*;??
- import?flash.media.Video;??
- import?flash.media.Camera;??
- ????????????????nc.addEventListener(NetStatusEvent.NET_STATUS,connectHandler);??
- ????????????}??
- function?connectHandler(evt:NetStatusEvent): ??????????????????
- ????????????????var?ns:NetStream?=?new?NetStream(nc);??
- var?video:Video=new?Video()?;??
- ????????????????video.width?=?313;??
- ????????????????video.height?=?194;??
- ????????????????video.attachNetStream(ns);??
- ????????????????ns.play("red5");??
- ????????????????videoDisplay.addChild(video);??
- ????????]]-->??
- ????</mx:Script>??
- ????<mx:Panel?x="132"?y="78"?width="356"?height="266"?layout="absolute"?title="现场直播"?fontSize="14">??
- ????????<mx:VideoDisplay?x="10"?y="10"?width="320"?height="193"?id="videoDisplay"/>??
- ????</mx:Panel>??
- </mx:Application>??
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|