flex视频聊天
来源:互联网 发布:淘宝产品排名规则 编辑:程序博客网 时间:2024/05/01 01:09
FMS的视频聊天
2008-07-25 16:59
只是把以前做的单个的功能整合了一下,本来还想弄个FMS的视频聊天,不过虚拟空间没办法..
http://www.iphper.com/copstr
光是留言板+在线涂鸦就几百行代码(看来效率低了点)
FMS服务器的设置简单的仿照(一)就可以了,这段代码延续(一),加上了视频和语音发布,主要用到netstream.publish()方法,该方法也可以用于视频在线录制,除了检测摄相头和MIC状态的代码外,就增加了十几行的视频发布代码,有关摄相头和MIC的详细设置我并没有写,只是让大家看清楚它的工作原理,没有摄相头的朋友(我就没有摄相头)可以这样测试:打开麦克风说话,如果能听到回音就说明发布成功了
//建立与服务器的连接.
var sv_uri:String = "rtmp:/recordstream";
var my_nc:NetConnection = new NetConnection ();
my_nc.connect (sv_uri);
//新建共享对象;
my_nc.onStatus = function (thisObj:Object){
if (thisObj.code == "NetConnection.Connect.Success"){
info_txt.text = "连接服务器成功!!";
info_txt.textColor = 0x66CC00;
}
else{
info_txt.text = "连接服务器失败!!"
info_txt.textColor = 0xFF0000;
}
}
var user_rso:SharedObject = SharedObject.getRemote ("chat_rso", my_nc.uri, true);
user_rso.connect (my_nc);
//建立摄相头和麦克风对象
this.cam = Camera.get();
this.mic = Microphone.get();
videobox.attachVideo(this.cam);
videobox.attachAudio(this.mic);
send_ns = new NetStream(my_nc);
send_ns.attachVideo(this.cam);
send_ns.attachAudio(this.mic);
send_ns.publish("humorguy");
get_ns = new NetStream(my_nc);
get_ns.play("humorguy");
videobox2.attachVideo(get_ns);
//更新聊天内容
user_rso.onSync = function (){
chatOutput_txt.text += newline+this.data.chatname +":" + this.data.chatcontent;
chatOutput_txt.scroll = chatOutput_txt.maxscroll+1;//确保最新消息能显示在输出框里
}
//回车键发送聊天内容
function myOnKeyDown() {
if (Key.getCode() == 13) {
if(chatInput_txt.text != undefined && chatInput_txt.text != user_rso.data.chatcontent){
Selection.setFocus(chatInput_txt);
user_rso.data.chatcontent = chatInput_txt.text;
if(name_txt.text != "" && name_txt.text != user_rso.data.chatname){
user_rso.data.chatname = name_txt.text;
}
}
}
}
var myListener:Object = new Object();
myListener.onKeyDown = myOnKeyDown;
Key.addListener(myListener);
//构造检测摄相头和麦克风状态的函数
function checkforCam_Mic() {
camArray = Camera.names;
micArray = Microphone.names;
if (camArray.length>=1) {
temp_cam = Camera.get();
if (temp_cam == -1) {
camInfo_txt.text = '视频设备正忙!';
camInfo_txt.textColor = 0xFFCC00;
} else {
camInfo_txt.text = '视频设备可用!';
camInfo_txt.textColor = 0x66CC00;
}
delete temp_cam;
} else if (camArray.length == 0) {
camInfo_txt.text = '没有视频设备!';
camInfo_txt.textColor = 0xFF0000;
}
//检测麦克风状态
if (micArray.length>=1) {
temp_mic = Microphone.get();
if (temp_mic == -1) {
camInfo_txt2.text = '麦克风正忙!';
camInfo_tx2t.textColor = 0xFFCC00;
} else {
camInfo_txt2.text = '麦克风可用!';
camInfo_txt2.textColor = 0x66CC00;
}
delete mic_cam;
} else if (micArray.length == 0) {
camInfo_txt2.text = '没有麦克风!';
camInfo_txt2.textColor = 0xFF0000;
}
}
checkforCam_Mic();
- flex视频聊天
- Flex,Fms3,视频聊天
- Java Flex Fms 视频聊天
- Flex视频聊天踢人问题
- Fms3和Flex打造在线多人视频会议和视频聊天(附原代码)<视频聊天,会议开发实例3>
- FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)
- FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)
- FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)
- flex 聊天系统
- FlexAir 开源版-多人视频聊天室,网络远程多人视频会议系统((Flex,Fms3联合开发))<视频聊天,会议开发实战>
- ios 视频聊天 视频通讯
- ActiveX视频聊天控件
- QQ强制视频聊天
- 视频聊天服务端
- 视频聊天客户端端
- C# 视频聊天
- 视频聊天源码求救
- 视频聊天的参考资料
- poj2681
- 创建可交互的FMS连接--I can say:Hello World
- 基于FMS的流媒体播放程序,看山寨帮的山寨传奇
- 取得Android root权限(Magic Root Access)
- fms摄像头
- flex视频聊天
- ASP.NET生成静态页面
- [hdu] 1754 I hate it -- 线段树
- 浏览器相关功能系统调用
- 了解一些FMS的基本概念
- 一致性哈希(Consistent Hashing)
- ubuntu快捷键
- 传说中比绿盟更优秀的地方
- C/C++中的字符串