已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Flash Media Server3.5使用教程一、安装Flash Media Server3.5 对于我们很多人来说,AdobeFlash MediaServer十分神秘。我们能够看到它的好处,但同时当使用它创建Flash应用程序时所需掌握的特殊技巧往往又使人感到困惑。如果你是第一次接触这项技术,你将会发现相比以前的版本而言3.5版本的Flash Media Server拥有一个全新的工作空间。比起简单的编译一个SWF文件同时上传这个SWF文件以及一些FLV文件到服务器上,这个工作空间略显更复杂一点。这篇文章是初学者教程系列的第一篇。我计划不采用大量的技术语言来实现引领你学习如何使用Flash Media Server3.5.一旦你学习了这些教程你就有希望能够阅读Adobe Developer Connection上由我的同事撰写的其他文章,以及理解他们在谈论些什么。以下就是这一系列教程: 1:安装Flash Media Server3.5 2:采用Flash Media Server3.5对视频进行流式处理 3:Flash Media Server3.5中使用ActionScript3.0语言 4:Flash Media Server3.5的安全特性 5:Flash Media Server 3.5音频流式处理 6:使用Flash Media Server 3.5 构建实时视频流媒体服务器 7:Flash Media Server3.5动态流此文章始于过程的开端。你已经下载了Flash Media Server即将启动安装程序。在点击鼠标之前,先看一看你正深入了解什么。正如安装程序附带的文档清晰地解释那样,Flash Media Server (俗称FMS)是一个存放音频和视频媒体文件的网络中心。一旦需要访问它们,视频播放器(SWF文件)生成一个请求并通过实时消息协议发送请求,定位媒体文件,进而加载到你的播放器中。真正伟大的事情就是“播放就是播放”,音频和视频文件一旦抵达运行着Flash Player插件的浏览器就开始播放。不需要等待部分内容装载-最好的一点是-文件不会下载到浏览器的缓存中,因而文件十分的安全。实时消息协议是采用传输控制协议实现Flash Player和Flash媒体播放器之间数据包传递的私有协议。相对于其他传输机制此方法的真正优势在于实时消息协议是用来传输视频、音频文件到SWF文件,而此SWF文件可以内嵌到一个网页中、移动电话中、甚至是位于使用者本地的AIR应用程序文件中。关键是,插入到SWF文件中的媒体并非位于你的网络服务器中,它位于运行Flash媒体服务器的服务器某个文件夹中,而Flash媒体服务器可以是你的公司拥有,也可以是被网络服务提供商所管理,也可以是Flash流媒体服务器。为了实现本篇文章的目的,Flash媒体服务器采用你自己的电脑。你即将安装的开发版本与Flash媒体交互服务器并无太大差别。虽然它拥有商业版本的所有特征,但它只能作为测试服务器。就像你会在本地测试Falsh文件然后再上传到网络服务器上一样,你同样可以使用这个安装的FMS版本完成测试最终将被流处理的影视。在获得这些预备知识后,让我们开始安装服务器。如果你已经安装过Flash Media Server以前的版本,就会发现安装过程有一些改变。例如,在William Saunders的Flash Media Server2视频教程中概述的一些步骤已被调整了。在开始安装之前必须要做的事情还有就是卸载电脑上的旧版本Flash Media Server。1.双击FlashMediaServer3.5.exe 启动安装程序,将会看到图1所示的启动画面。服务器的三个版本都被列了出来。接下来出现的界面告诉你即将发生什么同时建议你关闭其他的所有应用程序。如果确实现在有其他的程序在运行,那么现在就可以保存文件然后退出其他应用程序。点击Next按钮开始安装过程,2.显示通常的法律术语。这一授权协议规定了软件的使用条款等等。随意阅读。假如您同意,请点击“我接受协议”的单选按钮,然后单击下一步继续安装过程。3.下一个界面要求您输入序列号(见图2)。当您需要安装开发版时并不需要输入序列号。如果留空点击NEXT,那就意味着您仅仅想安装一个本地版本而已。图2:安装Flash Media Server3.5不输入序列号 4.下一个界面确认您正在安装Flash Media Server3.5(见图3).提醒您一下,如果您已经购买了本产品,当您看到这个界面是最好点击后退按钮然后输入序列号。然而,对于这个教程来说这不是必需的,因此继续点击Next按钮图3:安装 Flash Media Development Server3.5 5.现在你必须决定程序的安装位置。在Windows操作系统下默认的安装位置是电脑的Program Files文件夹下的Adobe文件夹(见图4)。如果你想改变位置,点击浏览按钮然后进行定位。当选择好安装位置之后单击下一步按钮。图4:默认安装位置 6.在确认安装位置后,你就会发现此版本的Flash Media Server与旧版本之间的根本区别。现在是决定是否安装FMS附带的Apache2.2服务器的时候了。如果选中此选项,您将会两全其美:HTTP服务器具备以渐进式下载方式传输视频内容的能力,或者充分利用FMS的各种特性从而不必再在不同位置(从FMS服务器附近的服务器到世界另一端的任何互联网服务提供商)之间传播您的视频内容。图5:HTTP服务器(FMS3.5新特性) 7.现在你被提示决定程序快捷键的存放位置(见图6)。默认位置是开始菜单,但如果你不想开始菜单显得过于零乱,尽管点击浏览按钮选择一个替代的位置,点击下一步图6:快捷方式的存放位置 8.在这一点上,安装过程需要一定的程度的认真对待。管理服务界面出现并提示你输入一个用户名和密码(见图7)这些信息在使用管理员控制时会用到,关于管理员控制很快会被讲到。输入一些你记得住的内容是个不错的想法,因为每当启动服务器时都会用到这些信息。我使用我的名字如果我忘记了,我一定是有精神病-密码则是我出于其他目的经常使用的。因为这并不是像我的PayPal那样高危险,因为我做的另外一件事就是将用户名和密码发到自己的电子邮箱里。这样,如果碰到“非常时刻”我仍然可以很容易的找到记录的信息。图7:选择进入服务器的管理控制时所需的登陆信息 9.在确定安装程序的安装位置以及创建好访问管理控制所需的用户名和密码后,你接下来需要确定服务器所使用的端口(见图8)。除非有令人信服的理由去改变,否则采取默认的就可以了。虽然你可以使用多个端口,但是除非你非常自信自己正在做什么,否则最好还是简单的单击一下下一步按钮。图8:除非你真的知道自己在做什么,否则不要轻易改变端口 10.现在一切都已准备就绪,你可以在此浏览所有的设定信息以及做出改变(见图9)。这里没有Next按钮了,如果一切正确的话,点击安装按钮。安装过程相当迅速你会看到通常熟悉的文件释放及服务器初始化过程的界面。图9.最后一次调整的机会 11.一旦安装过程完成,会呈现与图10 相同的界面。你可以选择是否阅读Readme文件以及是否自启动Flash Media Server3.虽然你可以手动的打开关闭服务器,我比较喜欢在需要时打开,因此选择第三个选项。在日常工作时FMS后台运行并不会使电脑慢多少,尽管单击完成按钮吧。图10 。成功!现在开始工作吧 查看管理控制界面管理控制界面帮助你管理服务器。因为包含很多东西,因此我不想太深入。举例来说,假如你刚刚买了一辆新车,你的邻居们前来拜访检查你的新东西。你怎么做?打开引擎盖开始指出所有的物件,让我们向你的邻居展示一下你拥有什么。首先震惊许多Flash Media Server新手的是它并不是一个应用程序。即使你已经把软件安装到与Flash cs3和其他Adobe产片相同的目录下,它并没有产品图标。管理控制界面是一个HTML文档。非常有意义,因为你正在处理的是一个服务器而不是一个单击版的应用程序。为了打开管理控制,或者定位开始菜单中,或者点击开始菜单中所有程序按钮定位AdobeFlash Media Server3.5Flash Media Administration Console(见图11)。图11.定位开始菜单中的管理控制 除此之外还可以定位到 C:Program FilesAdobeFlash Media Server 3tools文件夹双击Flash Media Administration Console链接(见图12)。确定双击的是HTML文件(fms_adminConsole.htm)而非fms_adminConsole.swf,来启动管理控制。图12.在资源管理器中定位管理控制 当打开管理控制之后,提示输入用户名和密码,出现登陆界面(见图13)。你会注意到服务器被分配了一个名字和地址(localhost),你的用户名和密码已经被填写好。同样可以设定控制台记住密码自动登陆。这些都是个人喜好,但很多情况下需要遵从团队方针。如果你不确定,就要与负责人协商。如果一切正确,单击登陆按钮。图13.管理控制启动页面 接下来看到的就是通常的管理控制界面(见图14)。有几个需要注意的地方。在任务条右侧是一个绿灯。通过视觉指示服务器运行状态良好。帮助按钮(问号)帮助你寻求帮助文件。点击问号标志附近的文件夹并不能向你所想的那样加载文件。相反,这个按钮直接指向一些FMS资源,覆盖范围从本文到FMS论坛。你通过论坛可以想其他的FMS开发社区人员请教问题。图14.管理控制 在控制台顶部,你可以选择服务器刷新页面的频率。幅度从1秒到1分钟;甚至可以暂停服务器的刷新率。然而你不能办到的是输入数值。如果你想强制刷新或者你不耐烦了,点击右上角的刷新链接即可。点击注销链接将会彻底关闭服务器。注意有三个按钮横跨控制台的顶部。当前选中的View Application直观的展示了当前与FMS相连的应用程序。这些程序通常被成为“实例”(在后面我会加深讲解这点)但如果你单击左下方的新建实例按钮,将会出现一个程序/实例列表,只要单击选中就可以把它加载进来。目前暂且不管它。反而单击管理用户按钮。单击管理用户按钮将会出现与图15相同的界面。它允许你添加删除用户以及改变你的密码或者是他们的密码。为什么你想在这个本地程序中添加用户呢?也许你想和工作组的其他人共享这台电脑,也许此程序运行在一个服务器上。必须谨记开发版仅允许同时10个连结,因此这的确是个测试服务器。图15。管理用户 想修改密码只需点击用户名然后单击密码重置按钮进而打开重设密码对话框(图15)。输入两次新密码后点击重设密码按钮使修改生效。如果你改变注意,单击取消按钮以关闭对话框。图16.更改用户密码 单击管理服务器按钮以打开管理服务器面板(见图17)。此区域将呈现后台正在运行着什么,Detail区域直观的展示了任何可能正在运行的程序的性能以及带宽和CPU使用量。Connections按钮则告诉你连接着多少个服务器,同时提供各种服务器的少量性能和状态信息。Applications告诉你多少个应用程序正在运行以及它们的工作表现。由于使用的是开发版,因此License面板是不相关的。即时如此,还是在面板的下方有一个升级到交互服务器版本的链接。最后的区域,Server Log提供服务器运行的日志信息。任何时候通过单击Clearlog按钮就可清除日志。图17,管理服务器面板 在此面板中你可能还想做一件事:确保服务器就是“localhost”。以下就是教你如何做。在管理服务器面板顶部中间的“AB”按钮是用来编辑服务器日志信息的按钮。如果想改变你的用户名和密码,就在这个地方更改。之所以输入localhost是因为这是用来测试程序的RTMP地址。任意更改然后单击保存按钮。图18.确认服务器是localhost 这一阶段告一段落,早因此退出浏览器关闭管理控制台。使用THE FLASH MEDIA SERVER 3.5 START SCREENFlash Media Server新手将会发现这个新特性是一个不可或缺的资源,而老手们则会以热烈的掌声欢迎它。现在正是时候。Adobe是第一个承认由于产品的十分复杂而导致学习FMS是一个令人畏惧的任务。同样,学习使用产品和获得支持通常开始于一个简单的问题“信息在哪?”START SCREEN出色的回答了这一问题:1.单击开始所有程序AdobeFlash Media Server3.5Flash Media Server Start Screen(见图19)。图19.启动start screen 2.假设你已经安装了Flash Player10,你将会看到图20所呈现的界面。它被划分成4个区域。顶部是一系列用途自明的链接和一个文本输入框用来根据搜索条件完成搜索功能。正下方的区域允许你启动管理控制台从而避免了返回到开始菜单中去,同时还有一访问更新的按钮。图20.FMS start screen,产品中的一个受欢迎的附加物 3.下一个区域包含一个视频播放器。注意Adobe支持复制和粘贴将此播放器嵌入到网页的代码。在页面上你也会发现一个动态流播放范例。两个按钮允许轻松访问学习Flash Media Server以及提供一个交互的例子。4.向下滚动页面以露出start screen的真正精华(见图21)。关注Adobe(以及以前的Macromedia)的行动已经超过十年了,经常使我感到惊讶的是如此一个大公司却十分的贴近客户是如何做到的。start screen的喜爱那个系区域是客户参与的典型代表。如果有任何一个共同的抱怨Flash Media Server,它就会成为知识的基础,尤其是在Adobe内部,如此蔓延以致几乎不在能被访问。这三列最终平息了人们的抱怨。图21.一键访问世界的知识和工具 工具列包含各种工具的链接,从FLVCheck工具到帮助工作更加有效的装载模拟器工具。中间的案例程序和白皮书列旨在通过提供一键访问各种例子和出版物实现技能的提高。第三列被划分成两个区域,顶端的Getting Started部分提供来自Adobe Developer Connection的各种文章和案例的访问链接,Adobe Developer Connection帮助你立刻跟上FMS潮流。第二部分Getting Support被认为是Flash Media Server的一个本地索引。在这里你可以即时访问任何事物,从找寻Adobe产品本土专家到培训以及围绕着各种需求展开咨询。你在这里找到答案:安装了Flash Media Server3.5,打开引擎盖向你的邻居们展示了这个新玩意能做什么。同时,你发现了一个strart screen提供的非常有用的资源。接下来的教程将会帮助你做到司机的位置上,点燃引擎,以及围绕着石头转圈。下一个教程告诉你通过使用Flash Media Server3.5的新视频点播服务完成Flash Video Player中视频的流式处理。 图1:Flash Media Server启动画面二、采用Flash Media Server3.5对视频进行流式处理 此文是Adobe Flash Media Server3.5初学者系列教程的第二篇.主要讲述了通过使用Flash Media Server3.5所提供的视频点播服务完成在Flash视频播放器(SWF)中播放视频流。 关于视频点播的所有信息 为了理解视频点播,首先需要花一分钟倒回去去理解关于使用Flash Media Server3.5的基础内容。早期版本的Flash Media Server实在不能被称赞易学。事实上委婉的讲,当第一次学习FLash Media Server2时,很多人都发现学习曲线十分的陡峭。甚至连安装服务器、启动Flash 工具、生成FLV文件、进入流游戏都不是简单的事情。没有办法,同时又不知道该怎样。 以下就是Flash Media Server3.5的迷人之处:你现在要做的事情。 为了理解我正在做什么,你必须清楚的认识到Flash Media Server3.5采用的是客户端-服务器架构,Adobe Flash扮演着客户端的角色,同时FMS扮演了服务器端的角色。为了正确的工作,你必须略微重新思考你的工作流程。视频文件不再是存放在你的web服务器中某个文件夹中,取而代之的是将其放在FMS服务器上,仍然使用熟悉的渐进式下载模式。 FMS服务器上文件夹通常被认作“程序”;而存放媒体文件的文件夹呗成为“实例”。看起来有点像这个:rtmp:/server/Application/Instance.(RTMP路径随后将被使用)。 这个概念阻拦了一大批决定进入FLash Media Server流游戏的人,一开始我甚至也被它困住了。 为了继续前行,你同时必须具备服务器端ActionScript脚本语言的基础知识。ActionScript的长度取决于项目的复杂度,有时只有一行代码有时却需要上百行。 FMS的最新版本标志了标准操作的一项重大突破。如果你想编写成千上百行的代码,你将会非常喜欢Flash Media Interative Server3.5,但如果你和我一样仅仅是想让视频播放,那么Flash Media Streaming Server3.5就很适合你,它所提供的视频点播服务可以说是为你量身定做的。 现在就让我们开始吧 1.下载此文中所用到的文件。其中的FlV文件是一个搞影视创作的学生在的大学创作的。地址为/pub/developer/beginner_vod.zip。 2.定位到C:Program FilesAdobeFlash Media Server 3.5applications.在这个文件夹内会发现一个名字叫做vod的文件夹。打开它 3.从下载的文件中复制Legend.flv文件到子文件夹中。 4.关闭打开的窗口。图画1:例子视频文件放到media文件夹中 Flash Media Server3.5所具备视频点播能力,揭示了vod文件夹的用处。视频点播服务允许你在不写任何代码和配置服务器的情况下,通过服务器实现对音频和视频的流式处理。你需要做的仅仅是将Flash的FLVPlayback组件或Flash视频对象指向此文件夹中的文件。所有的MP4、FLv、Mp3文件都可以顺利播放。 创建一个视频点播流程序 现在视频已经放置到正确的位置了,接下来让我们通过在流服务器上通过使用视频点播服务实现本地视频播放: 1.在Flash cs4 专业版创作环境中,选择文件新建Flash文件(ActionScript3.0)创建一个新的文件。打开文件后,从组件面板拖动一个FLVPlayback组件副本到舞台上。 2.保存此Flash文件到任意的文件夹。 3.单击舞台上的组件,点击属性面板(Flash cs3)或打开组件检查器(Flash Cs4)进行如下设置: align: center autoPlay: true cuePoints: None isLive: False preview: None scaleMode: maintainAspectRatio skin: SkinUnderAllNoFullNoCaption.swf skinAuthoHide: false skinBackgroundAlpha: 1.00 skinBackgroundColor: #009933 4.双击源文件 参数,在打开的内容路径对话框中输入rtmp:/localhost/vod/Legend(如图2所示) 图2:采用RTMP地址的视频文件路径这个地址就是FLV文件的路径,同时遵循我刚才提到的rtmp:/server/Application/Instance语法格式。在这个例子中,localhost匹配server,vod对应application,media文件夹总的legend.flv就是instance. 注意:关于如何设置FMS为localhost在初学者指南之安装Flash Media Server3.5章节中已讨论过。 5.保存并测试影片。如果一切正常的话,视频就会开始播放(见图3)。图3:欢迎来到Flash Media Server3.5! 流式处理多种文件格式: Flash Media Server3.5并不仅限于Flv格式的文件,脱离了vod文件夹还可以处理MPEG-4和MPEG-3格式的文件。如果打算使用这两种格式,内容路径将会不同,因为vod文件夹并不不支持这两种格式。 假设现在你有一个MPEG-4和MPEG-3格式的Legend文件,同时文件分别被命名为Legend.mp4和Legend.mp3,并且已经将他们放置到vod文件夹中。 为了访问MPEG-3文件,使用一下文件路径: rtmp:/localhost/vod/mp3:Legend 注意/vod后发生了改变,一样,你并不需要在文件名后追加mp3扩展名。 当流处理MPEG-4文件时有点不同。正如图4 所示,文件路径应当如此: rtmp:/localhost/vod/mp4:Legend.mp4 注意这次必须包含文件扩展名(.mp4).对于其他采用H.264标准的文件格式例如MOV文件同样适用。图4:设置MPEG-4文件的路径 如下总结了不同的语法格式: FLV: rtmp:/domain/app/streamname (不加.flv后缀) MPEG-3: rtmp:/domain/app/mp3:streamname (不加.mp3后缀) MPEG-4: rtmp:/domain/app/mp4:streamname.mp4 (任何兼容MPEG-4的文件都采用此后缀: .mov, .avi, .mp4, 等.) 当然,一切都很好,但问题是如何在实时FMS3.5 服务器上播放视频呢? 只要对代码做略微改动就是答案。用Flash Media Server托管服务提供商提供的RTMP地址和您的业务替换掉localhost。很自然你需要将视频上传到你在托管服务提供商的服务器里的账户中,除了地址改变和上传之外,你不需要做任何其他更多的事情。 注意:谨记不存在两个被同等创建的Flash Media Server托管服务提供商,正如在顾客指南之使用Flash Media Server托管服务提供商中人们所指出的那样。你的RTMP地址和工作流程可能稍许不同,因此最好在刚开始就检查一下你的托管服务提供商。 FMS的一个不需要动画、不需要编码的方法 这是Flash Media Server3.5的一项全新的技术,应当受到任何开发者的关注,只要他不是生活在纯HTML和CSS的世界里。如果你经常告诫自己没有事件去学习动画,那么现在就是你的时间了。你所需要的仅仅是Adobe Dreamweaver(CS3或CS4)。如果你是纯文本编辑器如记事本才是标准的代码编写工具,那么随你便。 当安装好Flash Media Server3.5后,运行Apache2.2的HTTP服务器也被安装了。如果打开webroot文件夹(C:Program FilesAdobeFlash Media Server 3.5webroot)你就会发现这也是一个vod文件夹。让我们使用这个文件夹实现在开始页面的视频播放器中播放一个视频: 1.启动开始页面(见图5)。打开后,将会看到视频播放器以及一个文本框。单击文本框并且同时按下contrl和A键选择文本框中所有的HTML代码。将选择的文本复制到剪贴板中。 图5:将会用到的视频播放器(左侧)和如何使用的代码(右侧) 另一种方法:定位到Flash Media Server3.5文件夹中的sampels文件夹,打开videoPlayer文件夹然后双击文件夹中的videoPlayer.html。然后复制页面底部的代码,关于这一点在下一章节将会进行深入讲解。 2.启动Dreamweaver CS3或CS4。创建一个新的页面并保存到FMS3.5的webroot文件夹中(C:Program FilesAdobeFlash Media Server 3.5webroot) 3.点击页面,然后选择插入媒体SWF(Dreamweaver CS4)或插入媒体Flash(Dreamweaver CS3)。 4.定位到swfs文件夹(C:Program FilesAdobeFlash Media Server 3.5webrootswfs),将videoPlayer.swf文件插入到Dreamweaver网页中。 5.打开代码视图面板,选择标签之间的所有文本,包括这两个标签。 6.粘贴代码,单击属性检查器上的刷新按钮。 7.返回设计视图,在浏览器中测试页面,或者按F12快捷键或者选择文件在浏览器中预览.现在你就正在通过Flash Media Server3.5对视频进行流式处理,而唯一的技巧即时你需要知道如何在一个Dreamweaver页面上放置SWF文件。(见图6)图6:使用Flash Media Player3.5中的videoPlayerSWF 接下来将会学习如何使用ActionScript3.0流式处理vod文件夹里的H.264视频,以及来自应用程序的相同视频。三、Flash Media Server3.5中应用ActionScript3.0 此文是Flash Media Server3.5初学者系列教程的第三篇。主要讲述了如何通过使用ActionScript3.0实现对来自vod 文件夹以及应用程序的H.264视频的流式处理。 vod文件夹内的视频进行流处理 首先,我将向你演示如何使用ActionScript流处理来自vod文件夹的H.264视频 1.下载本文所用文件。那个MP4文件是我工作的大学的一位影视创作的学生制作的.下载地址:/pub/developer/beginner_as3_fms3.zip。 2.解压文件后,复制Vultures.mp4文件到剪贴板 3.定位到C:Program FilesAdobeFlash Media Server 3.5applications.下面会有一个vod文件夹,打开它 4.打开文件夹,粘贴vultures.mp4文件到此文件夹。 5.关闭打开窗口。 并没有什么新的知识点。如果你一直紧紧跟随着此教程的学习,你就会明白vod文件是被看作一个发布点。到目前为止,我们所要做的仅仅是将FLVPlayback组件的内容路径设置为C:Program FilesAdobeFlash Media Server 3.5applications.以及播放视频。 在此文中,我们将不再使用FLVPlayback组件,转而采用舞台上的视频组件接收vod文件夹中的视频。具体步骤如下: 1. 打开已下载的范例文件夹内的H264_StreamVOD.fla文件。如果你习惯使用Flash CS4,你将会在FlashCS4文件夹下找到此FLA文件。 2. 打开文件之后,你就会发现我已经为你创建好了界面。 3. 视频播放器中有一个名为myVideo的视频对象。你所需要做的仅仅是用ActionScript3.0将这个项目贯穿起来。选择actions图层的第一帧,按下F9打开动作面板。 注意:视频对象的尺寸和宽高比应和要播放的FLV或MP4文件匹配。舞台上视频对象的默认大小是160*120.这种4:3的宽高比对同样比的FLV文件才适用。如果将高清内容应用通常的16:9的宽高比,那么将会造成错误的调整视频大小以致出现扭曲的现象。 4. 点击脚本面板,输入以下内容:var nc:NetConnection = new NetConnection();nc.connect(rtmp:/localhost/vod); var ns:NetStream = new NetStream(nc);第一行的代码创建了NetConnection对象,第二行告诉Flash这个NetConnection对象指向的是FLash Media Server3.5中的vod文件夹。如果你一直采用视频对象实现文件的渐进式下载的话,你就会发现connec字符是FMS3.5服务器上的vod文件夹路径而不是 一个空字符。在这个例子中,你是采用的是FMS3.5开发版在本地工作。如果你 有一个商业账号,localhost就会被一个实际的RTMP地址(一些列数字)所代替,它可能是也可能不是一个指向vod文件夹的路径,一切之取决于你的互联网服务提供商的独特要求。 在连接建立和NetStream已确定之后,是时候该做些家务管理了,从而可以确保成功的连接到服务器上以及在流之前增加被缓冲的视频量。步骤如下: 1. 按Enter键两次,输入以下代码: nc.onStatus = function(ncObj:Object) trace(ncObj.code); if (ncObj.code = NetConnection.Connect.Success) ns.setBufferTime(2);此代码通过检测是否成功的连接到FMS3.5的状态事件来启动。主要通过捕获当SWF连接到FMS3.5是发送到Adobe Flash Player的(NetConnection.Connect.Success)字符来完成。当成功连接好以后,trace语句将会打开输出面板并显示图1所示的代码。图1.输出面板中的连接代码 如果成功连接好了,NetStream类的setBufferTime()方法会把两秒的视频内容进入缓冲区。默认的缓冲值是0.1秒;设置一个多大的缓冲值由你决定。 2. 按Enter键换行,输入剩下的代码:myVideo.attachVideo(ns); ns.play(mp4:Vultures); ;第一行将舞台上的myVideo视频对象和NetStream连接起来。第二行使用NetStream的play()方法播放视频。注意到字符中必需包含媒体类型mp4和冒号这一点是十分重要的。同样,因为你使用的是FMS3.5,因此添加视频内容的扩展名则不是必需的。注意:如果使用的是FLV文件,play字符串将会是Vultures.对于FLV文件并不需要加入媒体类型。3. 保存并测试影片。由于2秒钟的内容会加入到到缓冲区所以会有一些轻微的延迟。当缓冲完毕之后,你就会访问土耳其秃鹰幼子的巢穴,如图2所示。图2.可爱的小动物,不是吗?创建一个流视频应用程序截止目前为止,在这些教程中,你一直是操纵着一个自动驾驶仪,让FMS3.5自动的帮你完成将vod文件夹内视频流装载到FLVPlayback组件中或者是舞台上的视频对象中。有时候vod文件夹会变成碍脚石。vod文件夹也是Flash Media Interactive Server版的一大特征。如果你正使用Flash Media Interactive Server,你需要知道如何创建一个能够播放来自服务器的视频的应用程序。事实上,并不是多么神秘的用法,但如果你是FMS3.5的初学者就可以能有一点点难以理解。首先,你的发布点不再是vod文件夹,而是你的应用程序文件夹。这个文件夹位于FMS3.5的applications之下,名字任意。另一个重大区别是实例的使用。这和ActioinScript没有任何关系。一个实例就是一个你必须创建的具体的_definst_文件夹,用来存放视频和音频文件。另外,在应用程序文件夹内通常会有一个.as文件包含一些相关的比较简单的服务器端代码。让我们来看一看我在说什么:1.在已下载的文件夹内有一个名叫Exercise的文件夹。打开它,在它里面有一个BabyVultures文件夹。这就是你就会 用到的应用程序。2.打开此文件夹你会看到一个streams文件夹和一个main.asc文件(见图3)。这个文件必须叫main.asc;它包含了使系统工作的服务端代码。注意:我必须要谢谢我的同事 Lisa Larson-Kelley因为这个main.asc是他的。图3.一个FMS应用程序的基本文件结构可以通过两种方式来创建.asc文件,一种是选择Flash启动画面面板中的ActionScript通信文件,另一种是通过选择文件新建在新建文件对话框中选择ActionScript通信文件。图4.Flash cs4启动界面中创建ActionScript通信文件3.打开main.asc文件就会发现服务器端的代码是多么的简单:application.onConnect = function(p_client) this.acceptConnection(p_client); 所有的代码的意思就是在影片开始播放的时候,FMS3.5服务器准备接受连接请求。这是一个十分简单的main.asc文件例子。当开始深入共享对象领域以及使用自定义组件时,代码就会变得非常复杂、包含上千行代码。4.关闭打开的Flash文档,打开streams文件夹。自爱这个文件夹下是_definst_文件夹。此文件用来存放媒体文件。如果你打开_definst_文件夹就会发现一个Vultures.mp4文件副本。现在既然 已经知道了这些事物的结构,是该付诸实践流处理视频的时候了:1.打开applications文件夹,C:Program FilesAdobeFlash Media Server3.5applications,从Exercise文件夹下复制BabyVultures文件夹到applications文件夹下。这样就创建了一个名叫BabyVultures的程序,它的路径就是 C:Program FilesAdobeFlash Media Server 3.5applicationsBabyVultures. 现在需要做的就是让程序运行起来。2.双击Exercise文件夹下的H264_StreamApp.fla文件,在Flash CS4中打开它。3.点击actions图层第一帧,打开动作面板。4.动作面板打开以后,单击脚本窗格输入如下代码:var nc:NetConnection = new NetConnection();nc.connect(rtmp:/localhost/BabyVultures); var ns:NetStream = new NetStream(nc);与之前例子的重大区别是第二行的NetConnection字符。发布点已不再是以前所有例子中的vod文件夹,转而变成了BabyVultures程序,注意:如果你希望此文件增强安全性或添加数字版权管理,把rtmp替换成rtmpe就会自动加密流信息。5.按Enter键两次输入剩下的代码:nc.onStatus = function(ncObj:Object) trace(ncObj.code); if (ncObj.code = NetConnection.Connect.Success) ns.setBufferTime(2); myVideo.attachVideo(ns); ns.play(mp4:Vultures); ;如果就此测试影片的话,视频会播放。Flash Media Server最伟大的一点就是它的智能性。当连接被建立好,它就会自动寻找一个streams文件夹。当找到后就会想“哈哈,nc.play()方法中的视频原来在_definst_文件夹里!”它就会立刻进入那个文件夹,找到视频后把它扔进流中。图5.代码以及运行程序。接下来做什么现在你已经知道了如何通过在FMS服务器上创建的程序来播放视频,你可能想拓展自己你的知识。最好的地方就是查看这些文章(目前仍然是关于FMS3的):采用Flash Media Server的缩放和安全流媒体程序 (Lisa Larson-Kelly)Flash Player和Flash Media Server的新的缓冲策略 (Fabio Sonnati)接下来的教程会向你展示如何在Flash Media Server3.5中加密你的网页视频流以及建立SWF证书。四、Flash Media Server3.5安全特性 此文是结构松散的初学者教程系列第四篇。主要阐述了如何更好的应用Flash Media Server3.5的新安全特性。首先我将告诉你如何加密视频,使用户无法拦截网络上的流信息。然后我将解释如何添加SWF证书,从而使得用户无法反编译以及重新使用你的SWF文件。他们不把它叫做“野生,野生的网页”的原因是它的情况并不少见。例如,当你发布影片到你的网站上,几分钟之后它就会出现在别的地方。事实上,如果有正当理由困扰着网络视频的使用的话,那就是不安全性。让我说清楚本文的目的。在这里我将采用的方法并不是像保护一个州的首脑一样将视频包裹在一个安全的警戒区。相反,我将会使它可以被自由的使用,但想偷就不是那么容易了。我将用类比的方法来阐述内容。最近我需要为我的笔记本电脑配置一个鼠标。在如此简单的购物中使我感到震惊的是鼠标的包装:它被包装在一个坚硬的塑料壳里面,想要打开它必须要用到链锯。这样包装的目的就是防止偷窃。想要打开它需要非常长的时间而且机会是很好的。如果你试图打开包偷走鼠标的话,会有一名监视你的保安人员走过来询问你究竟要做什么。采用渐进方式下载视频,也就是使用HTTP连接将FLV文件下载到Adobe Flash Player中等同于将鼠标用USB线悬挂在架子上。绝对是不安全的,而且比较容易被偷。原因是FLV文件被下载到了浏览器的缓存中。将此FLV文件从缓存中复制到桌面是不费吹灰之力的。如果仅仅是通过手机向祖父传递儿子的视频或相片的时候,安全不那么重要。换句话说,如果你花钱购买了内容或者是投资了内容的生产,那么保护你的投资对你来说就变得意义重大了。这也就是Flash Media Server产生的原因。当通过FMS流传输视频的时候,没有任何东西进入浏览器的缓存。Flash Player担当起了将比特流转换成网页中放器中FLVPlayback组件能播放的视频。通过FMS流传输视频为视频的安全做出了重大升级。就像是零售商将鼠标锁在了橱窗里,或将鼠标转移到上锁的陈列盒里。注意:阅读Flash VIdeo Learning Guide的“Delivery options for Flash Video章节获取更多的网络传输视频方法,同时观看视频技术中心的“Delivering video on the web”视频了解渐进式下载FLV文件和流传输之间的区别。Flash Media Server3.5内置了两种特性帮助你将鼠标放回到架子上而且不会被偷走:加密和SWF证书。此文告诉你如果应用这些特性到一个流视频中。加密或静区你不是很讨厌当你在和别人谈话的时候,别人趴在墙上偷听吗?在互联网上这是非常普遍的,很多第三方开发的程序已经被用来监听服务器和客户端的信息。当它们捕获到一个感兴趣的数据流后直接就会抓住它,而不先进行询问。FLash Media Server内置了加密特性,最令人喜欢的一点就是:为了使用它你并不需要获得量子物理学的博士学位,而仅仅需要的是多按下键盘上的一个键。具体步骤如下:1.下载将会用到的文件/pub/developer/beginner_security_fms3.zip。解压后,拖动Vulures.flv和Vultures.mp4两个文件到vod文件夹下的media文件夹里。路径是C:Program FilesAdobeFlash Media Server 3.5applicationsvodmedia.2.打开一个新的Flash Cs4 文件。拖动一个FLVPlayback副本到舞台上。3.在组建检查器的参数选项卡中,双击source参数打开内容路径对话框(见图1)。4.输入如下路径:rtmpe:/localhost/vod/Vultures5.点击Ok,当Flash将元数据加载到FLV文件中后对话框会关闭。6.保存并测试影片。图1:通过在rtmp路径中添加字母e实现Flv文件加密播放视频的FLV文件是一个加密的文件。通过添加字母e到路径上,你就告诉了FMS3.5对vod文件夹中的FLV文件添加实时的加密。在服务器到客户端Flash播放器的传输过程中文件都是加密了的,而Flash Player并不需要任何钥匙就可以实现文件的解密。只有当你打开FMS3.5 管理控制台后才会被提示流是经过加密处理的。如果你单击View Applications然后单击Client选项卡,你就会看到在协议栏里流出服务器的视频流所采用的协议是RTMPE。(见图2)图2.管理控制台指示协议栏的加密FLV流。SWF文件的防盗校对如果你接触网络有一段时间了,你就会明白捕获一个SWF文件是多么容易的一件事。事实上,关于这个操作的一个非常普遍的讨论时“嘿,我已经得到了 一个SWF文件,问题是我该如何反编译它从而获得源文件呢?”我不想深入讨
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2020-2025年公用设备工程师之专业知识(暖通空调专业)真题练习试卷A卷附答案
- 2025年国家电网招聘之财务会计类模拟题库及答案下载
- 2025年试验检测师之交通工程基础试题库和答案要点
- 麻醉药品分类与管理
- 《给青年的十二封信》阅读测试题(含答案)
- 收藏品海外代购与拍卖创新创业项目商业计划书
- 建筑搪瓷服务流程标准化创新创业项目商业计划书
- 外科器械操作培训创新创业项目商业计划书
- 座舱氛围灯音乐同步创新创业项目商业计划书
- 医院导诊机器人服务创新创业项目商业计划书
- 《老年人能力评估室建设规范》
- 中级消防设施操作员考试题含答案
- 全国网络安全行业职业技能大赛(网络安全管理员)考试题及答案
- 医院物业服务投标方案(技术方案)
- 道德与法治二年级上册全册教案
- 新改版大象版科学六年级上册全册知识点
- 大学生当兵职业规划生涯目标
- 代祥松2024VBEF演讲:哥伦布:频域光学相干断层扫描生物测量仪(眼科行业创新论坛)
- 达罗他胺片-临床用药解读
- 质量文化的培训课件
- 儿童口腔科出科技能考试评分表
评论
0/150
提交评论