FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)
来源:互联网 发布:php类库有哪些 编辑:程序博客网 时间:2024/05/17 07:44
转载自:http://www.pin5i.com/showtopic-23895.html
本系列的前几篇文章中分别介绍了,连接FMS服务器、建立播放程序以及在线视频录制以及回放等功能的实现。相信看过前面几篇文章的朋友已经对FMS有了一定的认识,并熟悉了常用的编程模式。本文将结合前面几篇文章所出现的技术点,来实现一个时时视频聊天程序。
通过FMS实现视频时时聊天其实很简单,也就是操作时时流。如果是单向视频聊天,则两端一边一边为发布端一边为订阅端,如果是双向视频聊天,则两边都分别是发布端和订阅端。
如果从技术实现上来分析,单向视频聊天就是一边发布流另一边播放流,双向视频聊天则是两边都需要提供两个流,一个负责发布流,一个负责播放流。在说专业点就是一个创建流并且发送到服务器的客户端叫发布,一个创建流来接受内容的客户端叫订阅,当同一个客户端同是发布和订阅时,它必须创建两个流,一个是输出流,一个是接受流。
说了这么多下面看看具体是怎么实现的,要实现视频聊天上面分析过,就是一边发布时时视频流一边播放,这同样离不开连接FMS,代码如下:通过点击按扭连接(NetConnection)FMS服务器,然后向FMS发布(publish)视频流,达到视频发布的目的。这里需要注意一点,在发布方法publish()中后一参数为“live”,表示时时视频流。以live的形式发布的流不会在FMS里生成.fla文件,不同于“record”录制视频流生成.flv的视频文件。实现视频发布的核心技术点就是获取视频、音频数据,分别通过Camera和Microphone的静态方法实现。参考代码:通过以上步骤就完成了视频聊天的视频流发布端的开发,完整的示例代码如下:视频接收端相对发布端更简单,提供一个NetConnetion连接到发布端的FMS,通过NetStream播放时时视频流就完成。代码很简单,基本上都是在本系列前几篇文章中出现过的代码片段整合而成,详细见下代码块:OK,到这里视频聊天的两端都完成了,如果需要做双向视频聊天,只需要在每一边多提供一个流就可以了,两端都实现发布视频流和接收视频流数据。
或许看完文章的朋友回问到CustomClient是那里来的,CustomClient是为了处理元数据的,可以通过元数据向实况视频添加一些格外的属性,本文暂时不讨论,有兴趣的朋友可以查看官方文档了解。
0 0
- FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)
- FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)
- FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)
- fms系列5 时时视频聊天
- Flex,Fms3,视频聊天
- FMS3系列(六):使用远程共享对象(SharedObject)实现多人时时在线聊天(Flex | Flash)
- FMS3系列(六):使用远程共享对象(SharedObject)实现多人时时在线聊天(Flex | Flash)
- FMS3系列(六):使用远程共享对象(SharedObject)实现多人时时在线聊天(Flex | Flash)
- Java Flex Fms 视频聊天
- FMS3系列(七):FMS案例开发--视频聊天室
- FMS 系列(一):第一个 FMS程序,连接到FMS 服务器(Flash/Flex 两种实现)
- ASP.NET+FMS+JS实现视频聊天
- ASP.NET+FMS+JS实现视频聊天
- 基于FMS(Flash Media Service)的多人视频聊天
- Fms3和Flex打造在线多人视频会议和视频聊天(附原代码)<视频聊天,会议开发实例3>
- C#ASP.NET+FMS+JS实现视频聊天
- FlexAir 开源版-多人视频聊天室,网络远程多人视频会议系统((Flex,Fms3联合开发))<视频聊天,会议开发实战>
- FMS学习(五):上传本地视频
- GitHub 优秀的 Android 开源项目
- STL系列(3):List 双向链表
- 1.IBAction 、IBOutlet 、Bundle identifier、退出键盘、UITextfield
- freemarker常见语法大全
- 通过引用计数解决野指针的问题(C&C++)
- FMS3系列(五):通过FMS实现时时视频聊天(Flash|Flex)
- Mac OS X 上干净卸载软件
- Linux makefile 教程 非常详细,且易懂
- 两种方法删除NSUserDefaults所有记录
- Myecliose 下如何注册dtd文件
- FMS3系列(六):使用远程共享对象(SharedObject)实现多人时时在线聊天(Flex | Flash)
- Location服务之LocationManager
- iscroll5 checkbox点击不起作用
- Unity中多个音乐控制