Ixxxxx学院本科毕业设计(论文)题目:多媒体播放器设计学生姓名:学号:系(部):数学与计算机科学系专业:计算机科学与技术入学时间:201年月导师姓名:职称/学位:教授导师所在单位:II多媒体播放器设计摘要本文主要是开发了一款简单的多媒体播放器。可以播放多种格式的音频、视频文件,该播放器实现了的基本功能包括:音频视频文件的打开、添加到菜单、媒体的播放、音量大小的调节、播放时间的拖动、暂停播放、停止等。使之成为一款简易的媒体播放设备,能够完美的播放市面上大多数的音频、视频文件。在毕业设计中,系统开发平台为WindowsXP操作系统,程序设计环境采用VisualStudio2010。程序通过调试运行,初步实现了设计目标,本程序是基于MFC集成开发环境,利用directshowsdk实现媒体播放的功能的,除了基本的播放控制外,还具有全屏播放、静音等实用功能。关键词:多媒体;播放器;directshowsdkIIITheDesignandImplementationofMultimediaPlayerAbstractThisarticleisdevelopedasimplemultimediaplayer.Itcanplaymultipleformatsofaudio,videofiles,TheplayersrealizethebasicfunctionsincludethatopentheAudioandvideofiles,addtothemenu,andmediaplayback,adjustthevolumesize,playtime,drag,pause,stopandsoon.Makingitasimplemediaplayerdevice,mostaudioorvideofilesinthemarketcanbeplayedperfectlybythismediaplayer.IntheGraduation,TheSystemDevelopmentPlatformisWindowsXP,TheProgrammingEnvironmentisVisualStudio2010.Programbycommissioning,Initialdesigngoalsachieved,theprogramisbasedonMFC.IntegratedDevelopmentEnvironment.Usingthedirectshowsdkcontroltoachievethefunctionsofmediaplayer.Inadditiontothebasicplaybackcontrols,Italsohasmanyotherutilityfunctions,suchasplayingFullScreen,Muteandsoon.Keywords:multimedia;player;directshowsdkIV目录第一章绪论...........................................................11.1引言...............................................................11.2系统设计的目的和意义...............................................11.3研究背景...........................................................21.4论文主要研究内容及论文结构安排.....................................4第二章开发平台介绍和软件的初步设计.......................................52.1开发平台的介绍.....................................................52.2软件的需求分析和模块设计...........................................52.2.1软件的需求分析...............................................52.2.2软件的模块设计................................................6第三章多媒体播放器软件设计...............................................73.1开发环境配置.......................................................73.2实现GRAPHEDIT模拟.................................................83.3DIRECTSHOW接口实现函数说明........................................83.4模块实现函数说明...................................................93.5主要变量声明......................................................103.6设计多媒体播放器的界面............................................113.7播放器模块设计....................................................11第四章程序实现结果......................................................184.1程序运行结果演示..................................................18结束语:.................................................................19参考文献.................................................................20致谢.................................................................211多媒体播放器设计第一章绪论1.1引言多媒体就是多重媒体的意思,可以理解为直接作用于人感官的文字、图形、图像、动画、声音和视频等各种媒体的统称,即多种信息载体的表现形式和传递方式。我们所提到的多媒体技术,就是利用电脑把文字、图形、影象、动画、声音及视频等媒体信息都数位化,并将其整合在一定的交互式界面上,使电脑具有交互展示不同媒体形态的能力。它极大的改变了人们获取信息的传统方法,符合人们在信息时代的阅读方式。在当今信息社会,以多媒体为特征的信息技术和信息产业的发展及应用对人类社会产生的影响和作用愈来愈明显,愈来愈重要。多媒体能改变信息的包装,实现知识信息数字化,为人们获得知识信息提供极大的方便和无穷的乐趣。友善的人机界面、多种多样的多媒体教学软件、诱人的电子游艺节目、身临其境的多媒体导购系统、五花八门的信息家电和高效方便的网上查询等等,无不渗透着多媒体的作用,它引导人们进入了一个有声有色的世界。同时,多媒体的发展和应用,极大地推动了各行各业的相互渗透和飞速发展,大大改变了人类社会的工作环境和生活方式。可毫不夸张地说,多媒体产业的形成和发展,不仅引起了计算机工业的一次革命,也正在深刻地影响人类社会发生巨大的变革。多媒体技术的发展在很大程度上依靠于多媒体软件开发的水平。目前,不管是支撑多媒体系统的系统软件,还是管理和开发软件,以及多媒体的应用软件都在能力和数量上还难以满足多媒体飞速发展的需要。特别是多媒体应用软件的缺乏一直是制约多媒体产业发展的瓶颈问题,因此己成为多媒体研究和开发的关键问题。如何制作和设计出大量高质量的多媒体应用软件是计算机从业人员所面临的迫切课题,也是广大人民群众所关心的事情。多媒体播放器的设计是一门集计算机技术和数字多媒体技术于一体的综合设计。随着中国计算机技术、宽带网络技术的发展,越来越多的人开始重视多媒体播放器的发展与应用。1.2系统设计的目的和意义这个课程设计的目的就是制作一个能够播放音频、视频文件的播放器,并使它具备一些简单的操作处理功能,如播放暂停的控制,音量的调节,视频的全屏播放,视频进度的调节等等。将这个小型播放软件做得尽量的小巧、实用。多媒体技术是当今信息技术领域发展最快、最活跃的技术,是新一代电子技术发展和竞争的焦点。多媒体技术融计算机、声音、文本、图像、动画、视频和通信等多种功能于一体,借助日益普及的高速信息网,可实现计算机的全球联网2和信息资源共享,因此被广泛应用在咨询服务、图书、教育、通信、军事、金融、医疗等诸多行业,并正潜移默化地改变着我们生活的面貌。多媒体技术已经成为当今比较热门的研究课题,特别是伴随着多媒体技术的网络化,使得多媒体技术的发展前景无限广阔,因此掌握多媒体及多媒体技术的相关知识,了解多媒体技术当前的发展状况及未来的发展前景,并能熟练地进行多媒体技术的开发,对于当前即将毕业的大学生来讲,是很有发展前途的。基于此,我选择了此课题——多媒体播放器的设计与实现,期望通过对此课题的研究与开发,能深入了解多媒体技术,特别是掌握多媒体技术在媒体播放器中的应用。1.3研究背景本设计采用的MicrosoftVisualStudio2010是微软公司发布的MicrosoftVisualStudio软件开发工具的较新版本,此开发软件支持C#、VB.NET、C++、ASP.NET等多种编程语言,功能非常强大。由于本设计要实现音频和视频解码,所以要用到directshowsdk开发包。DirectShow是微软公司在ActiveMovie和VideoforWindows的基础上推出的新一代基于COM(ComponentObjectModel)的流媒体处理的开发包,与DirectX开发包一起发布。DirectShow使用一种叫FilterGraph的模型来管理整个数据流的处理过程,运用DirectShow,我们可以很方便地从支持WDM驱动模型的采集卡上捕获数据,并且进行相应的后期处理乃至存储到文件中。这样使在多媒体数据库管理系统(MDBMS)中多媒体数据的存取变得更加方便。它广泛地支持各种媒体格式,包括Asf、Mpeg、Avi、Dv、Mp3、Wave等,为多媒体流的捕捉和回放提供了强有力的支持。ActiveMovie,开发代号Quartz,这个由GeraintDavies为微软公司设计的DirectShow的前身,在Windows3.0时代,是作为一种对当时最流行的媒体平台QuickTime的回应而开发的。ActiveMovie最早的出现是被附加在Windows95上面的并且需要系统安装了IE3.0。它当时的使命是作为IE的附件播放在其窗口内的媒体文件,正如当时QuickTime为Netscape以及IE提供的服务那样,它的另一个功能是作为Windows视频技术(VFW,VideoForWindows)的一个替换,特别地为在VFW架构中难于处理的MPEG(移动图象专家组格式文件)文件提供辅助处理。在1998年,大致在DirectX5年代的时候,ActiveMovie被重命名为DirectShow(反映了微软公司在那时正在努力加强“直接地”在一个通常的取名系统之下与硬件合作的技术)并且被包含为DirectMediaSDK的一部份。在DirectX的7版中,DirectShow变成了DirectXSDK主要组成部分而且如同3DirectInput等其它DirectXAPIs一样被给予了它自己的位置。甚至之后,DirectShow被主要用来接收来自像一个手提摄像机这样的电视输入装置的数据,而且它从文件中显示数