钟 成
(湛江日报社 广东 524049)
随着信息技术的飞速发展,网络传播以其特有的快速、高效、便捷的传输方式冲击着传统的学习、生活方式。视频直播(LIVE)作为流媒体技术的代表得到了非常迅速的发展。人们通过互联网获得的多媒体内容正变得越来越精彩,用户群体也迅速膨胀,因此,构建在线直播系统具有一定的实用性。所以在进行开发过程,需要对用户设备进行判断,进行输出不同格式内容。
构建在线直播系统需要考虑系统的稳定性、灵活的扩展性、支持大并发流量、安全性等诸多因素,面对网络现状,我们运用先进的网络直播系统,Flash Media Server开发。
使用传统的HTTP协议进行在线播放叫做“渐进下载”,所有的视频内容从头到尾必须从服务器传输到客户端,用户只能在传输完的视频长度中选择播放点,而不能自定义播放点及传输点,比如我们在看视频的时候是边下边看,没下载完则看不了,而且也不能绕到视频后面的片段。当视频观看完毕之后,在浏览器的缓存中会存在一个视频文件。
而使用 RTMP协议进行传输的数据包叫做“流”(如 Flash Media Server,以下FMS简称),它能够让视频内容分割成多个数据包并源源不断从服务器端传输到客户端,客户端可以在视频内容任意一个点开始请求传输,而不用关心该点之前的内容是否已经传输。这样我们看视频的时候可以在任意一个地方开始观看,点到哪里就从哪里开始下载,观看完毕之后在客户端不会有缓存文件。
两种协议各有各的优缺点,比如http协议在第二次观看视频的时候会直接使用缓存文件进行播放,速度也比较快,而RTMP协议必须保持源源不断送出“流”,同时本地也无缓存。
而HTTP Dynamic Streaming则是对两种协议的优点进行了一个组合,达到了两个协议取长补短的服务平台。其通过对来自RTMP端的“流”进行包装处理,转化成 HTTP“流”提供给客户端解析,用户再也不用下载整个文件,同时又能使用 HTTP协议进行快速观看视频。
HTTP Dynamic Stream ing的工作模式,一种是live模式,也就是所谓的直播,这里需要FMS的支持,FMS通过把直播流传递 给HTTP Dynam ic Stream ing,然后进行包装处理,传递给客户端,此模式可以应用在视频会议,视频聊天室,网络直播等应用中,HTTP Dynam ic Stream ing的主要作用也在这个模式中体现。
Flash Media Server的HTTP Dynam ic Streaming的工作模式,通常情况下是将流视频片段分割为 F4F 文件格式,最后以 Flash 的形式输出给用户。在最新的版本中,客户端使用的是不支持 Flash 的设备(比如 iOS 设备),那么就会使用 HLS格式提供 MPEG2 编码的流视频。HLS协议在服务器端将直播数据流存储为连续的、很短时长的媒体文件(MPEG-TS格式),而客户端则不断的下载并播放这些小文件,因为服务器端总是会将最新的直播数据生成新的小文件,这样客户端只要不停的按顺序播放从服务器获取到的文件,就实现了直播。
图1 服务器与客户端之间的数据流结构图
(1)启动Flash Media Server,apache。
(2)启动Flash Media live encoder
FMS URL填写rtmp://服务器地址/livepkgr,Stream填写
livestream?adbe-live-event=liveevent,
(3)Ios平台播放方式:用Safari浏览器通过直播地址播放直播流
直播地址是
http://服务器地址/hls-live/livepkgr/_definst_/liveevent/lives tream.m3u8
(4)Flash播放方式
下载安装OSMF Simple Player,将下载到的Player解压并放到:/
fms/webroot/OSFMPlayer 目录中
用浏览器打开上面安装的OSMFPlayer
http:///服务器地址8134/OSFMPlayer/OSMFPlayer.htm l
然后用OSMFPlayer播放以下地址即可看到直播图像:
http://服务器地址:8134/hds-live/livepkgr/_definst_/liveev ent/livestream.f4m
随着计算机技术的发展基于 W eb 的视频和音频应用所占的比重越来越大,在线用户使用的网络终端多样化,以前的媒体服务器已无法满足现代需求,使用fms直播技术,让用户可以在各类终端盒平台上实时收看到视频和音频服务。
[1]魏敏,魏媛媛.网络 系统中 流媒体 负载 均衡解 决方案[J].武汉理工大学学报:信息与管理工程版,2008(4):530- 536.
[2]彭小 娟.服 务 器集 群 系统 初 探[J].黑 龙 江 科技 信息,2008(27):82- 8 3.
[3]http://www.adobe.com/cn/devnet/flashmediaserver/articles/be ginning-fms45-pt03.htm l.
[4]http://help.adobe.com/en_US/flashmediaserver/devguide/WS d391de4d9c7bd609-52e437a812a3725dfa0-8000.htm l#WS565cbb 3ff5441e265f790c8a13121834848-8000.