您的当前位置:首页正文

基于Flash Media Server的视频教学系统的设计与实现

来源:爱go旅游网
第29卷第5期 2011年09月 佳木斯大学学报(自然科学版) Joums[of Jiamusi University(NaturM Science Edition) V01.29 N0.5 Sep. 2011 文章编号:1008—1402(2011)05-0722一o4 基于Flash Media Server的视频教学系统的设计与实现① 盛小清,吴伟信 (泉州师范学院。福建泉州362000) 摘要:针对目前网络教育的实际情况,分析网络教学系统建设需求的基础上,论述了一个基 于Flash Media Server技术的网络视频教学系统的总体设计.以.NET和Flash Media Server技术 为支撑,对系统中“音视频录制和直播”、“观看音视频流”、“视频文件上传”、“双向视频交流”等 核心功能模块进行了详细的分析,提出了合理的解决方案.为学生提供了可视化、直观的视频课 程平台,极大增强了客户端的用户体验感,减轻了服务器的压力,展现了Flash Media Server技术 在视频教学中的强大优势. 关键词: 流媒体;Flash Media Server;视频教学系统;FLv 中图分类号:唧93.09 文献标识码:A 0 引 言 网络教育是随着当今计算机多媒体技术和网 络技术的发展,尤其是Internet/Intranet的应用和 普及而产生的,它以学习者为主体,以计算机技术、 多媒体技术、通信技术和Intemet网络等为主要教 维护成本的基础上送达更多的用户,满足网络教学 中同步及异步交流的需要,对多媒体网络教育具有 很大的实际意义和价值. 1 Flash Media Server概述 Flash Media Severr(FMS)是Adobe(Macrome— dia)公司推出的开发流媒体的服务器软件,拥有独 学手段和传播媒体,是将文字、图像、动画、音频和 视频相结合的一种新型的交互式教育方式.这种教 学模式通过计算机网络交互式地实现了远距离、快 速度、高质量的教学体系,对整个教育结构产生了 重大而深远的影响,是未来教育发展的一种趋 势…. 随着网络教学活动的普及,基于Intemet的网 特的可编程流媒体环境,包括丰富的应用程序接口 (API)和服务器组件,可在大规模部署环境下提供 录制和实况直播,如视频点播、实况网络广播、播 客、视频/音频聊天等应用 J. I.1 FMS技术架构分析 络教学系统的研究已成为热点问题,在早期非同步 交互式教学之后,出现了视频授课以及教学视频点 播等多种形式的网络教学系统,在某些方面为远程 教学提供了很大的方便,但仍存在着一些不足.主 FMS的功能平台包含了server端(存放服务端 脚本文件和其他资源)和c ̄ent端(SWF文件),cli— ent端与sevrer端通过RTMP(Real~Time lflessage Protoco1)协议相互通信 ;sevrer端主要负责数据 的传输,由client端发送请求,severr端执行数据查 询和计算并返回结果值,通常需要保持长时间的连 接.FMS技术架构模式如图1所示,Web服务器通 过HTrP协议发布嵌入了交互式Flash动画文件 (SWF文件)的网页,SWF文件作为客户端程序通 要表现在网页脚本程序运算性能低下,系统资源使 用能力不足,教师和学生视频交流不畅通,教师实 时授课信息实时传输困难等问题 j.针对以上问 题,该文提出了基于Flash Media Sevrer的视频教 学系统;系统以Flash Media Server(FMS)为流媒体 实时获取 服务器,以FLV为视频传输格式,两者的组合能够 过RTMP协议与FMS服务器进行通信,实现全新的视频教学系统,可在较低开发、测试和 以Flash视频格式发布的多媒体数据流,成为net- ① 收稿日期:2011—07—25 基金项目:泉州师范学院2009年科技计划项目(2009kj13). 作者简介:盛小清(1974一),女,福建永春人,泉州师范学院教育技术学专业副教授,硕士. 第5期 盛小清,等:基于Flash Media Server的视频教学系统的设计与实现 723 work stream即网络流,其他用户也可以同时连接到 、veb服务器 相同的FMS接收信息、更新数据等 引. 客户端 口 口 sw啪 发布嵌入 l HTTP l口I使用Flash播放器运 一口l颐 swF闻口I 流 图1 FMS技术架构模式图 口l 送 接收 1.2 基于FMs的视频教学系统的优势 采用传统的Web应用程序模式设计的视频教 学系统,用户执行多个应用时需要在多个页面之间 跳转,这样当多个用户同时操作时,服务器在同一 时间就要使用大量资源来响应请求;资源被过度占 有时,其他用户的访问请求就会被延迟,有时甚至 会导致服务器的崩溃.因此,当用户需要一个高效、 实时、流畅的教学环境时,传统的基于Web的网络 视频教学系统已经不能满足用户的需求. FMS的出现为视频教学系统提供了良好的技 术和环境支持,用户界面可以看成一个大的容器, 与功能按钮对应的不是链接而是窗体,在同一个容 器中可以同时打开多个窗体,由于每个窗体都与服 务器建立了实时连接,这样相对服务器而言在同一 时间出现大数据量请求的可能性非常小.FMS集 成了Flash多媒体交互性及实时数据流的特色,可 以通过网络存储录制下来的音频、视频,也可以共 享数据对象,并将这些音频、视频和共享数据对象 传递给多个客户端,实现实时同步共享,相比传统 的基于Web的网络教学系统来说更具备良好的使 用性 引. 2基于FMS的视频教学系统设计 2.1 系统设计目标 系统功能将涵盖网络教学活动的各个方面, 用户界面完全由浏览器提供,页面采用分布刷新或 无刷新技术,维护方便.基于该系统,教师将可以录 制、上传他们的教学资源,并通过应用程序共享功 能向学习者演示某个教学环节,或通过语音和同步 指导功能指导学生完成某个操作.学习者可以登陆 系统,按分类查找课程并进行主动的学习活动,随 时对教学视频进行评论,为其它学习者提供学习帮 助,从而达到疑点、难点强化的目的.教师和学生还 可以通过平台提供的视频交流协作模块,进行实时 的文字、语音、视频交流,以此实现课堂讨论、教师 操作示范演示、辅导等功能・ 2.2系统功能模块设计 系统将用户分为三类:系统管理员、教师、学 生,他们都有各自的页面,其中权限最高为管理员, 其次为教师,最低为学生.视频教学系统是一个连 接教师和学生的一个教学平台,教师以视频的形式 发布教学资源,后台管理员对这些视频进行分类管 理,广大的网络用户可以通过此平台选择浏览视频 资源,以获取自己需要的学习信息.权限不同将最 终决定操作界面的不同,系统功能模块按用户角色 的不同划分如图2所示: (1)前台学生模块提供收看教师授课视频广 播、视频点播、协作学习、课程资源浏览等功能.用 户可以通过系统提供的搜索引擎选择性的搜索自 己感兴趣的教学视频资源,提供对教学视频的评价 功能,并且通过协作交流工具进行协作学习;学生 既可以获得教师提供的资源,还可以与其他同学共 享学习资源,了解其他学生的学习状况,共同讨论 问题. (2)前台教师模块向教师提供包括音视频录 制与直播、上传视频资源等一系列的功能.音视频 录制与直播模块主要提供给教师实时采集授课音 视频的功能,音视频以知识点为最小单位进行录 制,方便修改和维护,并保存到FMS流媒体服务器 上相应的目录中.视频上传模块是为教师提供非实 时录制教学视频的上传功能,通过嵌入开源的视频 格式转换工具(转换为FLV格式的视频),该模块 将支持目前主流视频格式的上传. (3)后台管理模块为系统管理员维护系统提 供便利.其功能包括视频管理、用户管理、视频评论 管理、系统模块管理等.系统模块管理是为管理员 提供的指定学习者操作范围的模块;视频管理是提 供视频的分类管理、添加视频和删除视频功能;视 频评论管理是围绕课程的各个知识点为师生提供 的异步交流环境;用户管理是实现新注册的教师或 者学生用户信息的确认、修改和删除. 724 佳木斯大学学报(自然科学版) 2011年 基于FMS的视频教学系统 学生用户 l l 教师用户 I I 系统管理员 观 看 目 搜 索 课 评 协 作 教 学 目 音 视 频 课 程 用 户 课 视 系 统 数 据 价 课 程 视 程 视 频 管 理 频 评 交 流 工 进 度 设 置 频 录 视 频 上 信 息 管 理 模 块 管 理 库 备 视 程 视 直 播 论 管 理 频 流 视 频 制 份 频 具 传 图2系统功能结构图 3基于FMS的视频教学系统实现的 关键技术 基于FMS视频教学系统的关键技术是应用 媒体信息的实时传播功能.以FMS和web平台为 核心,通过FLVPlayback组件,将视频播放器包括 在应用程序中,以便播放来自Flash Media Server 的FLV流文件.主要代码如下: nc=new NetConnection(); nc.connect(”rtmp://192.168.1.1/live”); ASP.NET技术结合Flash Media Server的API组件 实现,通过Camera类和Microphone类获取视频信 息和音频信息,通过NetStream类建立和发布音视 频流,通过共享数据类SharedObjeCt建立共享数 据,控制和传递重要信息_3 J. 3.1音视频录制与直播 orS:new NetStrem(no);a Vgr my—FLVPlybk=new FLVPlayback(); //加载视频流并播放 my—FLVPlybk.1oad(re8); my—FLVPlybk.play(roS); 3.3课程视频文件的上传 录制音视频的功能是录制麦克风的声音和摄 像头拍摄下来的教学过程,由嵌入在aspx页面中 的SWF文件实现,录制的数据流被存为Flash Vid— 此模块为教师提供已录制完成的课程视频的 上传功能,视频格式包括:MPEG,AVI,MP4,3GP, RM,RMVB,MOV,WMV,FLV,ASF等主流媒体形 式.除FLV格式之外,其它视频均通过嵌入开源的 视频格式转换工具ffmpeg,以异步方式的系统调 go(FI )格式,并上传到服务器.直播视频模块使 异地实时教学成为可能,教师使用直播视频模块, 将视频以视频流的形式发布到服务器,服务器实时 将这些流发送给所有的学生客户端,客户端接收到 这些流数据后进行解压缩编码并播放.主要代码如 下: nc=new NetConnection();//连接 nc.connect(”rtmp://192.168.1.I/record”); 用,将上传的各种视频格式转换为FLV格式视频, 并抽取该影片的缩略图作为视频的显示信息,然后 将此信息保存于数据库中.将上传的视频转换为 FLV格式的主要代码如下: public string VideoConvertFlv( sting,Upfrile,sting Exportrtile, //将摄像头图像和MIC声音装载到流 Val"my—ns:NetStream=new NetStream(he); stirngWAndH) {stirng fmpeg @”C:Inetpub\wwwroot\demopic\fmpeg.exe”; System.Diagnostics.ProeessStartlnfo startlnfo=new my—ns.attachVideo(Camera.get()); y—ns.attachAudio(Microphone.get()); //录制视频recmedia0001.tlv my—ns.publish(”recmedia0001”,”record”);//”record”参数 改”live”.即在线直播 System.Diagnostics.ProeessStartlnfo(ffmpeg); startlnfo.WindowStyle=System.Diagnostics.ProeessWindow- Style.Hidden; 3.2观看音视频流 一startlnfo.Arguments=”一i”+Server.MapPath(Upfile)+” ab 56一ar22050一b 500一r 15一S”+WAndH十””十Server. 该模块主要是实现远程语音、视频、文本等多 MapPath(Exporttile); 第5期 盛小清,等:基于Flash Media Server的视频教学系统的设计与实现 725 tIy{ 式有限.而基于FMS的教学系统将解决以上局限 System.Diagnostics.Process.Start(startInfo); return Exportifle;} 性,不仅支持多种文档格式(常见的Office文档、网 catch(Exception err) 页文件、文本文件等),而且能够实时互动共享;通 {return er.Message;} 过Adobe FlashPaper将共享的文档格式转换为 } Swf,应用FlashPaper提供的API接口实现实时互 3.4交流协作工具 动,在系统环境下,只要能创建一个共享文档为 Swf文件,并且在其内部集成一定的指令集,就能 3.4.1双向视频交流 够通过设计好的文档共享接口实现共享操作. 双向视频交流模块包含一个教师视频窗口,多 个学生视频窗口,用户在线列表区和文本交流区. 4结论 由多点客户端通过Web与FMS服务建立连接, 利用Flash Media Server建立客户/服务器架 FMS提供即时音视频交流服务,将各个用户端的 构的视频教学系统,充分利用了Flash流媒体技术 语音、视频、文本等多媒体信息有效采集、编码、转 的优越特性,不仅开发效率高,而且运行快速稳 换,通过合理控制然后进行传输.学生用户可以通 定,具有实用性强、体系结构合理、性能优良、安全 过单击视频播放控件的按钮来播放或停止自己的 性好、方便易用等突出优点,必将为流媒体应用于 音视频,主要代码如下: 网络视频教学发挥积极的促进作用,使教师与学生 function playVideo(){ 可以完全摆脱传统课堂的教学组织形式,充分体现 my—nsVoide=ntLq ̄ 了多媒体网络视频在教学中的重要地位. Ne ̄tmam(m root.client——nc); my—nsVoide.publish(”comStrcam”); my—nsVoide.attachVideo(1ocal——cam); 参考文献: innsVoide=new [1】 赵俊杰.关于高校网络化教学系统构建的思考[J].白城师范 —NetStrcam(1ocal—cam);} 学院学报,2010,24(6):95—97. function dotevideo(){ [2】 益永钢.即时交流互动分享一论网络视频互动教学的应 this.mynsVoide.publish(fla1); 用研究[J].中国电化教育,2006(10):49-52. —//关闭视频(关闭音频方法类似) [3] 张亚飞.NET for Flash FMS动态网站开发手札[M],化学工 this.my业出版社,20lO. —nsVoide.attaehVideo(nul1); this.my —nsVoide.elo ̄(); [4]文玉锋,侯虹.基于P2P技术的远程视频教学系统研究[J],……I 电化教育研究。2OO9,(4):62-64. 3.4.2创建多人文档共享 [5]刘晓琴,何丕廉.基于P2P流媒体技术的网络视频教学系统 在传统的基于Web的教学系统中,文档共享 研究[J],天津理工大学学报,2007,23(6):24-26. [6]胡建平.基于P2P流媒体的视频教学系统的设计与实现[J】. 是没有实时性的,教师事先将文档上传到服务器, 微计算机应用,2008,29(6):40—45. 教学时让学生下载观看,而且能同步显示的文档格 The Design and Realization of Video Teaching System Based Oil Flash Media Server SHENG Xiao—qing, WU Wei—xin (Department ofEducational Technology,Q,mnTh ̄ll Normal Universlty,Q.nm,hou 362000,C[1l ̄a) Abstract:This thesis aimed at currendy the practicality instance of web—based teaching.On hte basis of network teaching system building needs,the overall design of the network video teaching system was discussed based on flash media server technology.Take the.NET and the FLASH technology as to prop up,a detailed a— nalysis and hte reasonable solution to”audio and vide to record and live”,”the flow video play”,”the video ifle upload”and”video communication”were carried out.A visual and intuitionistic lfat of video course was pmvid— ed to the student.The system would bring great advantage forth on the convenience ofr hte user and cutitng down hte burden of server. Key words:stream media;nash media server;video teaching system;FLV 

因篇幅问题不能全部显示,请点此查看更多更全内容