基于流媒体技术的馆藏科技信息视频资源数据库构建

2020-06-22 13:15杨涛
软件导刊 2020年5期

杨涛

摘 要:科技信息视频资源是科技情报信息资源不可或缺的重要组成部分。为解决馆藏科技信息视频资源管理不便与利用率不高的问题,按照已建立的资源数字化加工标准要求,对馆藏视频资源进行统一处理,并基于流媒体技术,采用FMS流媒体服务器,结合Flashplayer在线流媒体开发模式,设计开发了一套B/S模式的馆藏科技信息视频资源在线播放数据库系统。该数据库系统投入运行后,馆藏视频资源管理费用降低了约80%,管理效率提升了约60%,且视频资源利用率是过去的近20倍。同时,也进一步提升了单位科技信息服务质量和影响力。

关键词:流媒体技术;FMS;Flashplayer;科技信息;视频资源数据库

DOI:10. 11907/rjdk. 192370 开放科学(资源服务)标识码(OSID):

中图分类号:TP392文献标识码:A 文章编号:1672-7800(2020)005-0181-05

0 引言

在多媒体资源中,以音视频为主的实时流媒体数据无论在信息密度还是在表现方式上都有无可比拟的优势[1],音视频总是能够展现比静态图片更为丰富的动态内容,特别是在教育和研究领域,视频资源呈现的信息生动形象且更易理解[2]。互联网上采用流媒体技术的在线视频点播网站越来越多,从文献[3]-文献[5]等可以看出,高校等教育机构在逐步完善基于流媒体技术的在线教育视频资源体系。因此,科研机构积极构建运行于单位内部局域网的基于流媒体技术的馆藏科技信息视频资源数据库系统,不仅是提升館藏视频资源有效管理的有力手段,而且是发挥馆藏视频资源应有价值,促进馆藏资源向数字化、知识化迈进的重要途径。

传统基于HTTP[6]或FTP[7]协议的视频在线播放系统需要等客户端在后台下载完整的视频文件到计算机缓存中后才能开始播放,多用户使用时对服务器资源和带宽影响较大,且用户体验较差[1,8]。目前,鉴于Flashplayer[9]出色的兼容性、流畅度,HTML5[10]的稳定性和跨平台能力,互联网上采用的视频在线流式播放大多基于Flashplayer、HTML5或两者结合的流媒体技术。但对于大部分科研机构而言,其内部网络环境相对落后,浏览器版本仍停留在IE6[11],因此更多不得不采用基于微软的Microsoft Media Server +Media Player [12](甚至更过时的Real公司RealServer+Realplayer [13])解决方案。这些方案的显著缺点是视频压缩率太低,不适合高清/超清视频数据的在线传输,而且大文件传输时其用户体检也较差。因此,结合单位网络环境和实际应用情况,对以上3种解决方案进行大量测试后,选择以Flash Media Server[14-15](以下简称FMS)作为流媒体服务器,以Flashplayer插件作为网页播放器的组合方案,从而满足单位馆藏视频资源和内部网络应用环境实际需求。

1 关键技术

流媒体技术是将连续的影像和声音信息经过压缩处理后放到网站服务器,由视频服务器向用户计算机顺序或实时地传送各压缩包,让用户一边下载一边观看、收听,而无需等整个压缩文件下载到自己的计算机上才可以观看的网络传输技术[16]。常用流媒体协议有:RTP(Real-time Transport Protocol 实时传输协议)和RCTP(Real-time Transport Control Protocol 实时传输控制协议)[17]、SRTP(Secure Real-time Transport Protocol 安全实时传输协议)和SRTCP(RTP Control Protocol 安全实时传输控制协议)[18]、RTSP(Real Time Streaming Protocol 实时流协议)[19]、RTMP(Real Time Messaging Protocol 实时消息传送协议)[20]、mms(Microsoft Media Server Protocol 微软媒体服务器协议)[14]和HLS(HTTP Live Streaming 苹果HTTP流媒体传输协议)[21]等。

其中,引言的Flashplayer方案,也是当前主流在线视频网站应用最广的方案,该方案主要有以下两个显著特点:

(1)Flash Player网页播放器插件是当前最主流的网页播放器之一,支持flv、f4v、mp4和m3u8格式的视频文件[22],且其支持的mp4格式具有压缩率高、视频质量高等特点,是当前主流流媒体网站Youtube、优酷、土豆等网站高清传输的首选格式。

(2)FMS流媒体服务器与上述流媒体服务器相比,首先是为Flash视频流式传输而设计,能够实现跨平台部署和无缝集成;其次,具备强大的交互性和高扩展性,并能自动识别客户端状态,降低网络负载;最后,FMS使用的RTMP实时消息传送协议采用未加密的TCP/IP协议,专门设计用来高速传送音频、视频和数据信息[14-15,23]。

2 馆藏视频资源加工

中国飞行试验研究院馆藏科技信息视频有上千部,并逐年增多,大多是在科技情报搜集过程中和通过文献反向跟踪积累获得,主要包括飞机知识科普类、国外飞机制造及试验类,以及相关武器装备介绍和试验类等。这些视频资源不仅能够用于技术人员的专业知识学习,还能够在各种汇报、报告中呈现出更具感染力和知识性的原理运作、试验过程、姿态变化等关键信息。

但由于视频资源的特殊性,纸质查询和光盘借阅的传统流通方式极不利于视频资源管理与利用。因此,在已建立的资源数字化加工标准要求下,对馆藏视频资源进行统一加工处理,将部分DVD光盘通过编辑工具初次转换为MPEG格式,然后确定视频码率、分辨率、比特率等关键信息,针对不同质量的视频文件,分别进行统一格式处理,转换为基于H.264编码的MP4格式,以尽量减少视频质量损失。

3 系统设计与实现

数据库系统借鉴了近年来科技情报信息资源全文数据库系统建设经验,依托单位内部局域网,采用ASP.NET开发语言、轻量级数据库MySQL,结合FMS流媒体服务器和Flahsplayer插件的网络流媒体技术,实现基于B/S模式的馆藏科技信息视频在线点播系统,以发挥馆藏视频资源的应有价值,提升馆藏视频资源管理水平和利用率。

数据库系统客户端主要为Windows XP系统,IE6.0浏览器及Flashplayer13播放器环境。后台服务器端为Windows Server 2003系统,使用FMS作为流媒体服务器,实现视频资源流媒体传输。

3.1 功能设计

该数据库系统主要用于馆藏视频资源的管理和在线点播,故整体核心功能结构框架较为简洁,主要包括后台用户管理、视频管理、分类管理以及前台视频检索、在线播放和分类展示等模块,如图1所示。

其中,视频管理、分类管理以及在线播放为主要设计功能,包含了视频上传、信息修改上传、视频状态更改、分类添加、分类修改、流媒体交互、播放统计、视频推荐等功能。

3.2 数据库设计

由于单位内部使用没有涉及权限,因此,本系统数据库只需要用户、视频和视频分类3张表。表设计如下:

(1)用户表Users。包含字段Id(用户ID)、Name(用户名)、Password(密码)、status(启用状态)。

(2)视频分类表。包含字段Id(分类ID)、CName(分类名称)、ParentId(上级分类ID)、Url(分类地址)、Sort(排序)、Remark(描述)、Status(启用状态)、IsLast(是否最后一个)。

(3)视频表Videos。包含字段Id(视频ID)、Name(视频名称)、C_Id(外键,所属分类ID)、C_Name(外键,所属分类名称)、VideoUrl(视频地址)、ImageUrl(图片地址)、Summary(视频简介)、Author(视频来源)、Seconds(视频时长)、ClickTimes(播放次数)、Upload_Time(上传时间)、Uploader(上传人)、Status(启用状态)。

3.3 FMS流媒体服务器搭建

3.3.1 FMS安装

该系统选择FMS4.0版本,安装过程相对简单。系统将部署在IIS环境下,Apache会占用IIS的80端口,且其与本系统无关,因此安装时要取消默认选中的Apache2.0,其它安装操作按照默认提示进行即可。

3.3.2 流媒体服务器配置

安装完成后FMS服务会自动启动,配置前需要在开始菜单-Flash Media Server 4.0目录下找到Stop Adobe Flash Media Server 4.0停止服务。

(1)修改applications路径指向。找到FMS安装目录下conf文件夹中的fms.ini文件,修改VHOST.APPSDIR的值。由于系统上传的视频文件放在部署项目的upload文件夹下,因此需要修改默认值C:\Program Files\Adobe\Flash Media Server 4\applications,修改为项目upload文件夹所在目录C:\Users\D011\Documents\Visual Studio 2012\Projects\cmMedia\cmMedia,使得applications目录指向cmMedia目录。

(2)修改流媒体文件获取路径。将安装目录C:\Program Files\Adobe\Flash Media Server 4\applications\vod文件夾下的所有文件复制到项目upload文件夹下。该系统流媒体传输使用rtmp方式,因此需修改fms.ini文件中的VOD_DIR值,将默认值C:\Program Files\Adobe\Flash Media Server 4\applications\vod\media修改为C:\Users\D011\Documents\Visual Studio 2012\Projects\cmMedia\cmMedia\upload\media[15,24]。

启动服务后,系统所需的流媒体服务器已经搭建完成,可以通过登录FMS网页端进行测试。

3.4 系统功能实现

该系统开发语言使用ASP.NET4.0,UI框架,选用LigerUI1.25,数据库采用简单易用的MySQL5.0,Flash集成开发插件选用免费小巧的ckplayer6.4。系统首页如图2所示。

视频播放和分类展示是系统难点,本文将重点介绍这两部分内容。

(1)在线播放。用户点击视频链接,跳转到在线播放页面,页面通过后台判断是否存在该视频。如存在,则调用js处理程序拼接流媒体视频地址,通过播放器插件与流媒体服务器交互,实时传输获取视频流。在线播放处理流程如图3所示。

4 结语

本文在特殊内部局域网环境下,构建基于IE6浏览器的视频资源数据系统,建立了科研类视频资源的标准数据格式、著录规则,并基于FMS和Flashplayer进行实践,证明了FMS和Flashplayer方案在单位网络环境下运行的可行性和可靠性。同时,该数据库系统的建成,明显提升了馆藏视频资源管理效率和利用率,提高了科技信息服务质量和影响力。为了适应单位知识管理和知识工程建设基础数据保障要求,后续将增加图片数据管理和视频片段标记功能,并优化视频资源推荐和智能检索功能,在保密等条件允许的前提下,增加回复讨论功能,从而搭建一个完善的学习研究平台,为专业人员提供全方位科技信息资源服务,为专业发展提供数据源及实践支撑。

参考文献:

[1] 蒋维. 实时流媒体传输系统中关键技术的研究与实现[D]. 杭州:浙江工业大学,2017.

[2] 鲍欣欣. 浅谈如何在中学历史教学中更好地运用视频资源[J]. 新教育时代电子杂志(教师版),2016(21):61-61,41.

[3] 蔡军. 基于流媒体技术高校教育资源平台的研究[J]. 读写算(教师版),2012(19):1-2.

[4] 彭小禹. 基于流媒体技术的现代远程教育系统构建[D]. 长沙:湖南大学,2015.

[5] 张艳华. 基于流媒体技术的教学视频点播系统的设计与实现[D]. 成都:电子科技大学,2011.

[6] FIELDING R,IRVINE UC,GETTYS J,et al. Hypertext transfer protocol--HTTP/1.1[S]. IEFT RFC 2616,1999.

[7] POSTEL J,REYNOLDS J. File transfer protocol[S]. IEFT RFC 959,1985.

[8] 薛震. 流媒体技术及其在视频点播中的应用[J]. 电子技术与软件工程,2015(2): 111.

[9] Adobe Inc. Flashplayer [EB/OL].  https://get.adobe.com/cn/flashplayer/about.

[10] w3school. html5 video [EB/OL].  https://www.w3school.com.cn/html/html_video.asp.

[11] Baidu.IE6[EB/OL]. https://baike.baidu.com/item/Internet%20Explo rer%206/4353174?fromtitle=IE6&fromid=8680416&fr=aladdin.

[12] Microsoft. Microsoft Media Server (MMS) Protocol[EB/OL]. https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-mmsp/01f2fe19-04a4-4b2a-ab81-6118b757c8d3.

[13] Wikipedia. RealServer[EB/OL]. https://en.wikipedia.org/wiki/REAL _Server.

[14] Abobe Inc. Flash media server[EB/OL]. https://www.adobe.com/cn/products/adobe-media-server-family.html.

[15] Koolearn. Flash media server[EB/OL]. http://fms.koolearn.com.

[16] 吕斌,庄雷. 流媒体技术综述[C]. 河南省计算机学会2010年学术年会论文集,2010.

[17] SCHULZRINNE H,CASNER S,et al. RTP: A transport protocol for real-time applications[S]. IEFT RFC 3550,2003.

[18] BAUGHER M,MCGREW D,et al. Secure real-time transport protocol[S]. IEFT RFC 3711.2004.

[19] ALOMAN A I,ISPAS A,CIOTIRNAE P,et al. Performance evaluation of video streaming using MPEG DASH,RTSP,and RTMP in mobile networks[C].  IFIP Wireless and Mobile Networking Conference (WMNC). Munich,Germany,2015:144-151.

[20] PARMAR H,THORNBURGH ED M,ADOBE ED. Adobe's real time messaging protocol[S]. 2012.

[21] Apple Inc. HTTP live streaming overview[EB/OL].  https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/Introduction/Introduction.html#//apple_ref/doc/uid/ TP40008332-CH1-SW 1.

[22] Abobe Inc. 了解視频格式[EB/OL].  https://help.adobe.com/zh_CN/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204-7d46.html.

[23] 关博. 基于FMS的流媒体技术在网络教学平台中的应用[J]. 产业与科技论坛,2013,12(12):146-147.

[24] CKPlayer.ckplayer manual[EB/OL]. http://www.ckplayer.com/manual.

(责任编辑:孙 娟)