在线视频播放系统的设计与实现本科论文.doc
《在线视频播放系统的设计与实现本科论文.doc》由会员分享,可在线阅读,更多相关《在线视频播放系统的设计与实现本科论文.doc(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 题 目 在线视频播放系统的设计与实现 学生姓名 学号 所在学院 物理与电信工程学院 专业班级 电子1202 指导教师 完成地点 物电学院计算机信息处理分室 2016 年 6 月 5 日 陕西理工学院毕业设计毕业论文设计任务书院(系) 物电学院 专业班级 电子信息工程 学生姓名 一、毕业论文设计题目 在线视频播放系统的设计与实现 二、毕业论文设计工作自 2016 年 3 月 10 日 起至 2016 年 6 月 20 日止三、毕业论文设计进行地点: 物电学院计算机信息处理分室 四、毕业论文设计的内容要求:随着网络的普及,在线播放器也日益普及起来。本设计要求学生利用Visual C+为开发工具,
2、使用DirectShow SDK技术开发一个功能齐全的视频播放器,要求能够对硬盘或存储设备上的多媒体文件进行播放,及在回放或显示过程中,用户可以控制回放的动作和显示特性等相关功能。 五、 毕业论文设计应收集资料及参考文献: 1徐孝凯,张纪勇.C+面向对象程序设计:VC+6.0运行环境M.天津大学出版社2009. 2汪晓平,钟军.VC+网络通信协议分析与应用实现M.北京:人民邮电出版社,2003. 3王艳平,张越.Windows网络与通信程序设计M.北京:人民邮电出版社,2006. 4 Andrew S.Tanenbau.计算机网络(第四版)M.北京:清华大学出版社,2004. 5谢希仁.计算机
3、网络(第五版)M.北京:电子工业出版社,2012. 6朱桂英.张元亮 Visual C+网络编程开发与实践M.清华大学出版社.2013. 六、 毕业论文设计的进度安排: 3月2日3月29日:查阅资料,完成初步设计方案和开题报告。 4月1日4月26日:根据视频播放系统的工作原理,给出设计方案,及软件流程图。 4月29日5月24:并在软件环境下进行运行调试,进一步完善系统功能,整理资料; 5月27日6月7日:撰写、修改毕业设计论文。 6月10日6月15日:打印论文准备并完成答辩。 指导教师签名 系(教研室)主任签名 专业负责人签名 批准日期 在线视频播放系统的实现与设计(陕西理工学院物理与电信工程
4、学院电子信息工程专业,2012级2班,陕西 汉中 723000)指导教师:摘要本设计在Visual C+环境下,利用MFC程序设计方法。并利用DirectShow的播放器核心技术,重点实现了播放、暂停、停止 、声音控制、进度控制、抓取视频帧、播放模式控制、全屏等功能。通过对系统的需求分析、设计、实现,完成了多媒体播放器系统,各项功能使用正常,并给出了实现关键代码。DirectShow是基于COM组件,它是二进制级别的(不受限于编程语言和操作系统),具有很好的兼容性和移植性。关键字Visual C+;MFC;DirectShow;播放器The design and implement of on
5、line video broadcast systemCui Yuanyuan(Grade12,Class02,Major electronics and information engineering,School of Physics and Telecommunication Engineering,Shaanxi University of Technology,Hanzhong 723000,Shaanxi)Tutor:Li JuyeAbstract:This design uses MFC program design methods Under Visual C+ environ
6、ment. At the same time,uses DirectShow player core technology. Focus to achieve the play, pause, stop, sound control, schedule control, grab video frames, playback mode control, full screen and other functions.Through the system requirements analysis, design, implementation, completed a media player
7、 system, various functions normal use, and gives the realization key code.DirectShow is based on the COM component, it is a binary level (not limited to programming languages and operating systems), has good compatibility and portability. Keywords: Visual C+ ;MFC;DirectShow;Player目录1.引言11.1背景11.2 研究
8、目的11.3 开发环境及语言11.3.1 VC+2010平台11.3.2 MFC概述12. DirectShow介绍32.1 DirectShow系统32.2 DirectShow技术32.2.1 过滤器32.2.2 COM组件42.2.3针脚Pin42.2.4 Filter Graph52.2.5 Filter Graph Manager52.2.6 Filter Graph中的数据流动52.3 Directshow事件交互52.4 基于DirectShow的应用程序开发72.5播放媒体文件73.多媒体播放器的设计93.1系统功能设计93.1.1媒体文件添加9i3.1.2媒体文件存储和显示9
9、3.1.3媒体文件播放及控制93.2系统结构设计93.3 播放器滤波器链表结构设计93.4播放视频文件的流程93.5 Directshow智能连接103.5.1智能连接概述103.5.2智能连接的实现104.视频播放器的开发124.1开发环境的配置124.2基于对话框的MFC应用程序134.3 编辑对话框界面134.4.视频窗口控制144.5封装CDXGraph144.6.创建Filter Graph154.7创建播放主题154.7.1 打开按钮响应函数154.7.2渲染154.7.3播放按钮响应函数164.7.4静音控制174.7.5全屏174.7.6暂停、停止18ii4.7.7抓图按钮响应
10、函数194.7.8退出按钮响应函数204.7.9进度条的实现205.播放控制215.1视频窗口中的右击快捷菜单215.2相应菜单子项225.3速率控制236.程序测试246.1 多媒体播放器的主题界面246.2程序功能实现246.3 测试结论24结束语25致谢26参考文献27附录A28附录B34iii1.引言随着社会的发展,信息技术越来越发达,在线视频播放器在未来社会应用也会越来越普遍。Microsoft的Windows操作系统作为全球最主流、最常用的操作系统,掌握在它上面的多媒体开发技术显得越来越需要,相对于其他多媒体开发技术,掌握它本身提供的DirectX多媒体开发包显得更为适合。Dire
11、ctShow是微软提供的多媒体开发包DirectX中的一部分,它是建立在DirectDraw和DirectSound基础之上。 Microsoft给DirectShow程序员提供了一套开发多媒体标准的、统一的、高效的API接口,这些接口使得多媒体数据的回放变得简单,剥离了应用程序和硬件底层的差异性。而DirectShow是基于COM组件的开发包,COM是基于二进制代码级的协议(与编程语言无关的协议),对使用DirectShow开发的软件以后的移植和兼容问题提供了良好的解决方案。 DirectShow使用智能连接开发多媒体应用程序,大大简化了开发人员工作量,同时开发人员亦可开发自定义的滤波器。使
12、得基于DirectShow的应用程序可以充分满足不同用户的需求。在未来几年中,DirectShow技术的发展前景将是非常广阔的。1.1背景 当今信息技术越来越发达,社会越来越信息化、智能化,多媒体在未来社会应用越来越广泛。Microsoft的Windows操作系统作为全球最主流、最常用的操作系统,掌握在它上面的多媒体开发技术显得越来越需要,相对于其他多媒体开发技术,掌握它本身提供的DirectX多媒体开发包显得更为适合。1.2 研究目的 DirectShow是微软提供的多媒体开发包DirectX中的一部分,它是建立在DirectDraw和DirectSound基础之上。 Microsoft给D
13、irectShow程序员提供了一套开发多媒体标准的、统一的、高效的API接口,这些接口使得多媒体数据的回放变得简单,剥离了应用程序和硬件底层的差异性。而DirectShow是基于COM组件的开发包,COM是基于二进制代码级的协议(与编程语言无关的协议),对使用DirectShow开发的软件以后的移植和兼容问题提供了良好的解决方案。 DirectShow使用智能连接开发多媒体应用程序,大大简化了开发人员工作量,同时开发人员亦可开发自定义的滤波器。使得基于DirectShow的应用程序可以充分满足不同用户的需求。在未来几年中DirectShow技术的发展前景将是非常广阔的。1.3 开发环境及语言本
14、文中视频播放系统使用C+语言及Directshow SDK技术,使用visual c+ 2010软件在directshow的开发环境下进行视频播放器的开发。1.3.1 VC+2010平台Microsoft Visual C+,(简称Visual C+、MSVC、VC+或VC)C+语言开发工具,一个集成的开发环境,能够提供编辑C语言,C+以及C+/CLI系列编程语言。VC+整合便利的除错工具,尤其是整合Windows API、三维的动画DirectX API,Microsoft .NET框架1。Microsoft Visual C+是微软公司推行开发的Win32环境程序、面向对象且可视化的集成化
15、可编程系统。其主要优点如下:(1)程序框架能够自动生成(2)便于灵活类管理(3)代码编写与界面的设计可集成相互操作(4)可开发各种程序(5)支持各个数据库的接口、OLE2、WinSock网络和3D控制界面1.3.2 MFC概述MFC(Microsoft Foundation Classes)是微软公司所提供的类型库(class libraries),以C+类的方式封装了Windows的API,且含有应用程序的框架,来减少程序开发者的工作量。MFC中的关键技术:(1)MFC程序的初始化过程建立一个MFC窗口:从CWinApp派生应用程序类,然后建立应用程序对象(theApp)。(2)动态创建运行
16、的时候创建指定的类的对象。比如视对象、框架的窗口对象等等,比如文档对象需由文档模版类对象进行动态的创建。 (3)串行化尽管程序中有着各种数据,串行化机制也如流水般按照顺序储存置于单一文件里,并且也能按照顺序取出,成为不同对象的数据。 (4)消息映射和传递MFC把SDK编程中对消息的产生、传递、到过程函数中响应的过程封装起来,形成消息映射宏、消息映射表和消息响应函数体系,更加直观和便于操作2。 2. DirectShow介绍2.1 DirectShow系统DirectShow是新一代基于COM的流媒体处理的开发包,是微软公司在ActiveMovie和Video for Windows的基础上推出
17、的,与DirectX开发包共同发布。Directshow为多媒体的回放和捕捉提供了有力强大的支持。应用DirectShow,能方便地在支持WDM采集卡中捕获数据,且后期进行一些相应处理乃至储存到文件里。这样在多媒体的数据库管理系统里多媒体的数据存取就会更加方便。它的架构如图1所示。图中央即是DirectShow系统,虚线下面是Ring 0特权级硬件设备,虚线上面是Ring 3特权级的应用层。DirectShow系统处于应用层。它用Filter Graph模型来管理整体数据流的处理。参与数据的处理的各功能模块称做Filter;各个Filter在Filter Graph中按相应顺序连成一条“流水线
18、”协调工作3。事件Directshow文件系统RenderingFilters命令文件系统因特网VFW采集设备内核流架构WDM采集MPEG2硬件解码器ACM/VCM编解码器显卡DirectDraw应用程序 Filter Graph ManagerSourceFiltersTransformFilters声卡DirectSound图2.1 DirectShow架构2.2 DirectShow技术2.2.1 过滤器过滤器是DirectShow 的基本组成单元。DirectShow把数字媒体的处理(播放、捕获和格式转换)划分为一些独立的步骤,过滤器就是完成一个或多个步骤的COM 对象。DirectS
19、how提供了一组标准的过滤器供应用程序使用,程序开发者也可以创建自定义的过滤器来扩充Directshow的功能,但必须是以COM形式建立的4。按照功能来分,Filter大致分为3类:Source Filter、Transform Filter和Rendering Filter。所有能生成流的DS filter都可以认为是Source filter。这个流可以源自硬盘上的文件,也可以是实时设备,如话筒,摄像头,或是DC。如果这个流是源自磁盘,那么它可以是预先记录的WAV, AVI或是Windows Media文件。相应的,如果源是一个实时设备,那么它可以是Window兼容的所有外设。DS是紧密绑
20、定在WDM上,所有的安装后的多媒体设备的WDM驱动都自动可作为DS的源filter。因此,例如,安装了驱动的摄像头可以立即成为DS的源filter。将实时设备转换成DS流的源filter又可以称作捕捉源filter。第12章详细描述了源filter的设计实现。Transform Filter是DS着墨最多的工作。转换filter从其它filter(可能是源filter)接收一个输入流,对流执行某些操作后,将流传输给下一个filter。几乎所有能相像得到的对音视频流的操作都可以在转换filter中实现。一个转换filter可以解析流的数据,编码它(可能将WAV数据转换成MP3格式)或解码它,或对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 在线视频 播放 系统 设计 实现 本科 论文
限制150内