package
2{
3 import flash.net.*;
4 import flash.events.*;
5 import flash.media.*;
6 import flash.display.*;
7 import fl.controls.*;
8
9 public class PublishPlay extends Sprite
10 {
11 private var nc:NetConnection;
12 private var ns:NetStream;
13 private var video:Video;
14 private var cam:Camera;
15 private var mic:Microphone;
16
17 public function PublishPlay():void
18 {
19 lbName.text="请输入视频文件名:";
20 btnPublish.label="开始录制";
21 btnPublish.addEventListener(MouseEvent.CLICK,onPublishClick);
22 btnStop.label="停止录制";
23 btnStop.addEventListener(MouseEvent.CLICK,onStopHandler);
24 btnPlay.label="视频回放";
25 btnPlay.addEventListener(MouseEvent.CLICK,onPlayHandler);
26
27 video=new Video();
28 cam = Camera.getCamera();
29 mic = Microphone.getMicrophone();
30 if(cam==null)
31 {
32 trace("没检测到视频摄像头");
33 }
34 else
35 {
36 video.attachCamera(cam);
37 }
38 addChild(video);
39 }
40
41 private function onStatusHandler(evt:NetStatusEvent):void
42 {
43 trace(evt.info.code);
44 if(evt.info.code=="NetConnection.Connect.Success")
45 {
46 ns=new NetStream(nc);
47 ns.addEventListener(NetStatusEvent.NET_STATUS,onStatusHandler);
48 ns.client=new CustomClient();
49 }
50 }
51
52 private function onPublishClick(evt:MouseEvent):void
53 {
54 nc=new NetConnection();
55 nc.addEventListener(NetStatusEvent.NET_STATUS,onPublishStatusHandler);
56 nc.connect("rtmp://localhost/PulishedStreams");
57 }
58
59 private function onPublishStatusHandler(evt:NetStatusEvent):void
60 {
61 if(evt.info.code=="NetConnection.Connect.Success")
62 {
63 ns=new NetStream(nc);
64 ns.addEventListener(NetStatusEvent.NET_STATUS,onPublishStatusHandler);
65 ns.client=new CustomClient();
66 ns.attachCamera(cam);
67 ns.attachAudio(mic);
68 ns.publish(tbName.text,"record");
69 }
70 }
71
72 private function onStopHandler(evt:MouseEvent):void
73 {
74 nc.close();
75 }
76
77 private function onPlayHandler(evt:MouseEvent):void
78 {
79 nc=new NetConnection();
80 nc.addEventListener(NetStatusEvent.NET_STATUS,onPlayStatusHandler);
81 nc.connect("rtmp://localhost/PulishedStreams");
82 }
83
84 private function onPlayStatusHandler(evt:NetStatusEvent):void
85 {
86 if(evt.info.code=="NetConnection.Connect.Success")
87 {
88 ns=new NetStream(nc);
89 ns.addEventListener(NetStatusEvent.NET_STATUS,onPlayStatusHandler);
90 ns.client=new CustomClient();
91
92 video = new Video();
93 video.attachNetStream(ns);
94 ns.play(tbName.text,0);
95 addChild(video);
96 }
97 }
98 }
99}
分享到:
相关推荐
FMS视频录制监控,播放,完美实现Demo。
FMS+FLASH+在线视频录制+ASP+Access. <br>编者的话 <br>自己骗写的,下载本文件的朋友请自己研究,该注释的,我已经打好了详细注释,修改不困难,这样还不懂的话我也没有办法,另外还附了播放器。 <br>不...
EdhRecPost是一个WEB插件服务项目,提供swf文件形式的插件,能让网页设计者十分容易地在网页中实现在线录制,并保存音频和视频文件到服务器上。比如:可以学校网站上增加学生在线表演模块,在各种BBS、BLOG中增加...
Fms 视频录制屏幕共享 附源码.doc
这是一个压缩包,包含以下内容: 1.FMS3中文翻译 2.FMS教程 3.教程:教你用FMS在线录制视频 4.评估FMS视频录制的带宽需求来采用合适的尺寸和速率 5.视频录制系统的注意事项 6.FMS4开发指导官方白皮书
一个flash与fms结合录制视频的例子
最近跟人公司的一个项目 但是由于做完他们都说不要 外包给别人!然后就分享上来!~
以下为引用的内容: private function onPublishClick(evt:MouseEvent):void { nc = new NetConnection();...以live的形式发布的流不会在FMS里生成.fla文件,不同于“record”录制视频流生成.flv的视频文件。
fms视频会议源代码,Flash + FMS
多人视频会议系统,基于FMS的,包含全部源码。
利用fms实现视频聊天程序,希望对和我一样的菜鸟们能有些帮助
网博Fms在线直播系统网博Fms在线直播系统网博Fms在线直播系统网博Fms在线直播系统网博Fms在线直播系统网博Fms在线直播系统网博Fms在线直播系统网博Fms在线直播系统网博Fms在线直播系统
fms,flash,视频聊天fms,flash,视频聊天fms,flash,视频聊天
实现网页在线视频聊天,环境fms2,flash cs4
FMS通信,连接,发布,播放视频 频聊天、视频会议、视频直播、视频监控
基于FMS的网络视频会议系统设计 基于FMS的网络视频会议系统设计[1].pdf
Flex+FMS写的视频聊天,在本机亲测通过。但唯一不足得是在别的机子上连接不成功。我也不知道为什么。望有才之士能完善。huzhaohui1992@qq.com 如能完善,请给我邮箱一份,在下感激不尽。
NULL 博文链接:https://tonyliu8731.iteye.com/blog/426502
利用FLEX编写的摄像头录制视频文件,并上传到FMS服务器,同时就如何安装FMS服务器及配置进行说明.