欢迎来到论文网! 加入收藏 | 设为论文网 | 网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 毕业论文 > 硕士毕业论文

利用FMS+Flash实现实时视频应用_RTMP

时间:2011-06-24  作者:秩名

论文导读::流媒体技术是利用数据缓冲技术。平台集成了Flash多媒体交互的特性。文件最终将编译并生成SWF文件。协议。提供实时视频服务)。
论文关键词:流媒体,FMS,Flash,RTMP,实时视频

 

1 引言

流媒体技术是为解决以Internet为代表的中、低带宽网络上多媒体信息传输问题而产生、发展起来的一种新技术。流媒体技术是利用数据缓冲技术,采用编解码系统和特殊的网络协议,对网上多媒体文件边下载解压缩边播放,目前已经成为网络上音、视频(特别是实时音视频)应用的主要解决方案。视频流媒体是视频技术和网络通信技术发展的产物,广泛应用于实时视频、远程教育、网络电台等方面。

FMS(FlashMedia Server)给世界带来了全新的通信方式,它是用于用户之间相互通讯的新平台。该平台集成了通讯功能和应用程序功能,它通过Flash Player在客户端提供音频共享、视频共享和共享数据流。使用该平台,人们可以方便的进行实时通信,可以通过网络存储录制下来的音频、视频RTMP,也可以共享数据对象,并且可以将这些音频、视频和共享数据对象传递给多个客户端,实现实时同步共享。FMS平台集成了Flash多媒体交互的特性,又添加了实时音频、实时视频和实时数据流等新特色。

Flash是美国Macromedia公司(2005年4月已被Adobe公司并购)于1999年6月推出的交互式矢量动画设计软件。Flash技术具有强大的图形表现力和交互操作性,它是一种交互式动画设计工具,可以将音乐,声效,动画以及富有新意的界面融合在一起,从而制作出高品质的动态效果。Flash文件最终将编译并生成SWF文件,通过Flash Player来解释运行[1]

2RTMP协议

流媒体技术实现的关键就是流式传输,所以需要合适的流式传输协议。由于TCP协议需要的开销较多,所以不太适合传输实时多媒体数据。FMS服务器使用RTMP(Real-Time Messaging Protocol,实时通信协议)来高速传输音频、视频和数据信息论文开题报告。RTMP是一种未加密的TCP/IP协议,当Flash影片要使用FMS服务器时,Flash Player就连接到服务器,这样Flash Player和FMS服务器之间就建立了往复的源源不断的信息流[2],如图1所示。

图1 FMS、Web服务器与客户端Flash Player的连接

3FMS服务器

3.1FMS流媒体服务器的配置与部署

FMS服务器可以对多个端口进行监听,所以在安装过程中可以定义多个端口号,每个端口号之间使用逗号隔开RTMP,而管理服务器的端口号只有一个(最好使用默认安装)。FMS服务器安装成功后,将在系统服务中新加两服务:Flash Media Server和Flash Media AdministrationServer。在“%FMS安装目录%”文件夹下主要包括以下文件[3]

FMSMaster.exe:服务器应用程序。

FMSAdmin.exe:服务器管理控制器,管理员控制台所连接到的服务,用来执行管理任务。

FMSCore.exe:FMS应用程序都在这里运行,所有的脚本执行,流的发生都是在这里完成。

FMSEdge.exe:文件监视到Flash Media Server的连接,把连接传给FMSCore 进程。

fms_adminConsole.swf、fms_adminConsole.hmtl:功能一样,都是用来连接FMSadmin服务的管理工具,不同之处一个是SWF的,一个是HTML进去之后界面都差不多。

applications:存放了FMS在安装时默认的两个应用程序,live、vod,用户自己开发的应用程序也要存放这里,通过客户端NetConnection call 连接到这个应用程序。

(1)FMS服务器和控制台的启动与停止服务

FMS的启动包括服务器的启动和控制台启动两个方面,可以通过“开始”菜单启动,如果在进程表中看到FMSMaster.exe、FMSCore.exe、 FMSEdge.exe和FMSAdmin.exe四个进程,说明FMS服务器和FMS服务器控制台已经启动成功。FMS服务器和控制台的关闭也可以通过相应菜单执行或关闭进程中的FMS四个进程即可。

(2)FMS控制台账号、密码的管理

FMS控制台的启动,需要设置管理员帐户和密码,设置的用户名和密码存放在“%FMS安装目录%”下的conf\fms.ini文件中,可以设置如下:

SERVER.ADMIN_USERNAME = chenrongRTMP,此行代码设置和修改用户名。

SERVER.ADMIN_PASSWORD = 654321,此行代码设置和修改密码。

(3)指定applications所在位置

FMS系统安装后,所有要联机的目录都放在安装目录下application文件夹中,如果要进行开发,也必须先在applications目录中创建目录并把程序存放在此。而application的位置都是预设在安装目录下,通常这样的管理很不方便。所以如果要将applicetions要建置的目录放在其它好维护的地方(比如放置于D盘根目录),则需做如下配置和部署。

修改“%FMS安装目录%”下的conf\fms.ini文件的VHOST.APPSDIR:

VHOST.APPSDIR = D:\applications。

(4)指定FMS使用的IP和Port

如果要设置或指定FMS服务器IP和Port,则需要修改“%FMS安装目录%”下的conf\fms.ini文件中的第2个ADAPTOR.HOSTPORT。

ADAPTOR.HOSTPORT为210.89.105.21:1935

(5)视频文件发布部署

在FMS安装目录的applications文件夹下,默认有vod和live两个文件夹 (vod提供视频发布;live提供实时视频服务)。

如果用户需要设置自己的视频发布文件夹RV,则需完成下述工作:

①复制vod文件夹下的所有文件到 RV文件夹下;

②用记事本打开安装目录下RV文件夹中的Application.xml,将 VOD_DIR改为RV_DIR;

③用记事本打开FMS安装目录的conf文件夹下fms.ini文件,增加一条设置: RV_DIR=C:\ProgramFiles\Adobe\Flash Media Server 3.5\applications\RV\media并保存文件;

④将要发布的视频文件放到RV\media 文件夹下。

3.2开发环境的调试及FMS组件安装

在创建实时通信应用程序时,需要创建Flash影片程序和ActionScript通讯脚本(ASC),而Flash环境是创造影片应用程序的最佳选择,同时它也可以编写ASC,所以选择Flash作为软件开发的环境。

应用FMS的组件可以方便快捷的开发通信应用程序。FMS组件包括了服务器端和客户端AS,同时在组件安装包中有一个Communication Components.fla文件和scriptlib文件夹,它们是创建实时通信所需的重要组件。

将Communication Components.fla文件复制到Flash安装目录Communication Components下,启动Flash即可调用该组件建立通信程序[4]

将scriptlib文件夹复制到FMS安装目录下并覆盖原有scriptlib目录RTMP,启动FMS服务器,该组件的设置即可生效。

4创建Flash通信应用程序[5]

要创建一个可供多人视频聊天的Flash通信应用程序,可以使用内建的Communication Components来实现。

(1)在安装FMS服务器时已经创建了一个%\applications\的文件夹,在该文件夹下新建名为flash_live_publish的文件夹,这就意味着创建了一个名为flash_live_publish的Flash通信应用程序论文开题报告。

(2)加载component.asc。因为在应用程序中需要使用通讯组件,所以必须加载位于scriptlib目录中的commponents.asc。

(3)利用Flash创作环境,建立一个AS通信文件,在该文件下键入核心代码:load(“components.asc”);将该文件命名为main.asc并保存于FMS服务器的flash_live_publish文件夹下。

(4)利用Flash环境建立一个Flash文档,即创建该通信应用程序的GUI(图形用户界面)。

① 在舞台上拖放一个PeopleList组件实例,并在“属性”面板上将其命名为“PeopleList_mc”,用于显示用户列表。

② 在舞台上拖放一个Chat组件,同理命名为“Chat_mc”,用于发送文字消息。

③ 在舞台上放置6个AVPresence组件,分别命名为“AVPresence1、AVPresence2、AVPresence3……AVPresence6”,用于显示音视频。

④ 在舞台上放置一个ConnectionLight组件,命名为“ConnectionLight_mc”,用于显示连接状态。

⑤ 在舞台上放置一个SimpleConnect,该组件是核心组件,用于连接到FMS服务器上的通信应用程序。选中该组件,并定义其参数:

Application Directory参数:键入rtmp://myFlashHost/flash_live_publish;使用rtmp协议连接到flash_live_publish应用程序(myFlashHost表示计算机主机名RTMP,在这为210.89.105.21)。

Communication Components参数:单击该参数右边放大镜按钮,在弹出的“值”对话框中添加9个值,并定义已经创建的几个组件值为――ConnectionLight_mc、Chat_mc、PeopleList_mc、AVPresence1、AVPresence2、AVPresence3……AVPresence6。

⑥ 设置并调整好各组件的位置和属性后,将该文档命名为sample,并发布生成sample.swf文件。

至此,一个可供多人视频聊天的Flash通信应用就实现了,客户端安装了Flash Plyaer,FMS服务器正常运行,用户就可以通过访问sample.swf与其他人聊天。效果图如图2所示。

图2FMS+Flash实时视频应用截图

5小结

FMS是一项新技术,利用Flash+FMS环境来创建实时通信系统,可以轻松快捷的实现用户间的实时交流;并且Flash技术已比较成熟,在应用时不需担心视频编码和安装插件的问题,所以该系统的实现为创建视频点播、会议系统、在线社区、远程培训提供了很好的参考意义,具有一定的应用价值。


参考文献:
[1]刘明辉,任用攀,黄兴.Flash与后台ASP/ASP.NET/PHP/JavaScript/Delphi总动员[M].2008.05第二版.北京:清华大学出版社.2007.06.
[2]戴光麟.基于FMS的远程互动教学系统的设计与实现[D]. 硕士,浙江工业大学,2007.
[3]张亚飞.至理:精通Flex网络开发技术――整合ActionScript/JavaScript/Ajax动态网站[M]. 北京:电子工业出版社。2009.02.
[4]杨浩宇.FMS初体验[Z].http://blog.csdn.net/yanghoyu/archive/2007/10/26/1844716.aspx. 2007.10
[5]张亚飞.Java for Flash动态网站开发手札[M].北京:电子工业出版社.2006.12.
 

 

查看相关论文专题
加入收藏  打印本文
上一篇论文:浅谈新形势下群众文化工作的开展
下一篇论文:基于内核分析的操作系统课程实验教学方法探索_杂志铺
毕业论文分类
行政管理毕业论文 工商管理毕业论文
护理毕业论文 会计毕业论文
会计专业毕业论文 英语专业毕业论文
大学毕业论文 硕士毕业论文
计算机毕业论文 市场营销毕业论文
物流管理毕业论文 法学毕业论文
相关硕士毕业论文
最新硕士毕业论文
读者推荐的硕士毕业论文