基于校园网的流媒体视频点播系统的设计与实现

2012-10-10 00:52饶宇珊
中小学电教 2012年6期
关键词:视频点播管理员服务器

☆ 饶宇珊

(北京师范大学南山附属学校,广东深圳 518054)

利用学校现有的网络和资源,设计并开发视频点播系统,利用流媒体技术有效率地实现视频点播、电视网络直播、文件上传等功能,实现资源分类管理,不但为在校师生提供了基于流媒体技术的资源服务,极大地提高教师教研的技术水准,为教师专业成长提供资源上的保障,也为学校资源建设提供了很好的平台,使教学资源实现特色化管理,促进了数字化校园的建设。这种系统实现方案花费极少,具有技术先进、性能良好、成本低廉的特点,非常适合校园环境,使用价值高。只要有校园网络的学校都可以比较容易地实现。

一、系统的架构与设计

运用于校园的视频点播系统采用浏览器/服务器模式会比较适合,即B/S模式。客户端只要能上网即可以观看视频,系统灵活开放。这样处理,既可以充分发挥视频点播系统的优越性,又不需要使用者有专业的知识或者特定的操作技能。

流媒体服务器、WEB服务器、数据库服务器是视频点播系统的三大组成部分。基于B/S结构的视频点播系统的工作原理是:

(1)当客户需要点播节目时,首先使用浏览器访问WEB服务器。

(2)由WEB服务器查询数据库服务器,返回节目的URL给客户机。

(3)客户机启动流媒体播放器。

(4)客户机根据获得的节目URL向流媒体服务器发起请求。

(5)流媒体服务器接受请求并查询存储系统,发送流媒体数据给客户机。

(6)在客户机的媒体播放器上进行播放,完成一次视频点播过程。

流媒体视频点播系统在校园网络内实现的总体技术架构如图1所示,系统技术架构的核心组成部分是安装了WMS(Windows Media Server)流媒体服务软件的流媒体服务器、用ASP.NET开发的WEB服务器和SQL Server数据库服务器这三大部分。视频来源有两大部分:一是原有的音、视频文件和不断增加的录像资源,通过采编工作,通过WEB服务器上传到流媒体服务器存储系统;二是由电视机顶盒接收模拟信号,经过编码器和编码软件,利用WMS实现电视网络直播。

图1 视频点播系统的技术架构总图

(一)流媒体服务器的架构设计

流媒体服务器是流媒体应用的核心系统,是运营商向用户提供视频服务的关键平台。其主要功能是对媒体内容进行采集、缓存、调度和传输播放,流媒体应用系统的主要性能体现都取决于媒体服务器的性能和服务质量。因此,流媒体服务器是流媒体应用系统的基础,也是最主要的组成部分。

服 务 器 性 能 :IBM X36507979 (IntelXeon2.0 GHz)2U机架服务器;2个英特尔至强双核DP 2.0GHz CPU,4MB二级缓存,最大支持2路处理器,4GB PC2-5300 DDR2 ECC Chipkill SDRAM内存(12个内存插槽\最大扩展到48GB);SAS磁盘控制器等。

存储系统的配置:服务器主机的相关配置,Serve RAID 8K 阵列卡和 5块 146.8GB 15K 3.5″SAS热插拔硬盘可以满足当前大数量的视频资源的存储需求,6个热插拔薄型硬盘托架可以扩展未来一段时间的新视频资源的存储需求。

流媒体服务软件的选择:使用Windows 2003 server操作系统,启用IIS和Windows media services服务。微软的Windows Media Service(WMS)是最典型的流媒体服务器,它采用MMS协议接收、传输视频,采用Windows Media Player(WMP)作为前端播放器。

(二)WEN服务器的功能设计

流媒体服务器建好以后,并不能提供用户较友好的访问方式,一般都会提供一个视频资源的路径,如何找到一个更友好的方式?让很多视频资源都集结在一个资源网站上。

我们采用基于 Windows的 ASP.NET和 VB.NET作为基础开发网络应用程序,自己开发视频网站作为VOD系统的WEB服务器,其作用是为用户和管理员提供一个良好的交互平台,方便对视频资源进行操作和管理。另外,也方便了管理员对用户进行管理。

图2 视频点播网站系统的总体功能图

校园网视频点播系统的总体功能如图2所示,包括后台管理(包括用户管理模块、视频管理模块、目录管理模块和评论管理模块)、视频点播(包括视频点播模块和发表评论模块)、电视直播三个子系统。视频点播网站系统的各模块功能介绍如下:

用户管理模块:在此功能模块中管理员对用户的信息进行管理,包括添加、删除用户信息和对用户的信息进行修改等。

视频管理模块:在此功能模块中管理员可以上传视频、删除视频。

目录管理模块:在此功能模块中管理员管理视频目录,可以添加、修改、删除视频信息。本功能模块的系统工作流程与用户管理模块相同。

发表评论模块:在此功能模块中用户可以对所观看的视频进行评价。

评论管理模块:在此功能模块中管理员管理用户对视频的评价信息,可删除评价信息。

视频点播模块:在此功能模块中用户可以点播自己想看的视频。

客户完成一次视频点播的系统工作流程如图3所示,客户通过WEB服务器提出某一文件的点播请求,由WEB服务器查询数据库,如果片源的信息在数据库存在,由WEB服务器向流媒体服务器发出请求,流媒体服务器向客户机以媒体流的形式发送音视频文件。客户端启动流媒体播放软件,接收媒体流。这样,用户就完成了一次视频点播过程。

图3 视频点播工作流程图

用户工作的总流程如图4所示,用户在登录界面按要求输入用户名和密码,系统会根据用户的输入信息访问相应的数据库表User,确定是否为合法用户,条件符合则进入系统界面。用户和管理员在视频网页上可以做相应权限的行为。系统再根据表User中的权限字段判断用户的身份是管理员还是普通用户,管理员用户还要经系统访问另一张数据表Admin,判断是系统管理员还是普通管理员。普通管理员的所有行为权限系统管理员都有,而系统管理员的部分权限普通管理员没有。

图4 用户工作流程图

(三)数据库设计

数据库服务器执行WEB服务器发送的对节目信息和用户信息的查询、存取、删除等命令。数据库服务器和WEB服务器协作,让WEB服务器的响应请求和数据操作分开,降低WEB服务器的压力,对数据服务器的性能和稳定性有一定的要求。

本系统使用的数据库服务器是SQL Server 2005。系统的数据库设计包括用E-R图设计,数据字典的设计,数据库表的设计,数据库逻辑关系图等。视频点播网上系统用户、管理员和视频资源之间的联系图如图5所示。

图5 数据E-R图

(四)电视直播的架构设计

电视直播的工作原理是:将电视(模拟)信号通过采集转换为数字信号输入计算机,应用流媒体技术在网络上进行直播,用户访问指定的直播网站页面,其访问请求导向发布服务器节点,获得流媒体数据,通过网页浏览器自带的播放器观看直播视频内容。

我校实现电视直播,需要配备HVC400编码器和Nowstream编码软件作为采集编码模块。在服务器上安装HVC400编码器和Nowstream编码软件,来实现实况流的直播或定时直播、实况流的拉传递功能、实况流的推传递功能、文件保存或定时保存等。

二、系统实现与测试

我们采用基于 Windows的 ASP.NET和 VB.NET作为基础开发网络应用程序,结合MS SQL Server 2005数据库技术,完成网站的开发运用。

(一)点播平台的实现

图6 点播平台首页面

点播平台的首页面如图6所示,根据我校教学资源建设的要求,分栏目为:

(1)视频直播:在该页面,用户可以直接同步观看各频道电视节目。

(2)视频新闻:该页面展示当今发生的重要新闻事件和学校新闻视频。

(3)示范课例:在该页面,教师上公开课的视频分学科分组展示。

(4)教师培训:该页面展示针对教师技能、素质培训的视频资料。

(5)教学资源:该页面展示优秀教学示范的视频资料。

(6)电影:该页面展示一些电影资料。

(7)音乐:该页面展示一些音频资料。

(二)管理平台的实现

后台的管理目前有三块功能,分别为目录管理、视频添加及用户管理。

1.目录管理功能

该视频网站的目录非常灵活,可以实现无限级目录的动态管理,添加、修改、删除都很方便,是用 Asp.net里自带的Treeview组件实现,效果如图7所示。

图7 目录管理

2.视频添加功能

在视频添加模块里,“视频介绍”部分采用Word编辑器的功能,方便内容的添加编辑,如图8所示。

图8 视频添加

我校的视频网站支持三种方式上传:第一种是直接以wmv格式上传,优势在于视频比较清晰,但公网浏览不顺畅,应用于追求清晰度的情况。第二种是直接以flv格式上传,对于从网上找到的资源,如果是flv格式可以直接上传。第三种是由其它格式转化为flv格式方式上传,这就借助于我们 ASP.Net的ffmpeg和mencoder组件来实现。如图9所示。

图9 文件格式直接转换页面

3.用户管理

为了实现视频的分级管理,不同级别的用户只能看到相应级别的视频,管理员在审核会员的时候,可以对用户进行分级,功能如图10所示。

图10 用户管理

(三)关键技术的实现

1.使用Treeview部署目录树实现视频目录管理

TreeView控件用来显示信息的分级视图,如同Windows里的资源管理器的目录。TreeView控件显示Node对象的分层列表,每个 Node对象均由一个标签和一个可选的位图组成。TreeView一般用于显示文档标题、索引入口、磁盘上的文件和目录、或能被有效地分层显示的其它种类信息。创建了TreeView控件之后,可以通过设置属性与调用方法对各Node对象进行操作,这些操作包括添加、删除、对齐和其它操作。

2.用NeatUpload组件完成视频的上传工作,上传速度快,有进度显示

3.借助Ffmpeg和Mencoder组件来完成视频转换和截图工作

我们用Asp.net开发一个可以同时实现上传和转换的网页平台,通过使用免费的ffmpeg和mencoder组件,基本上可以实现把所有视频文件格式转为flv格式。在这个平台中,ffmpeg组件和mencoder组件是有具体分工的,对于 asf、avi、mpg、3gp、mov 等格式文件采用 ffmpeg 组件来进行转换,而 wmv、rmvb、rm等格式的文件采用mencoder组件来转换,另外,在转换过程中可以自动截图,截图都是靠ffmpeg组件来完成的。这样,运用这个网页平台就可以完整实现视频的上传和转换。

(四)系统测试

截取一段60秒时间长度的视频文件,将文件存储为wmv(352*288,30fps)格式。存储容量大小是 4.96M。将wmv格式文件直接上传的网络速度数据如图11,是69.5KB /s。

图11 wmv格式文件上传进度

将文件以flv格式上传的网络速度数据如图12,是89.1KB /s。

图12 wmv文件转化为FLV格式上传进度

测试结果是同时间段视频以wmv格式直接上传的网络速度比转化为flv格式上传网络速度要慢。

wmv格式的视频在局域网内完成一次完整的点播需要时间是60.03s,flv格式的视频在局域网内完成一次完整的点播需要时间是60.03s。结论是:在局域网环境内,同时间段视频wmv格式视频和flv格式视频完整的点播需要时间没有测试出时间差。

三、总结

本文对流媒体视频点播系统的整体设计和构架做出了详细描述,叙述了系统三大组成部分的设计和实现。系统优点包括:(1)流媒体服务软件选择最典型的WMV,兼容性强。(2)自己开发交互平台,用户可以根据自己的喜好定制自己所需的资源管理方案,对往后的维护也没有技术顾虑。(3)这种系统实现方案花费极少,具有性能良好,使用价值高,成本低廉的特点。只要有校园网络的学校都可以比较容易地实现。

[1][美]Steve Mack.流媒体宝典 Streaming Media Bible.邢栩嘉等译[M].北京:电子工业出版社,2003,1:32-34.

[2]庄捷.流媒体原理与应用[M].北京:中国广播电视出版社,2007,8:77-79.

[3]齐俊杰,胡洁,麻信洛.流媒体技术入门与提高(第2版)[M].北京:国防工业出版社,2009,8:75-77.

[4]钟玉琢,向哲,沈洪.流媒体与视频服务器[M].北京:清华大学出版社,2003:21-95.

[5]胡译,赵新梅.流媒体技术与应用[M].北京:中国广播电视出版社,2006,6:28-35.

[6]刘颖.流媒体视频点播系统的设计方案[J].天津职业院校联合学报,2010,12(2):45-46.

[7]赵瑛,朱亚莉.基于校园网络的视频点播系统[J].现代教育技术,2002,(4):65-67.

[8]Chang Woo,Jee Kang,G Shin.A davic video-on-demand system based on the PTSP[J].2001,8(4):231-238.

[9]王军健.VOD服务器性能及服务方式研究[J].计算机工程与设计,2005,(3):6-24.

[10]蔡佳,李社教.探究在教学中运用的多媒体技术及其特性[J].电脑知识与技术,2010,6(12).

猜你喜欢
视频点播管理员服务器
我是小小午餐管理员
服务器组功能的使用
我是图书管理员
我是图书管理员
今年订阅视频点播收入将超票房收入
可疑的管理员
全球观众已疲于选择新的流媒体平台
通信控制服务器(CCS)维护终端的设计与实现
PowerTCP Server Tool
计算机网络安全服务器入侵与防御