开篇:润墨网以专业的文秘视角,为您筛选了一篇低成本Flash Media Server视频直播架构方案范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
【摘要】 本文描述了网络视频发展的当前背景,阐述了Flash Media Server技术在网络视频中的应用,对传统网络视频直播架构进行了分析,并提出了低成本网络视频直播架构方案。
【关键词】 flash media server;低成本架构;视频直播
【中图分类号】 TP311
【文献标识码】 A
0 引言
随着视频网站自身内容的日益丰富、网络带宽环境的持续建设,中国网络视频市场规模不断壮大。根据第30次《中国互联网络发展状况统计报告》显示,截至2012年6月底,中国网络视频的用户数量增至3.49亿,半年增长率达到7.6%,在网民中的使用率由上年底的63.4%提升至65.1%。
网络视频的主要应用有视频点播、视频直播、视频会议等。
在内容上,视频直播包括现场演唱会的直播、新闻会的直播、奥运会的直播、电视剧的直播等。在技术上,视频直播不用像视频点播那样需要进行分段、转码、等步骤,它可以做到节目播放与电视台同步。在播放形式上,用户只要具有一个可以上网的终端,不管是电脑、手机,也不管是在单位、家里还是路上,都可以及时地欣赏到自己喜欢的节目。
由此可见,视频直播以其具有的丰富性、时效性和自由性等特点吸引着大批网络用户,它具有着传统媒体和视频点播所没有的优秀品质。因此,业内网站纷纷加大视频在清晰度、网络延时、流畅度等方面的研究,并投入资源大力发展。但是目前网络视频仍旧面临着较大考验。目前主流的视频直播商业软件价格昂贵,网络视频版权价格不断提高,使得网络视频运营行业的成本大幅攀升。而视频广告价格相对较低,其他模式无法在短时间内盈利,因此,如何降低网络视频的运营成本成为视频网络发展的重中之重。
1 视频直播流媒体技术
早期,视频网站大多采用微软的Media Server 产品进行直播,并通过在页面里嵌入Media Player 进行播放。编码格式则多采用wmv文件。但是在实际应用中,人们发现采用该技术处理的流媒体视频画面模糊,视频延时大,用户体验不令人满意。
随着FMS 软件的技术的成熟,视频网站开始向FMS 流媒体技术转移。
FMS 的全称是Flash Media Server,它是Adobe公司的重量级产品。随着人们对在线视频的需求激增,Adobe公司的 Flash Media Server 系列产品已成为流视频和实时通信领域业界领先的解决方案。尤其当FMS Server 版本升级到3.5后,其性能和稳定性得到大幅提升。采用FMS流媒体技术的视频直播画质较之以前更清晰,画面更流畅,从而得到了大多数用户的认可和好评。
(1)采集:视频直播的数据源一般来自卫星、有线电视、网络和摄像头等。通过采集系统将视频采集下来,然后通TS OVER IP方式推送所采集的信息到转码系统。
(2)转码:转码系统将接受的信号转码为FLV格式,然后通过RTMP协议推流到FMS。
转码系统目前常用的有两种方式。
a.软件方式:如FMLE,Ffmpeg
b.硬件方式: 如采用由视频转码公司设计的硬件转码。
FMLE 为Adobe 公司提供的一个免费的实时视频和音频捕捉软件。它是一个媒体编码器,它可以将音频和视频实时流式传送到 Adobe Flash Media Server 软件中。此软件的安装非常简单,只需要一个笔记本电脑和一个USB 摄像头,通过此软件就可以进行非常清晰的直播,非常适合音乐会、会等实时活动。
Ffmpeg 是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec。由于其提供了非常清晰的画质,但是由于其安装在Linux 服务器上,不方便移动,所以适合直播固定的节目,例如有线电视的直播。
(1)FMS server: Flash Media Server(简称FMS)服务器。
FMS服务器是用于用户之间相互通讯的新平台,它集成了Flash多媒体交互的特性,又添加了实时音频、实时视频和实时数据流等新特色。FMS收到推的流,当有用户来请求这个流时,就将这个流提供给它。
3 低成本视频直播架构
FMSS不能作为大型直播的原因是因为它不能将一个直播流分发到多个FMS 服务器上。即只能一台FMS 服务器服务直播,这样服务的用户就是有限的,例如只能服务1000-2000用户。
如果我们有办法解决这个瓶颈,就可以通过FMSS 来实现大型直播,从而可以实现低成本大制作的目标。
那么这样做可行不可行呢?答案是肯定的,方法是通过改造开源软件来实现。
Rtmpdump是一个匈牙利人编写的基于rtmp 协议的客户端程序。通过它,可以将rtmp 的直播流下载成为一个flv 格式的问题。
我们架构低成本直播的思路是:使用rtmpdump 中的rtmp 协议部分,并将程序改造为多线程的模式。一个线程从fms 源拉下来直播流,n-1 个线程将这个直播流分发到其他fms server 。即实现直播流的转发功能。这样就可以通过多个fmss server来分担用户的请求压力,完成大型直播。
上面的方法虽然解决了大量用户的请求压力,但是还不能满足用户的视频体验。因为用户是属于不同地区和运营商的。比如广东电信的用户访问北京联通的FMS Server来观看视频,视频效果会非常差。因为运营商互联的带宽非常少,经常在堵塞状态。因此如果要满足用户的视频体验,不仅要解决服务器压力问题,还要解决跨省、跨运营商的网络质量问题。
解决跨省、跨运营商的的方式就是采用CDN。
CDN: CDN的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。方法就是就是在不同省、不同运行商的IDC 中放置服务器,让用户就近访问。
CDN 的一个关键技术就是调度系统。
调度系统:根据用户的IP以及节点的带宽和服务器负载情况,将用户的请求调度到最合适的节点,既满足了用户体验,又节省了CDN成本。
调度系统可以基于nginx 模块的方式开发。
调度系统保存一份精确的全国的IP 库,并配置好一个调度策略文件。内容就是不同地区,不同运营商的用户访问最好节点的对应表。另外有一个各个节点的带宽和服务器负载的上报接口,可以让调度实时了解各个节点的情况。
当用户来请求调度,调度根据用户的IP,查找IP库,了解到它属于哪个地区哪个运营商,并查找调度策略,了解到可以服务它的几个节点,通过节点查询接口,了解到相关几个节点的网络情况,服务器负载情况,然后将用户调度到满足条件的节点。
4 结束语
通过上述方案,不仅可以使直播视频画质更加清晰、画面更加流畅,增强了用户的良好体验,而且最重要的是该方案极大地降低了大型视频直播架构的成本。
参考文献
[1]- [2] 中国互联网络信息中心. 第30次中国互联网络发展状况统计报告. /,2012-7-01.
[3] 占少华.基于FMS的电台网上视频直播与点播[J].中国西部科技,2011 年第10期.
[4] 龚娇.基于Flash Media Server构建网络视频会议系统[D].长春理工大学,2008:175-178.
[5] 骆诚.基于Flash流媒体技术的动态播放列表设计[J].电脑与电信, 2008(08).
[6] 鲁志刚.基于Flash Media Server(FMS)的网络教育系统设计与实现[D].东北师范大学,2008:38.
基金项目:
本文得到中国青年政治学院科研项目经费资助。
作者简介:
张戈(1977-),女,汉族,北京人,北京理工大学工学硕士,讲师;研究方向:数据处理。