医学院校音视频教学资源共享平台的设计和实现

2019-07-29 09:47龚显卿
中国医学教育技术 2019年4期
关键词:音频检索教学资源

龚显卿

成都医学院现代教育技术中心,成都 610500

随着国家教育信息化发展战略的逐渐深入,各类高等院校在视音频教学资源建设方面取得很大成绩,微课等优质教学资源日益丰富。但同时也应看到在目前教育信息化过程中存在着“信息化与教育教学‘两张皮’”“只管数据采集不顾数据维护的粗放式管理模式比较普遍”的现象[1]。以医学院校为例,学校积极推动、教师积极参与制作了大量的微课教学资源,但这些资源普遍存在“谁制作谁使用”“上课用,课后不用”的问题。究其原因,一方面是师生对信息技术的应用技能需要进一步提高,另一方面也是因为学校对视音频资源缺乏统一、有效的管理,不便于师生在教学活动中使用。

1 医学院校视音频资源管理现状

随着学校的发展,各个高等院校积累的视音频资源越来越庞大,然而,各个院校的视音频资源却普遍存在资源分散、历史资料抢救不足等问题[2-4];同时,建设好的媒体资源在教学实际中较少得到推广应用。以成都医学院为例,学校经历了从军队办学到地方办学的转变,这期间积累了大量珍贵的视音频历史资料,这部分资料经数字化后以计算机文件的方式保存在计算机硬盘中,管理困难、查找不便。同时,学校通过自建和购买的方式建设了大量的医学视听教材,教师也制作了许多微课等教学资源,这些资源缺乏一个统一的发布平台,难以在教学实践中得到应用。

这些问题的存在,既不利于学校教学信息化建设的进一步开展,也不利于学生对知识的主动探索和主动发现[5-7],因此,我们设计开发了教学资源信息管理系统,以推进教学资源与教学应用,现介绍如下:

2 系统设计原则

高校媒体资源管理信息系统是面向教学服务的,目的在于实现教学媒体资源的信息化管理,推进音视频教学资源建设和教学应用的紧密结合。

①安全性。不同的用户应当有不同的操作权限。对素材应当进行审核,非法或与教学无关的素材不能进入系统。

②查询方便、快速。系统需要提供多种查询方式,使用户能够快速、准确地查找所需要的素材,提高其应用体验。

③低成本。普通高校的媒体资源管理信息系统数据量相对较少,不需要较多的特殊功能,如在线编辑、图像识别等,有利于降低系统的复杂程度,控制开发成本。

3 系统总体设计

系统采用C/S与B/S相结合的体系结构进行设计,基于PowerBuilder 12.5和Sybase SQL Anywhere 12实现[8-12]。通过C/S结构实现媒体资源信息数据的集中处理;通过B/S结构实现在多地域、任意时间段进行媒体资源信息的查询和下载。这样的系统结构对各项业务进行内外划分,尽可能保证系统数据安全。系统结构设计如图1所示。

图1 系统结构图

系统服务器端安装于学校数据中心机房。服务器为2颗至强E5-2600V4,20M缓存,内存大小为16G*4。存储阵列为NETAPP FAS 2240,该阵列目前外挂3个磁盘柜,容量达到200TB。NETAPP FAS 2240存储阵列采用RAID 6技术,在RAID 5的基础上进一步加强了数据保护。为降低成本、易于操作和维护,系统采用关系数据库模式,音视频资源以文档的形式存储在存储阵列,资源的属性和存储路径储存在数据库表中。音视频资源作为学校资产,由数据中心统一进行备份。

系统参与人员有系统管理员、教师、学生。管理功能包括对人员、素材的管理,如用户的添加、删除,素材的审核、编目、修改、删除等。服务功能包括素材上传、发布、查询、下载等。系统功能设计如图2所示。

图2 系统功能设计

4 数据库的关系模式

数据库中的实体总是来自于对现实世界的抽象,对同一事物从不同角度可能得到不同的属性集,而实体的属性影响着数据库设计和应用程序设计。因此,对事物的属性进行抽象应尽可能紧密地结合系统的实际使用需求,对于音像资料属性的抽象可以参考国家行业标准—广播电视音像资料编目规范第一部分:电视资料[13]。在该标准中规定广播电视音像资料编目—电视资料部分的元数据项总体上分为从上到下4个层次:节目层、片段层、场景层、镜头层。每个层次分别包含相应的元数据项。在该系统中抽取了资源的“题名”“主题”“描述”“创建者”“格式”等主要元数据项,其中“主题”按照《中华人民共和国学科分类与代码国家标准》(GB/T 13745-2009)进行参考分类。在媒体资源管理信息系统中将参与的实体抽象为5类,即人员、部门、视频素材、音频素材、其他素材。

部门关系模式为:部门(科室号、部门号、科室名称、部门名称)。

用户关系模式为:人员(人员编号、姓名、科室号、密码、人员类别、联系电话、审核状态、审核者)。“人员类别”的值域为:D={一般用户,系统管理员}。

视频关系模式为:视频(素材编号、素材名称、素材类别、科室号、素材内容、素材路径、内容描述、上传者、上传日期、审核状态、审核者、公开)。“素材类别”的值域为:D1={学校资料、教学资料、学术报告、文娱晚会}。对视频素材通过“科室号”对素材进行近似学科分类,更符合师生的实际使用习惯。“素材内容”的值为BLOB类型,用以存放需要永久保存的“学校资料”类视频资源。“公开”属性用于用户决定是否希望自己上传的素材向所有用户公开,其值域为D2={0,1},“0”表示不公开,“1”表示公开。

音频关系模式为:音频(素材编号、素材名称、音频类别、音频氛围、素材路径、内容描述、上传者、上传日期、审核状态、审核者、公开)。“音频类别”的值域为:D1={西洋交响乐、民族交响乐、独奏、人声、拟声}。“音频氛围”的值域为:D2={舒缓、紧张、激烈、俏皮、喜庆、恢弘}。

其他素材关系模式为:其他素材(素材编号、素材名称、素材种类、素材类别、科室号、素材路径、内容描述、上传者、审核状态、审核者、公开)。“素材种类”的值域为:D1={学校资料、教学资料、学术报告、文娱晚会}。“素材类别”的值域为:D2={文本、表格、图片、PPT、PDF}。

5 系统主要功能实现

5.1 程序主界面

系统将资源分为视频素材、音频素材和其他素材三大类,对视频素材和其他素材支持“部门查询”和“条件查询”两种查询方式,对音频素材支持“条件查询”。以C/S架构程序为例,在程序主界面包括系统菜单、查询标签栏、素材标签栏、素材预览窗口、素材内容描述等。

5.2 用户管理模块设计实现

对用户进行管理一方面是为了对系统的操作权限进行分类,确保资源的安全,另一方面是为了保证资源内容的合法性,对素材的来源进行跟踪。对用户的管理功能主要包括注册申请、用户审核、登录、账号管理。

系统权限设置如表1所示。

表1 系统权限设置

5.3 资源上传、审核和管理设计实现

用户在上传素材时选择素材对应种类,视频素材、音频素材、其他素材分别对应一个数据库表。对视频资源支持MP4、RM、WMV、FLV视频格式,对音频资源支持MP3、WAV,其他资源支持PPT、PDF、Excel、Wo-rd、JPEG、BMP等文件类型。

一般用户将自己的素材上传到数据库中成为自己的私有素材,并对其拥有管理权限。系统管理员对一般用户上传的素材进行审核,通过审核的素材其审核状态设置为“1”。素材的“审核状态”属性和“公开”属性共同决定该素材是否面向所有用户公开,只有两者都为“1”时,素材才公开发布。未通过审核的素材将保留为用户的私有素材,不合法或与教学无关的素材将被删除。已发布的素材一般用户不能再对其进行管理。

用户在上传素材过程中需要对素材进行预编目,对素材的“素材类别”“科室号”“内容描述”进行填写。系统管理员在审核过程中再次对素材进行编目,必要时对用户填写的素材信息进行修改。

素材上传界面中“上传者”“上传日期”分别默认为当前用户和当前日期,不可更改。用户点击素材上传界面中“文件夹”图标选择需要上传的本地文件。用户选择本地文件后,系统将获取文件路径和文件名,同时,在数据库中创建存储路径,其伪代码为:

rtn=getfileopenname("导入素材",is_pathname,filename,"mp4","mp4文件(*.mp4),*.mp4","h:”,18)

file_directory_dest="d:meitiziyuan_guanlixitong_sucaiku”+ddlb_yuanxi.text+"”&

+ddlb_keshi.text+"”+ddlb_leibie.text

if directoryexists(file_directory_dest)=false then

messagebox("提示","路径不存在,将建立"。)

createdirectory("d:meitiziyuan_guanlixitong_sucaiku”+ddlb_yuanxi.text)

createdirectory("d:meitiziyuan_guanlixitong_sucaiku”+ddlb_yuanxi.text+"”+ddlb_keshi.text)

createdirectory("d:meitiziyuan_guanlixitong_sucaiku”+ddlb_yuanxi.text+"”&

+ddlb_keshi.text+"”+ddlb_leibie.text)

end if

用户选择需要上传的文件后点击“提交”按钮上传文件,系统将在数据库中添加素材信息并将素材文件上传到服务器存储。其伪代码为:

filenumber=fileopen(is_pathname,streammode!,read!,lockread!)

insert into t_sucai_shangchuan () values () using sqlca;

if sqlca.sqlcode<>0 then

rtn=messagebox("","数据库错误")

rollback;

else

commit;

fileclose(filenumber)

cc=file_directory_dest+"”+filename

ss=filecopy(is_pathname,cc,true)

end if

用户上传的视频资源的格式常常是多样的,常见的有mp4、wmv、rmvb、flv等,多种格式不利于资源的统一发布和预览,需要对视频资源进行转码以统一格式。为了保证转换的稳定性和效率,系统在服务器端运行批处理文件利用开源代码FFmpeg将其他格式视频文件转换为H.264编码的MP4文件。转码时标清及以下分辨率文件保持原文件分辨率不变,采用512K码流进行编码压缩。高清视频文件转码为高码流和低码流两个文件,教学类高清视频文件转为1M和512K码流,学校历史资料类高清视频文件采用5M码流和512K码流,高码流文件用于资源保存、下载,低码流文件用于在线播放。为节约系统资源,系统仅对经管理员审核后确认合格的视频文件进行转码,转码时间定于每天0时至6时[14-16]。

5.4 资源检索、预览和下载

当用户在系统主界面选择“视频素材库”或“其他素材库”时,系统提供“按部门检索”和“条件检索”两种检索方式;选择“音频素材库”时,系统只提供“条件检索”检索方式。在该系统内,以“部门检索”代替“学科检索”,以视频素材为例,双击“部门检索”标签栏内的科室名,可以查看该科室下所有视频素材信息。系统可以按素材的“素材名称”“素材类别”“上传者” “上传日期”“审核者”“素材内容描述”等条件分别进行检索或多条件模糊检索。以“素材名称”+“素材类别”模糊搜索为例,其实现方式为:

sucai_mc=sle_1.text

sucai_lb=ddlb_1.text

cx_tj_mc="sucai_mingcheng like '%"+sucai_mc+"%'"

cx_tj_lb="sucai_leibie like '%"+sucai_lb+"%'"

ds_video_tjcx.setfilter("("+cx_tj_mc+") and ("+cx_tj_lb+")")

PowerBuilder提供了Blob数据类型和OLE控件可以对多媒体数据进行存储和显示[17-19]。系统中插入mediaplayer OLE控件,通过mediaplayer控件实现对于音、视频素材的预览。以视频素材为例,在窗口中插入mediaplayer控件,命名为ole_video。

sucai_id=dw_sucai_video.getitemnumber(this.getrow(),"sucai_id")

select sucai_pathname into:sucai_path from t_sucai_video where&

sucai_id=:sucai_id using sqlca;

ole_video.object.url(sucai_path)

经测试,系统在学校千兆骨干网网络环境中支持1M码流下200个视频并发预览,系统运行稳定、画面流畅。当并发数大于100时,系统将自动调用512K码流文件进行预览传输,对于实际教学应用来说,系统有较大并发冗余。

对于其他素材,系统中插入了Word、Excel、Power-point、PDF reader、Paintbrush控件,当用户双击素材时,系统根据素材种类选择相应的控件以打开素材。以打开文该文档为例,在窗口中插入文本控件,命名为ol-e_word。

sucai_id=dw_sucai_qt.getitemnumber(this.get-row(),"sucai_id")

sucai_leibie=dw_sucai_qt.getitemstring(this.get-row(),"sucai_zhonglei")

select sucai_pathname into:sucai_path from t_sucai_qt where sucai_id=:sucai_id using sqlca;

choose case sucai_leibie

case "文本"

ole_word.visible=true

ole_word.insertclass("word.document")

ole_word.insertfile(sucai_path)

end choose

系统在主页面提供“下载”按钮,当用户在系统中检索到所需要的素材时,双击该素材,“下载”按钮变为可用,单击该按钮完成下载。也可以在素材上单击右键,在弹出菜单中选择“下载”菜单进行下载。下载过程中如果出现网络中断现象,通过Fileseek64()函数找到文件传输断点,实现断点续传。其伪代码为:

li_rc=GetFileSaveName ("Select File",ls_path,ls_file,"MP4","All Files (*.*),*.*","g:down-load")

li_filenum=fileopen(sucai_pathname,stream-mode!)

li_filelen=filelength64(li_filenum)

li_filecun=filewriteEx(li_filenum,ls_path)

if li_filecun

fileseek64(li_filenum,li_filecun)

filewriteEx(li_filenum,ls_path)

end if

6 系统应用效果

该系统自2017年建成以来,已上传约4 TB学校音像资料,200余部医学音视频教材,教师个人上传微课、PPT教案、医学图片等教学资源1.5 TB。系统对上传的资源进行了有效管理,特别是在成都医学院70周年校庆宣传片制作过程中发挥了积极作用,为学校历史素材的查找和下载提供了便利,有效地降低了宣传片制作难度。目前,系统注册用户3512人,其中教师589人,约占学校教师总人数65%。系统日均访问量约100人次,最大同时在线人数150人。系统资源存储量以日均3.6GB的速度递增。

该系统在系统功能、结构、总体设计上具有普遍适用性,在各级各类学校均可使用。对于不同学校,只需要在对资源的“主题”元数据进行分类时结合自身学科需要进行划分即可。

高校建设的媒体资源是一笔宝贵的物质财富,应该被妥善保存和管理并使其在学校的发展壮大中发挥积极作用。文章结合学校自身实际和需要建设了一套低成本的媒体资源管理信息系统,它实现了学校媒体资源的信息化管理,使媒体资源能够得到长期安全的保存,同时,又推动了媒体资源在教学中得到更广泛的使用,使资源的建设和应用得以紧密结合。系统从一个方面解决了“信息化与教育教学‘两张皮’”“只管数据采集不顾数据维护的粗放式管理模式”的现象,对学校信息化建设发展具有一定的推动作用。

猜你喜欢
音频检索教学资源
丰富历史教学资源 提升课堂教学质量
瑞典专利数据库的检索技巧
一种基于Python的音乐检索方法的研究
民用飞机航电系统虚拟教学资源建设
必须了解的音频基础知识 家庭影院入门攻略:音频认证与推荐标准篇
基于Daubechies(dbN)的飞行器音频特征提取
高校冰上教学资源社会开放的意义及管理模式
浅议专利检索质量的提升
音频分析仪中低失真音频信号的发生方法
高职“计算机应用基础”教学资源网建设的探讨