Flash+Media+Server3[1].5使用教程

发布时间 : 星期日 文章Flash+Media+Server3[1].5使用教程更新完毕开始阅读

图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文件是我工作的大学的一位影视创作的学生制作的.下载地址:http://download.macromedia.com/pub/developer/beginner_as3_fms3.zip。 2.解压文件后,复制Vultures.mp4文件到剪贴板

3.定位到C:\\Program Files\\Adobe\\Flash Media Server 3.5\\applications.下面会有一个vod文件夹,打开它

4.打开文件夹,粘贴vultures.mp4文件到此文件夹。 5.关闭打开窗口。

并没有什么新的知识点。如果你一直紧紧跟随着此教程的学习,你就会明白vod文件是被看作一个发布点。到目前为止,我们所要做的仅仅是将FLVPlayback组件的内容路径设置为C:\\Program Files\\Adobe\\Flash Media Server 3.5\\applications.以及播放视频。

在此文中,我们将不再使用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(\

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 == \ ns.setBufferTime(2);

此代码通过检测是否成功的连接到FMS3.5的状态事件来启动。主要通过捕获当SWF连接到FMS3.5是发送到

Adobe Flash Player的(\字符来完成。当成功连接好以后,trace语句

将会打开输出面板并显示图1所示的代码。

图1.输出面板中的连接代码 如果成功连接好了,NetStream类的setBufferTime()方法会把两秒的视频内容进入缓冲区。默认的缓冲值是0.1秒;设置一个多大的缓冲值由你决定。 2. 按Enter键换行,输入剩下的代码:

myVideo.attachVideo(ns);

ns.play(\ } };

第一行将舞台上的myVideo视频对象和NetStream连接起来。第二行使用NetStream的play()方法播放视频。

注意到字符中必需包含媒体类型mp4和冒号这一点是十分重要的。同样,因为你使用的是FMS3.5,因此

添加视频内容的扩展名则不是必需的。

注意:如果使用的是FLV文件,play字符串将会是\对于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是他的。

联系合同范文客服:xxxxx#qq.com(#替换为@)