- 浏览: 423446 次
- 性别:
- 来自: 济南
-
最新评论
-
nianshi:
slideDown就是show的滑动效果版本, slideUp ...
Jquery零碎代码收藏 -
nianshi:
以后编写JS代码,少写<div onclick=&quo ...
Jquery零碎代码收藏 -
nianshi:
获取匹配元素相对父元素的偏移var p = $("p ...
Jquery零碎代码收藏 -
nianshi:
获取匹配元素在当前窗口的相对偏移var p = $(" ...
Jquery零碎代码收藏 -
wuchu:
谢谢
Flex 读取XML配置文件总结
久仰“fms”大名很久了,但是一直无瑕了解它。今日一个录音器项目点燃了学习学习它的导火索
一些FMS的基本概念
Macromedia于2002年年末发布了令人惊异的FMS的前一个版本Flash Communication Server MX服务器(简称FCS)。后来该名为Flash Media Server(简称FMS),使用FMS你只需要配备Web摄像头和麦克风,并加上十几行ActionScript脚本便可以完成一个电视会议系统。
FMS给全世界的人带来一种全新的通讯方式。有了FMS服务器,您可以参加实时网络会议;使用FMS的功能在工作中进行协作以及通过Internet或企业Intranet共享信息。
还不只是这一点,Flash Player的强大功能使得实时通讯和应用程序的集成由梦想变为现实,这正是未来网络软件发展的趋势,这都是Flash Player惹的“火”。
Flash Media Server(简称FMS)服务器是用于用户之间相互通讯的新平台,它集成了Flash多媒体交互的特性,又添加了实时音频、实时视频和实时数据流等新特 色,使用该平台,你可以通过网络存储录制下来的音频、视频,也可以共享数据对象,并且可以将这些音频、视频和共享数据对象传递给多个客户端,实现实时同步 共享。该平台集成了通讯功能和应用程序功能,它通过Flash Player(Flash Player 6或更高)在客户端提供音频共享、视频共享和共享数据流,为用户带来了更为丰富的体验。
二、FMS的传输协议
FMS使用实时通讯协议(RTMP),RTMP 是一种未加密的TCP/IP协议,专门设计用来高速传送音频、视频和数据信息。
使 用FMS可以捕获(甚至录制)用户客户端的视频和音频流。信息通过FMS使用Real-Time Messaging Protocol (RTMP)协议被传递到客户端(用户计算机上的Flash Player)。当一个Flash影片应用程序要使用 FMS时,Flash Player就连接到服务器,这样就在客户端Flash Player和FMS之间提供了往复的源源不断的信息流,称为network stream(网络流)。其他的用户也可以同时连接到相同的FMS接收信息、更新数据以及音频和视频,这些都是“网络流”。
三、FMS的特色
FMS是一个完全基于软件环境的多媒体实时通讯环境,代表了当前实时通讯领域内的发展方向,并且,其自身也融合了大量的新特色,用于创建下一代通讯应用程序,这些新特色包括:
1、它提供了一个高效高性能的运行时,该“运行时”不但可以用于执行代码、处理数据内容,并且还可以进行通讯。
2、它将内容、通讯功能和应用程序界面集成进一个通用环境,这个通用环境就是Flash Player,通过强大且分布广泛的Flash Player,使得通过FMS进行通讯变得更加便利。
3、它为交互性提供了强大、高扩展性的对象模型。在为FMS开发Flash通讯应用程序的过程中,您就会慢慢认识到FMS无处不在的面向对象开发的特点。
4、它还建立了一个高效的组件架构模型,使用该组件架构模型可以创建高效的Flash通讯组件,而使用组件和其它的可重用模块,可以使你快速的开发基于FMS的通讯应用程序。
5、它还允许使用应用程序服务器提供的web服务和数据服务,从而可以和其它的应用服务器技术结合起来以创建功能更强大、更完整的富媒体应用程序。
6、它并且可以识别那些处于连接状态和处于未连接状态的客户端,以降低网络负载。
7、使用它,你可以将通讯应用程序客户端轻松的部署在多个平台和设备上,这多亏了Flash Player的广泛使用。
使 用FMS和Flash创作环境,你可以非常轻松迅速的创建即时通讯应用程序,它可以让两个或多个的用户实现即时交流(交流可以使用文字、音频和视频)。例 如,你可以使用FMS创建会议系统、在线社区、客户支持、销售支持、培训、远程展示或者即时消息系统。FMS是一个实时数据流平台,使用该平台加上客户端 Flash Player的支持,可以将实时的数据流通过网络传递到Internet、PDA、iTV或者其它的设备上。
FMS 的功能平台由两部分组成:服务器提供通讯方式;Flash影片应用程序(SWF文件)提供终端用户界面。你可以使用Flash创作工具作为开发环境创建 Flash影片应用程序,该影片应用程序使用FMS提供的服务(也就是位于FMS上的Flash通讯应用程序)。有时你也可以编写服务端脚本为通讯应用程 序添加新的功能,使用服务端脚本可以更灵活的控制共享状态信息,并且可以作为一个负载平衡器调节多用户之间的实时交互。
连接到FMS服务器(Flash/Flex两种实现)
通常做FMS都是和Flash或是Flex结合开发的,特别是在视频流这方面相当的突出,成功案例也不少,比如 http://www.tudou.com, www.ku6.com , http://www.15dv.com 等视频网站都与FMS挂钩。本人也是因为工作需要,趁工作之余来学习这门技术,想通过写博客的方式来巩固和分享学习,更希望爱好或是在从事这方面开发工作 的朋友多多指正,交流。OK,本文就以连接FMS服务器作为写作话题,来看看我们学习FMS应该从什么地方出发,逐步的走上更高的台阶。
Adobe公司的产品Flash和Flex都可以结合FMS进行编程,本文示例比较简单,为了多凑几个字我打算通过Flash和Flex两种实现来介绍怎么来实现我们的第一个FMS程序“连接到FMS服务器”。
上山砍柴不忘磨柴刀,那么我们做技术开发肯定也离不开对开发环境,开发工具,开发语言的选择和准备。本文中我们的工具就是Flash CS 4,Flex Builder 3和FMS 3.0,所使用的开发语言是ActionScript 3.0,这里我不想浪费时间去介绍软件的安装,相信看这篇文章的你对于安装软件不会存在有什么难度,OK,下面看看怎么编码实现。
一 、FMS应该做些什么
本文中所使用到的FMS是非常简单的,主要就就是建立一个FMS应用,方法很简单。找到你安装FMS的目录你会发现里面有一个appliations的目 录。对的,它就是管理FMS应用的目录,进入该目录在里面建立一个文件夹就OK,我建立的文件夹为"firstFMS"。
二、 Flash连接到FMS服务器
首先建立一个Flash文件(ActionScript 3.0)并将其保存在某个目录(自己决定吧)中。然后打开组件面板(可以按Ctrl+F7)从组件面板中拖拽一个button组件到刚建立好的Flash 的舞台(也就是Flash显示东西的那一块地方),然后通过属性面板(可以按Ctrl+F3)将刚拖拽出的button取个名字(Flash中叫他为实例 名,舞台中的每一个组件就是一相对应的对象的实例),我取的是 btnConnFMS 。
完成上面两步后回到舞台,鼠标在舞台中空白位置点击一下,然后同样打开属性面板,你会发现现在的属性面板和先前的有些不一样,在发布选项下找到“类”,这里我填写的为“ ConnFMS ”,表示我将要通过 ConnFMS.as这个类文件来对当前的这个Flash进行编码。
上面承诺了由 ConnFMS.as 来负责Flash的编码工作,那该怎么做呢?建立一个ActionScript类文件,保存在之前保存Flash文件的同一目录就OK,记住这个类文件一定是“ ConnFMS.as ”。下面是 ConnFMS.as 的完整代码:
- package
- {
- import flash.net.NetConnection;
- import flash.net.NetStream;
- import flash.display.MovieClip;
- import flash.net.Responder;
- import flash.events.MouseEvent;
- import flash.events.NetStatusEvent;
- import flash.events.AsyncErrorEvent;
- public class ConnFMS extends MovieClip
- {
- private var nc:NetConnection;
- public function ConnFMS()
- {
- btnConnFMS.label= "连接到FMS" ;
- }
- private function onClickHandler(evt:MouseEvent):void
- {
- trace( "正在连接FMS服务器" );
- nc = new NetConnection();
- nc.connect( "rtmp://localhost/firstFMS" );
- nc.addEventListener(NetStatusEvent.NET_STATUS,onNetStatusHandler);
- }
- private function onNetStatusHandler(evt:NetStatusEvent):void
- {
- switch (evt.info.code)
- {
- case "NetConnection.Connect.Success" :
- trace( "成功连接FMS服务器!" );
- break;
- case "NetConnection.Connect.Rejected" :
- trace ( "访问FMS服务器权限不足,连接被拒绝!" );
- break;
- case "NetConnection.Connect.InvalidApp" :
- trace( "指定的应用程序名称没有找到" );
- break;
- case "NetConnection.Connect.Failed" :
- trace( "连接失败!" );
- break;
- case "NetConnection.Connect.AppShutDown" :
- trace( "服务器端应用程序已经关闭(由于资源耗用过大等原因)或者服务器已经关闭!" );
- break;
- case "NetConnection.Connect.Closed" :
- trace( "与FMS的连接中断!" );
- break;
- }
- }
- }
- }
发表评论
-
Flex小记录
2011-02-24 10:18 1316Flex读取XML: <mx:HTTPServic ... -
flex实现滑动显示隐藏效果
2010-12-30 15:30 1628鼠标划过的时候显示菜单栏 ,鼠标移开后隐藏菜单栏。比较常用 ... -
flex DataTimePicker时间控件
2010-12-27 11:54 1335两种DatatimePicker: 1.Datatim ... -
ActionScript 生成伪Guid
2010-12-24 09:52 1233在一个Flash制作的图片上传程序中(使用了FileRefer ... -
Flex中Image组件怎么才能非等比例拉伸图片
2010-12-23 15:49 1532Image组件怎么才能非等比例拉伸图片 设 ... -
Flex中Accordion用法
2010-12-23 11:45 3100<? xml version = & ... -
Flex(替代session过期)实现用户长时间不操作要求重新登录的处理
2010-12-23 11:08 1522flex(替代session过期)用户长时间不操作要求重新登录 ... -
ActionScript 3.0 Socket编程
2010-12-23 09:56 1198在使用ActionScript3.0进行编程 ... -
12个简单易用的flex函数
2010-12-21 10:10 11701.拷贝内容到剪贴板: ... -
Flex自定义控件——Pagebar分页控件
2010-12-20 09:41 5291开发时经常遇到用一个DataGrid分页显示 ... -
Flex资源,很全,很牛!
2010-12-20 09:30 14821、as3ebaylib http://code ... -
Flex 窗体 最大化、最小化实例
2010-12-20 09:28 2742---导入flexMdi.swc (http ... -
在Flex中复制文字到操作系统的剪贴板
2010-12-15 11:18 1260这个实例演示了怎么样使用System. ... -
Flex让Slider控件拖动时显示Tooltip
2010-12-14 16:10 1940格式化与自定义Slider中显示的Tooltip ... -
Flex给Alert加个Icon
2010-12-14 16:05 1302给Alert加个Icon 很简单只要先 Embed 一 ... -
在Flex中用Validator验证数字、字符串、Email、电话号码等
2010-12-14 09:54 4345mx.validators ... -
Flex中使用FileReference类下载文件
2010-12-14 09:47 1818下面的实例演示了Flex中的 File ... -
Flex使用ArrayCollection的filterFunction属性过滤DataGrid
2010-12-14 09:42 1828下面的实例演示了在Flex中怎样使用 ... -
Flex 树形控件(Tree )的使用
2010-12-13 16:24 3490一、树形控件的常用属性 1、dragMoveE ... -
FLEX3中应用CSS完全详解手册(下)
2010-12-13 11:40 901myTabs中的设置 cornerRadiusTab ...
相关推荐
【标题】"FMS.rar_flex_flex FMS_fms_site:www.pudn.com" 涉及的核心技术是Adobe Flash Media Server (FMS),它是一个强大的实时流媒体服务器平台,用于发布音视频内容、实时通信以及互动应用程序。这里与Flex一起...
标题"Fms.rar_flex_flex and fms_fms_fms rtmp_fms flex"和描述中的关键词揭示了这个压缩包包含的是与Adobe Flex和Flash Media Server(FMS)相关的项目资源,主要用于创建一个实时通信应用,例如聊天室。Flex是一种...
在实际操作中,首先需要在FMS上设置好环境,然后用Flex编写客户端应用,实现视频的捕获、编码和发送。在另一端,接收方的Flex应用将订阅视频流,解码并在界面上播放。整个过程中,网络条件、服务器性能和编码质量...
6. **部署与配置**:在实际使用前,你需要在本地或服务器上安装并配置FMS服务器,然后根据项目中的说明调整Flex应用中的服务器地址和直播频道设置。 7. **优化与扩展**:为了提高性能和用户体验,你可以考虑优化...
3. **连接FMS**:在Flex应用中,使用NetConnection对象建立与FMS服务器的连接。通过调用`NetConnection.connect()`方法,指定FMS服务器的URL。 4. **发布流**:一旦连接成功,你可以创建一个NetStream对象,使用`...
Flex和FMS3是构建实时互动应用程序的强大工具,尤其适合创建在线聊天室这样的实时通信平台。这个源码和文档集合提供了详细的步骤和技术说明,帮助开发者理解如何利用这些技术实现一个功能完备的聊天室。 Flex是一种...
通过这种方式,Flex应用能够利用FMS实现高效、流畅的视频流传输和互动功能。在实际开发中,还需要了解并熟练掌握ActionScript以及FMS的相关API,以创建复杂的实时多媒体应用。同时,注意优化网络连接和处理性能问题...
FMS3特别适用于开发基于Flash和Flex的应用,因为这两个技术平台可以无缝集成FMS,创建出具有高质量音视频效果的实时通信应用。 **实时视频聊天的技术原理** 1. **RTMP协议**:RTMP是实时消息协议,用于在客户端(如...
通过分析“HelloFms_Sample”文件,我们可以学习如何配置和运行一个基本的FMS服务器端ASC脚本,以及创建一个简单的Flex Mobile应用来与之交互。这将帮助初学者理解FMS与Flex Mobile之间的通信机制,为更复杂的多媒体...
【标题】中的“通过FMS实现时时视频聊天(Flash|Flex)源码”是指使用Adobe的Flash Media Server (FMS)技术,结合Flash和Flex这两种编程语言,开发出一款能够实现实时视频通信的应用程序。这个标题暗示了我们将在...
在本文中,我们将深入探讨如何使用FLEX技术实现视频摄像头录制,并将录制的视频上传到FMS(Flash Media Server)服务器。首先,我们先来理解一下FLEX是什么以及它的核心功能。 FLEX全称为Flex Framework,是Adobe...
3.2 Flex SDK集成:Flex SDK是开发FMS应用的常用工具,它提供了图形化界面和组件库,简化了UI设计和程序开发。 3.3 RTMFP协议:FMS支持RTMFP(Real-Time Media Flow Protocol),允许用户间直接通信,降低服务器...
FMS中文帮助文档是为开发者提供的一份详细指南,旨在帮助他们理解和利用Flex与FMS之间的交互,从而实现高效、流畅的多媒体应用。以下是这份文档可能涵盖的关键知识点: 1. **FMS基础概念**: - **流媒体技术**:...
Flex是基于ActionScript 3的开放源码框架,用于构建富互联网应用程序(RIA),而FMS3则是一个强大的服务器平台,专门用于实时流媒体和交互式应用。 首先,让我们深入理解Flex。Flex提供了丰富的组件库,包括各种用户...
开发FMS应用通常涉及到以下几个关键知识点: 1. **RTMP协议**:理解RTMP协议的工作原理是至关重要的,包括如何建立连接、数据传输流程以及如何处理播放和暂停请求。 2. **ActionScript**:FMS2主要与Flash Player...
- **FMS应用创建**:在FMS安装目录下的`applications`文件夹中创建新的文件夹即可建立一个FMS应用,例如创建名为`firstFMS`的文件夹。 - **开发工具选择**:本教程使用Adobe Flash CS4和Flex Builder 3进行开发,...
- **客户端**:使用Adobe Flash或Flex开发的应用程序,运行于Flash Player、AIR或Flash Lite 3之上。客户端可以捕捉、播放音频和视频,并处理用户交互。 - **服务器端**:运行在服务器上的应用程序,负责管理客户端...
在开发使用Flex与FMS交互的应用时,可能会遇到这些常见问题。 1. **访问FMS连接失败(NetConnection.Connect.Failed)** 当遇到此错误时,可能是因为缺少必要的文件或配置不正确。解决方法是检查FMS安装目录下的`...
标题中的“免费多人视频会议功能加强版本(Fms3和Flex开发(附源码))”指的是一个基于Fms3(Flash Media Server 3)和Flex技术开发的多人视频会议系统,该系统不仅提供基本的视频交流功能,还进行了性能优化和功能增强...