·您当前的位置:首页 > 技术教程 > Rtmp技术 >

[FMS]AS3.0与FMS3.5的应用示例

时间:2012-09-18 14:07CuPlayer
此文是Flash Media Server3.5初学者系列教程的第三篇。主要讲述了如何通过使用ActionScript3.0实现对来自vod 文件夹以及应用程序的H.264视频的流式处理

此文是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(“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所示。
 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器