基于VC++的多媒体播放器设计与实现毕业设计论文_第1页
基于VC++的多媒体播放器设计与实现毕业设计论文_第2页
基于VC++的多媒体播放器设计与实现毕业设计论文_第3页
基于VC++的多媒体播放器设计与实现毕业设计论文_第4页
基于VC++的多媒体播放器设计与实现毕业设计论文_第5页
已阅读5页,还剩67页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科毕业设计(论文)说明书课题名称 基于 VC+的多媒体播放器设计与实现毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的 指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和 致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不 包含我为获得 及其它教育机构的学位或学历而使用过的材料。 对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。矚慫润厲钐瘗睞枥庑赖。作 者 签 名:日期:指导教师签名:日期:使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的 规定,即:

2、按照学校要求提交毕业设计(论文)的印刷本和电子版本;学 校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览 服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不 以赢利为目的前提下,学校可以公布论文的部分或全部内容 。聞創沟燴鐺險爱氇谴净。作者签名: 日 期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法 律后果由本人承担。 残骛楼諍锩瀨濟溆塹籟

3、。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、 使用学位论文的规定, 同意学 校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被 查阅和借阅。本人授权 大学可以将本学位论文的全部或部分 内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保导师签名:日期: 年 月存和汇编本学位论文。 酽锕极額閉镇桧猪訣锥。涉密论文按学校规定处理。作者签名: 日期:年月日注意事项1. 设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要( 300 字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一

4、编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2. 论文字数要求:理工类设计(论文)正文字数不少于1 万字(不包括图纸、程序清单等),文科类论文正文字数不少于 1.2 万字。彈贸摄尔霁毙攬砖卤庑。3. 附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4. 文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不 准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应 符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不 准用徒手画 謀荞抟箧飆鐸怼类

5、蒋薔。3)毕业论文须用 A4 单面打印,论文 50 页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5. 装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订摘要随着互联网的快速发展, 多媒体技术和多媒体通讯技术的逐步成熟使得信息从单一 媒体到多媒体的方向发展,人们对多媒体信息的需求量日益增加,多媒体播放器也应运 而流行起来。大多数多媒体播放器软件的功能基本大同小异,一般都可支持本地媒体文 件和网络媒体文件。 功能上已经大致完善, 但是也有不足之处。 论文主要作了以下工作 : 厦礴恳蹒骈時盡继價骚。一、详细地介

6、绍了该课题研究的目的和多媒体技术发展的现状和发展趋势,介绍该 课题的主要工作内容和难点所在。 茕桢广鳓鯡选块网羈泪。二、对软件可行性研究初步项目计划、需求的分析,同时通过用户调查和对软件性 能和功能了解制定开发流程,设定好项目的开发环境,之后逐步按流程和需求完成软件 的初步设计,对于设计实现过程中的难题,寻找可行的解决方案。 鹅娅尽損鹌惨歷茏鴛賴。三、对播放器程序的概要设计,播放器系统按功能进行建立和划分模块,以及确立 模块与模块的接口,并调用好各模块和整体间连接,再者就是分析好层次结构,设计友 好的人机界面,最后再软件的详细设计以及实现主要的功能代码,列出该部分函数的代 码。 籟丛妈羥为贍偾

7、蛏练淨。四、对播放器程序的测试,在特定的测试环境的平台下,主要是于软件所实现的基 本功能进行了黑盒测试,通过测试发现输入还有输出的逻辑错误、以及在初始化时、因 为错误导致的程序的终止,界面的显示发生不正常,程序的性能和功能发生了不正确错 误等等。 預頌圣鉉儐歲龈讶骅籴。通过使用 Windows 7 操作系统对多媒体播放器的设计与实现, 程序设计的开发工具 采用 Microsoft Visual C+ 6.0 。在程序设计中,使用了微软公司的 ActiveX 控件 Windows Media Player(WMP) 通过不断运行调试,初步实现了多媒体播放器的软件开 发的基本功能。基于 MFC 集

8、成开发环境,使用 Windows操作系统提供的 ActiveX 实现 编程。并完成需求的功能。并实现了占用内存比较小,界面简洁明了,功能较完全,支 持多格式的视频和音频,同时具有程序健壮性强等特点。 渗釤呛俨匀谔鱉调硯錦。关键词: 多媒体技术,播放器, ActiveX ,MFC多, 媒体 ,MCIAbstractWith the Internet and the development of information technology, multimedia technology matures and multimedia communications technology makes i

9、nformation from a single media to multimedia direction, increasing peoples demand for multimedia information, multimedia player should be transported and popular. Most multimedia player software functions substantially similar, generally can support local media files and online media files. The func

10、tion has been substantially improved, but there are drawbacks. Paper made the following work: 铙誅卧泻噦圣骋贶頂廡。A detailed description of the current situation and development trend of purpose and multimedia technology development in the research, introduces the main content擁. 締凤袜备訊顎 轮烂蔷。Second, preliminar

11、y feasibility study of software project planning, requirements analysis, while developing the development process through user surveys and understand the performance and functionality of the software, set up the projects development environment, then gradually according to the process and requiremen

12、ts to complete the preliminary design software, For the design and implementation problems in the process, to find viable solutions. 贓熱俣阃歲匱阊邺镓騷。Third, the player programs outline design, player system set up and divided by function module, and the establishment of an interface module and modules, an

13、d each module and the overall good call en, addition is good hierarchy analysis, design-friendly detailed design of man-machine interface, software, and finally achieve the main function of the code坛. 摶乡囂忏蒌 鍥铃氈淚。Fourth, the test player program, in platform-specific test environment, primarily in the

14、 realization of the basic functions of the software black box testing were found to input as well as output of logic errors, and pass the test during initialization, because termination errors of the program, the interface displays unusual occurrence, performance and functionality of the program is

15、not correct the error occurred, and so on蜡.變黲癟報伥铉锚鈰赘。Through Windows 7 operating system design and implementation of multimedia player used programming development tools using Microsoft Visual C + 6.0. In programming, the use of Microsofts ActiveX controls -Windows Media Player (WMP), by constantly

16、running debugging, the initial realization of the basic functions of the multimedia player software development. MFC-based integrated development environment, using ActiveX Windows operating system provides for programming. And complete functional needs. And to achieve the memory for relatively smal

17、l, concise interface, features a more complete multi-format video and audio, but also has robust procedures and other characteristi買cs鲷.鴯譖昙膚遙闫撷凄。綾镝鯛駕櫬鹕踪韦辚糴。Keywords: multimedia player, ActiveX, MFC, multimedia,MCI目录1 绪论 . 1.1 前言 . 1.2背景1.3 研究目的 1.4 相关技术 1 驅踬髏彦浃绥譎饴憂锦。1 猫虿驢绘燈鮒诛髅貺庑。1 锹籁饗迳琐筆襖鸥娅薔。3 構氽頑黉碩

18、饨荠龈话骛。3 輒峄陽檉簖疖網儂號泶。2 需求分析 . 6 尧侧閆繭絳闕绚勵蜆贅。2.1 播放器软件基本调查 . 6 识饒鎂錕缢灩筧嚌俨淒。2.2 软件功能分析 . 7 凍鈹鋨劳臘锴痫婦胫籴。2.3 软件运行环境 . 9 恥諤銪灭萦欢煬鞏鹜錦。2.4 业务流程分析 . 10 鯊腎鑰诎褳鉀沩懼統庫。2.5 数据流程分析 . 10 硕癘鄴颃诌攆檸攜驤蔹。13 氬嚕躑竄贸恳彈瀘颔澩。14 釷鹆資贏車贖孙滅獅赘。17 怂阐譜鯪迳導嘯畫長凉。19 谚辞調担鈧谄动禪泻類。2.6 可行性分析 . 12 阌擻輳嬪諫迁择楨秘騖。3 系统总体设计 3.1 概要设计 .3.2 界面设计 .4 详细设计 . 4.1

19、功能模块详细设计 . 19 嘰觐詿缧铴嗫偽純铪锩。4.1.1 文件模块设计 . 22 熒绐譏钲鏌觶鷹緇機库。4.1.2 播放控制模块设计. 24 鶼渍螻偉阅劍鲰腎邏蘞。4.1.3 播放列表模块设计. 29 纣忧蔣氳頑莶驅藥悯骛。4.1.4 播放循环模块实现. 32 颖刍莖蛺饽亿顿裊赔泷。4.1.5 音量模块实现 . 33 濫驂膽閉驟羥闈詔寢賻。4.1.6 定时关闭 . 34 銚銻縵哜鳗鸿锓謎諏涼。4.1.7 对话框初始化 . 36 挤貼綬电麥结鈺贖哓类。5 软件测试 . 38 赔荊紳谘侖驟辽輩袜錈。5.1 测试方案 38 塤礙籟馐决穩賽釙冊庫。5.2 测试用例 38 裊樣祕廬廂颤谚鍘羋蔺。根据

20、测试过程制定两组测试用例,用例组如下表 5.1 和表 5.2 所示 .38 仓嫗盤紲嘱珑詁鍬齊驁。5.3 黑盒测试 39 绽萬璉轆娛閬蛏鬮绾瀧。40 骁顾燁鶚巯瀆蕪領鲡赙。41 瑣钋濺暧惲锟缟馭篩凉。43 鎦诗涇艳损楼紲鯗餳類。44 栉缏歐锄棗鈕种鵑瑶锬。5.3.1 文件功能 5.3.2 播放控制功能5.3.3 播放列表功能5.3.4 音量控制模块5.3.5播放模式模块 45 辔烨棟剛殓攬瑤丽阄应。5.3.6定时关闭模块 45 峴扬斕滾澗辐滠兴渙藺。结束语 . 46 詩叁撻訥烬忧毀厉鋨骜。致谢. 47则鯤愜韋瘓賈晖园栋泷。参考文献 . 48 胀鏝彈奥秘孫戶孪钇賻。1.1前言1 绪论随着科学技术

21、的发展,在计算机,手机普及的今天,信息传播速度越来越快,也越 来越广,多媒体作为一种将图像,声音,文本等多种媒体据为一身的存在形式,在计算 机、手机、随身听等载体中出现,成为人们在生活中获取信息来源之一。 鳃躋峽祷紉诵帮废掃 減。在互联网起步的年代,网络技术、计算机硬件水平较低的限制,人们获取新闻信息 主要还是以看报纸,电视,还有人与人间的交流,媒体的传播主要以方式广播电视里, DVD 播放器,当今网络技术的不断提高、迅速发展,人们能够更方便的连接互联网来 获取信息,流媒体的出现,多媒体的发展对世界的信息文化传播起到了促进作用,加快 了信息全球化的发展,同时也成为了信息化今天的一部分。 稟虛嬪

22、赈维哜妝扩踴粜。播放器作为一种播放视频或音频文件的软件, 把数字信号加工处理成图片声音等多 种方式,识别展现同时存在一种或者多种媒体文件,媒体作为信息的载体,存储设备作 为媒体的载体,由载体 (硬盘等 )播放器多媒体信息 (视频音频 ) ,使得存在载体中的 媒体信息得以彰显。,大多数播放器携带解码器用来还原已经过的压缩媒体文件,同时 播放器还需要自带一组变换频率缓冲算法。 陽簍埡鲑罷規呜旧岿錟。现在播放器主要为音频播放器 (代表软件: 天天动听, 千千静听,酷狗,QQ 音乐等) 和视频播放器 (代表软件: RealPlayer,KMPlayer ,暴风影音,迅雷看看等 )。沩氣嘮戇苌鑿鑿 槠谔

23、應。常用多媒体的文件主要格式包括:音频格式 (AIFF;AAC;MP3;WA VE;WMA 等 )、视 频格式 (F4V;AVI;RMVB;MOV ,WMV,MKV 等)。钡嵐縣緱虜荣产涛團蔺。1.1.1 设计目标设计一个能支持多种格式,包括视频格式和音频格式的的播放器,有良好的人机交 互界面,且播放功能完善,还附加其他需求的而添加的功能,支持播放列表,音量控制 等,具体的功能基本符合当今视频音频播放器的需求来设计,并在这标准上根据自己的 需要做一下修改。 懨俠劑鈍触乐鹇烬觶騮。1.2 背景媒体是作为信息载体的一种形式,在计算机中,它有两种含义: 1. 作为传播信息的 载体,有包括文字、图片、

24、声音、语言、视频、音频等。 2. 作为存储信息的载体,比如 ROM(只读存储器)、 RAM(内存)、磁盘等储存设备。媒体作为信息的载体,它接收各 式的数据信息, 如图像, 声音, 文字等,再经过了计算机处理以及加工之后, 以文字形式、 声音形式、图片形式、动画形式等多种形式彰显, 实现 输入/ 输出(I/O) 方式的多元化, 同时改变了旧时计算机只能接受输入输出文字 信息、数据信息的局限性。通常我们将 媒体分为了五大类: 謾饱兗争詣繚鮐癞别瀘。1 、感觉媒体:能够直接作用于人的感官,使人产生感觉的媒体,如声音、图像、 动画、文字等。2 、表示媒体:为传输感觉而创造出来的中间手段,能够使感觉有效

25、地从一处传递 到另一处。3 、表现媒体:用在感觉媒体和信息传输中电信号之间转换所用的媒体,大致是指 信息输入、输出的工具设备。 包括输入媒体(例如:鼠标、 摄像机、键盘以及麦克风等) 和输出媒体(例如:屏幕、纸和喇叭等)。 呙铉們欤谦鸪饺竞荡赚。4、存储媒体:以存储表示媒体的载体。5、传输媒体:用来将表示媒体从某一处传输到另一处的物理实体。用来进行网络 传输的通讯介质(例如:有线方式有同轴电缆、 光纤以及双绞线等,而无线方式则有 wifi 、 蓝牙和红外线等)。 1 莹谐龌蕲賞组靄绉嚴减。多媒体作为近几年出现的新生事物,是融合两种或者多种媒体的形式,我们称之为 多媒体,这种混合形式的信息载体,

26、在当今的地位显得越来越重要,在人们去信息需求 量大的今天,多媒体举足轻重,相信在不久的一段时间中,多媒体会朝着更好的方向快 速的发展,如全息投影(虚拟成像技术) ,都开始新的技术革命。 人接受信息主要通过: 视觉、听觉、嗅觉、触觉、味觉。也就是说明人有五种接受信息的方式,文字信息只能 靠视觉获取,声音靠听觉,同理气味靠嗅觉和味觉,压力和温度靠触觉。其中90%的信息来自视觉, 想象一下。光是看一段动画就类似感觉到了 90%的信息,此时再加上声音, 温度,压力,气味的结合,那就是身临其境了吗? 麸肃鹏镟轿騍镣缚縟糶。多媒体技术 (Multimedia Technology) 是一种将计算机中图像方

27、面、文字方面和声 音方面等各式各样的信息融合一体,形成了计算机和用户之间人机交互作用的技术。多 媒体技术涉及的是计算机的相关的对象的产物只属于计算机领域的技术,所以说电视, 广播等均不属多媒体技术的范围。 2 納畴鳗吶鄖禎銣腻鰲锬。多媒体技术的特点:1. 集成性和多样性。多媒体融合了多种单一媒体聚于一身,经过对在计算机媒中以 数字信息化处理和加工形成一人具有多种属性的新形式,能更好的传达和承载信息。具 有媒体无法具有的优势。 風撵鲔貓铁频钙蓟纠庙。2. 数字化。多媒体以数字形式存在。3. 人机交互性。人机交互就是多媒体的一大特点。它形成了人与计算机、人与计算 机及计算机间的交互,交互使人感觉身

28、临其境、置身其中,更有利用户使用和控制信息手段。 3 灭嗳骇諗鋅猎輛觏馊藹。4. 实时性。画面和声音(信息)等能随时间而动态的变化1.3 研究目的近年随着来计算机产业和科学技术的发展,硬件的成本不断减少,传输瓶颈不断的 突破,个人计算机性能的提高应用越来越普及。突破硬件条件的限制,对图像,视频等 更高层次的支持,在计算机存储容量,存储媒体的信息容量扩大,网络飞跃式的发展, 网络传输提高速度上,传输媒体显得更方便快捷,媒体交互变得更容易,使得多媒体应 用更加的广泛,在新闻、广告、教育、娱乐、科研领域应用,并且得到很好的利用,于 是我萌生尝试制作一个基于 VC+多媒体播放器, 虽然网上已经有了许多

29、功能强大, 界面 优美,且算法精良的播放器,但大多数软件都以商业利益为主,内嵌广告,以展现多媒 体的工具来传播信息,并通过广告应用多媒体技术到商业领域,也是值得学习借鉴的。 我想可以通过设计和实现的过程学习和应用多媒体技术。 铹鸝饷飾镡閌赀诨癱骝。首先播放器要具有基本的播放控制的功能,且对大多数视频文件( avi , Wm,v mpeg 等)、音频文件( wav ,cd ,aif ,mp3 等)格式的支持,功能有打开、播放、快进、 快退、暂停、停止,有播放列表以及列表管理,进度条,音量控制,单曲循环,列表循 环,随机播放等循环功能,以按键操控、快捷键操控和鼠标操控为主,播放器的界面以 整齐、简

30、洁明了的风格布局,开发使用的操作系统为 WIN 7 旗舰版,测试使用的操作系 统 WIN 7 旗舰版,软件支持系统 WIN 8/WIN 7/WIN XP,开发工具为 VC+ 6.0 ,使用微 软的微软基础类库( MFC)编程,通过 Windows Media Playd 的控件以及 MCI接口,开发 效率也是比较高,精心去设计程序,我们可以完成一个相对不错的播放器。对多种格式 的兼容以及支持,内存占用率比较低,适合配置低的或者是要求不高的用户,国内大部 分攙閿频嵘陣澇諗谴隴泸。1.4 相关技术C+语言( The C+ Programming Language )1983 年,在内尔实验室在 C

31、语言的基础上推出了 C+,一开始曾被称为 new C,之 后又叫 C with Class ,最后得名于 C语言的” +”操作符,表示源自 C语言的自然演变。 趕輾雏纨颗锊讨跃满賺。C+ 是一种面向对象的编程语言,作为一种通用的编程语言,得到了广泛的应用, C+具有多种编程范式:面向对象编程、过程化编程以及泛型编程。作为C 语言扩展,保留了 C 语言的大部分语法,在它的基础上引入了对象的模型,同样设计C语言考虑的是实现对过程事物的控制, 而C+这是思考如何构建对象模型。 C+对 C语言的扩展主要 表现在 1. 类型检查更加严格 2. 增加标准模版库 (STL)3.C+增添了面向对象 4.C+还

32、增 添了对运算符的重载 5.C+增添泛型编程 (Template)6. 增添了异常处理。然而 C 语言和C+最大区别不是在于解决问题的方法,主要是解决问题的思想的方法不同。4 夹覡闾辁駁档驀迁锬減。C+的语言特点: 1. 语言灵活,能高效的执行,具有高级语言的优点, C+可以直接 访问物理地址。 2. 无需复杂的程序设计环境,多种平台支持C+。 3.C+静态类型同 C语言一样具有高效且可移植性。 4. 面向对象语言, 且有很多优秀的程序框架如 MFC、QT、 OWL等。 C+具体开发过程如图 1.1 所示视絀镘鸸鲚鐘脑钧欖粝。图 1.1 开发 C+ 编程步骤MFC微软基础类( Microsof

33、t Foundation Classes )MFC( 微软基础类)是一种应用程序框架,随着 VC+开发工具发布,由一个 CWinApp 类对象和 MFC派生类组成, 可以看成为封装了的 Win32,该类库提供可复用的类库, 微软 提供开发人员使用, MFC作为 VC+的一部分,提供 C+在 windows 平台下的程序开发的 效率和便利, MFC作为 WinAPI(微软提供的 Windows应用程序编程接口) 和 C+的结合, 4允许第三方编程语言进行在 Windows操作系统下应用程序的开发,操作系统提供的 API 供发开人员使用,而系统内部的实现,你可以不需知晓,可以说MFC是微软 API

34、在 C+中的封装。其关键技术在消息映射和消息传递的消息处理机制,在 SDK中没有消息映射 的概念,消息响应传递回调函数,然后判断消息类型,再接着处理。其中MFC中重要的几个类: 1.CWnd作为大多数“窗口”的父类,如 CButton( 按钮) 、 CFrameWn(d框架窗 口)、 CDialog( 对话框)等。 2.CDialog 对话框类。 3.CDC全名设备文本,与 GDI(图形 设备接口)一起负责文字图像显示的工作, 通过对屏幕的像素点进行绘图。 4.CDocument, 文档类主要负责读取和写盘,处理内存和磁盘的交互的。 5.CWinApp 应用程序类, MFC 程序的主函数,程序

35、编译执行的入口和出口,其中 InitInstance ()函数负责初始化窗 体。5 偽澀锟攢鴛擋緬铹鈞錠。ActiveXActiveX 控件或称 OCX控件,作为组件嵌入软件或者网页中,特点有快速开发,支 持多语言的编程, 在 COM组件作为基础建立的 ActiveX, 为开发人员提供了一个开放集成 的平台,在 WEB网页和应用程序中应用广泛 . 緦徑铫膾龋轿级镗挢廟。2 需求分析2.1 播放器软件基本调查多媒体播放器的基本情况就是能对多种媒体格式的视频音频进行数字信号存储的 播放。在网络上已经有了许多流行且优秀的播放器,我们可以先去其概况和功能进行了 解然后制定软件 需 求。 騅憑钶銘侥张礫

36、阵轸蔼。由腾讯公司开发制作的一款支持本地媒体文件本地播放器, 能支持多种格式的视音 频,第一个创立轻量级多播放的内核技术,作为一款“纯净”的多媒体播放器,没有任 何植入广告,也没有强制安装其他软件,且支持的格式多,深受好评。界面:新版的 QQ 影音的界面比旧版更为多彩,但还是一如既往的简洁,同时还提供换肤的功能,不是仅 仅是把界面的背景做更改,而是把整体的布局和窗口的样式以及颜色风格都做了改动。 功能界面有进度条、播放控制按钮、隐藏和显示播放列表。 疠骐錾农剎貯狱颢幗騮。播放控制功能:播放、暂停、停止、上一曲、下一曲、调整进度。 播放列表功能:添加文件夹、添加文件、删除选中项、选中播放,打开自

37、动保存列 表列表排序。播放循环功能:单一播放 ,顺序播放 ,无序播放 ,单一循环播放 ,以及列表循环播放。 对一个本地播放器来说,暴风影音功能算是较为强大的了。但是根据时代的发展, 现在主流的播放器都是据有网络播放和本地播放两种功能。 有服务器支持的播放器可以 直接在播放器中搜索视频,代表暴风影音。 镞锊过润启婭澗骆讕瀘。作为本地播放器拥有播放器的功能,良好的人机交互界面,已经流畅的解码同时也 作为网络播放器,能在线检索资源,在线播放和缓存媒体资源的软件。功能强大,深受 广大用户的喜爱。还具有转换格式可以对当前格式进行转换,同时可以对播放文件进行 片段的截取,可以把某块片段截取下来保存,还有对

38、视频截图,对当前画面的保存成位 图。 榿贰轲誊壟该槛鲻垲赛。2.2 软件功能分析多媒体播放器通过初步的对用户群体调查我了解到作为用户他的需求重点主要在 如下几个方面:1. 要求功能齐全,兼容性强。2. 程序必须具有比较迅速的响应速度。3. 程序要求占的系统资源比较少,同时不存在二级或二级以上的BUG。4. 具有美观友好的人机交互的界面。还经过了对 QQ 影音、暴风影音等几款多媒体播放器分了解,分析制定了多媒体播 放器的基础需求分析如下:1. 实现播放控制功能, 播放控制包括播放、 暂停、停止以及上一曲和下一曲等基本的 播放器控制功能,提供用户进行操作,当播放音乐时播放界面就显示波形动画,还有添

39、 加全屏播放的功能,让用户得到更好的体验。 邁茑赚陉宾呗擷鹪讼凑。2. 实现进度的控制, 进度控制包括播放进度条、 快进和快退, 方便用户了解观看进度 已经对播放进度的控制和改变。每次快进或快退,播放进度前进或者退后百分之一,若 是播放进度的百分之一小于五秒则每次快进或者退后 5 秒。 嵝硖贪塒廩袞悯倉華糲。3. 实现音量控制,上调或下调滑条来控制音量的增加或者减少,音量的变化不影响 操作系统的音量,可以通过勾选音量按钮来开关音量。 该栎谖碼戆沖巋鳧薩锭。4. 实现播放列表以及列表的管理,设计一个按钮能让播放列表显示和隐藏,在列表 中显示媒体文件的信息,如文件名、文件格式、播放时长、所在硬盘的

40、位置,能在列表 里添加文件、移除选中的文件、双击播放选中的文件、清空列表、保存列表、还有调整 文件所在列表的位置,导入列表和导出列表。 劇妆诨貰攖苹埘呂仑庙。5. 实现支持多种格式音频( MP3、WMA 等)、视频格式( AVI 、WMV 等)的打开。6. 实现菜单栏,将所以控制功能都对应实现在菜单栏中,设置快捷键的绑定,以方 便用户使用对应的功能和操作,有利于建立良好的人机交互的界面。 臠龍讹驄桠业變墊罗蘄。7. 界面简洁整齐,让用户一目了然。8. 实现播放循环模式,循环模式包括单一播放 ,顺序播放 , 无序播放 ,单一循环播放 ,以7及列表循环播放9. 实现程序托盘,让程序可以化为最小化图

41、标在后台运行,在播放音乐时,可以给 用户更好的享受。10. 定时关闭功能, 该功能主要面向音频方面的需求设计的作为音频播放器时, 或许 睡觉看书时可以听歌,为用户设计计关机和关闭程序的功能。 鰻順褛悦漚縫冁屜鸭骞。11. 截图功能, 此功能面向视频方面的需求, 对于用户在观看影片时遇到的精彩画面 可以及时的截取下来保存。12. 提供用户换肤的功能, 用户可以自定义部分界面, 让其自己可以根据自己的喜好 制定界面风格。具体功能用例图见图 2.1 所示。图 2.1 多媒体播放器用例图2.3 软件运行环境操作系统: Windows 2000/Windows XP/Windows Vista/Wind

42、ows 7 穑釓虚绺滟鳗絲懷紓泺。92.4 业务流程分析首先开始程序,先是打开一个文件,有两种打开方式,一、从列表里添加文件或者 导入列表打开,二、直接打开文件,如果文件是符合兼容的类型,然后开始播放,否则 视为打开失败,播放过程中有一些的供用户使用的操作,列表打开可以使用列表的循环 模式,用户可以对列表进行一系列的操作。最后是退出,用户使用完毕结束程序。详解 见图 2.2 所示 .隶誆荧鉴獫纲鴣攣駘賽。2.5 数据流程分析根据播放控制模块的数据流程分析,首先获取媒体文件的信息,通过WMP的解码器进行媒体文件的数据解码,解码成数据信息流,其中包括了声音信息流和图片信息流, 声音数据流通过系统进

43、行声音合成,声卡接受到数据流处理并输出。图像数据流通过图10像编码,再进行显示控制的选项,显卡获取数据流,处理并输出。关于系统的数据流图 见图 2.3 和图 2.4 所示. 浹繢腻叢着駕骠構砀湊。图 2.4 多媒体播放器系统 0 层图播放列表模块中通过打开文件添加到播放列表中或者是通过列表添加功能添加文 件,列表中以表格的形式分别文件名,文件的格式,文件播放的时长,文件路径。一目 了然的显示媒体相关信息。 鈀燭罚櫝箋礱颼畢韫粝。基于时间戳的播放过程中(详解见图 2.5 )仅仅对早到的或晚到的数据块进行等待 或快速处理,往往是不够的 如果想要更加主动并且有效地调节播放性能,就需要引入 反馈机制,

44、也就是通过对比音视频的时间戳将当前数据流的播放状态反馈给上层的 “源” 如果音频流滞后,就即时通知音频解码器加快音频流输出,但是如果滞后太多,则直接 将当前数据丢弃,直接跳到下一帧;如果视频流滞后,就通知音频解码器减慢音频输出11速度等待视频流,如滞后太多也直接进行跳帧 数据流首先通过分离器分解为视频数据 流和音频数据流,然后经过对应的解码器,同时由本地系统时钟来进行时间戳控制;获 得准确显示或回放时间以后进行时间戳比较;若同步则直接输出,不同步则进行音频跳 帧或等待,直到同步后输出。 惬執缉蘿绅颀阳灣熗鍵。图 2.5 视频音频同步数据流程2.6 可行性分析开发工具 :Visual Studi

45、o 2013 和 VC+ 6.0 开发语言: C+12采用的是 Visual C+是 Windows 操作系统上常见的 C+开发工具,是 Microsoft 公司推出的目前使用极为广泛的基于 Windows 平台的 C+ 的可视化的开发环境。 Visual C+ 6.0 编译器负责将 C+ 源代码编译成汇编文件,转变为中间文件,然后使用 连接器将相关的中间文件连接起来,生成可执行的二进制文件。 Visual C+6.0 不仅是 一个 C+编 译器, 而且是一 个基于 Windows 操作 系统的 可 视化集成 开发环境 ( integrated development environment,

46、IDE)。Visual C+6.0 许多组件组成, 包括编辑器、 调试器以及程序向导 AppWizard、类向导 Class Wizard等开发工具。 这些组件通过一个 名为 Developer Studio 的组件集成为和谐的开发环境。 使用 VC+ 6.0 编译工具的 MFC 完成对多媒体播放器的制作, 在过去,计算机程序的目标是短小使得运行速度快的代码, 当今计算机的性能更好, 价格更大众 ,程序开发主要的经费从以前以硬件为主转到了以程 序维护、开发为主, 所以当今程序设计的第一要务、 目标是以可移植性 ,以维护性还有可 读性,做出一个播放器的途径具有多种方式,但是因为主观的原因开发语言

47、和开发环境 的限制,只能在这个基础上分析其他能够达成目的的方法,根据查阅资料,目前根据需 求能实现的有: 贞廈给鏌綞牵鎮獵鎦龐。1.用MFC里面提供的 ActiveX 控件,在选择 Windows Media Player组件,使用WMP 组件提供的类,对类的使用和操作来完成对多媒体播放器的设计以及实现,可以快速的 完成一个功能强大,且兼容性和界面友好的多媒体播放器,在实际的项目的改方案会减 少大量的成本,有较好的开发效率。 嚌鲭级厨胀鑲铟礦毁蕲。2.使用系统自带多媒体接口 MCI( 多媒体应用编程接口 ),能在比组件更高的层次 上控制媒体设备,操作较为繁琐,却能完成各种功能。 薊镔竖牍熒浹醬

48、籬铃騫。综上所述两个条件分析,从开发效率上看的话, ActiveX 控件的相对更高一些,可 以在组件提供的类对象上进行对多媒体播放器的各种功能的。且对 ActiveX 的可读性更 好一些,在组件限制的方面我们采用 MCI 编程,使用 MCI 强大的对系统多媒体接口的 操控,从而开发出一个完善的播放程序。 齡践砚语蜗铸转絹攤濼。3 系统总体设计133.1 概要设计播放器系系统的设计:打开播放器,播放器程序首先进行对话框信息的初始化,初 始化的过程中初始化播放列表的信息,然后进行播放、暂停等等的播放控制,修改播放 器列表,记得当前播放状态信息,程序结束。根据流程图 3.1 所示播放系统流程图 绅薮

49、疮 颧訝标販繯轅赛。图 3.1 播放流程图程序的应用初始化信息有窗口的类型,系统函数的,对话框的框架,文档类等,对程序 的各模块进行初始化,以及播放器界面的初始化,然后让程序运行加载。加载列表之前 所保存的文件信息,显示预留提供操作,之后可以执行相关播放停止等控制操作,也可 以把程序最小化托盘,在后台运行,需要时调出来使用,程序结束前可以进行播放器配 置和播放信息的保存,以供下次打开程序加载使用。根据功能划分为六大模块,详情见 图 3.2 所示 .饪箩狞屬诺釙诬苧径凛。14打开 media player,media players先进行初始化,在打开文件后进行播放列表的加载, 接下来可以进行列

50、表播放,列表数据的导入导出,列表的条目的排序和选项的上下挪动 顺序,选中的选项移除和清空表格功能,见表下 3.1 所示。 烴毙潜籬賢擔視蠶贲粵。表 3.1 播放列表模块功能设计播放列表模块播放列表的导入 /导出 选中项的上 /下移动 清空列表或移除选中项双击选中项来进行播放。 导入或导出列表信息到二进制文本。 鼠标拖动或按键帮助移动改变选中项位置。 点击按键完成清空或选中再点击功能按键。播放模式模块有五种选择模式,当前只能存在一种模式五选一,菜单栏中的播放模式按 键互相排除的单项选则。还有有一个全屏播放模式。见下表 3.2 所示。 鋝岂涛軌跃轮莳講嫗键。15表 3.2 播放模式模块功能设计播放

51、模式模块单个播放和循环播放顺序播放和循环播放当前文件播放,或者连续的循环播放改文件。按顺序播放当前列表里的文件,播放完就停止。循环当前播放。随机播放全屏在当前中随机的选择下个播放的文件。全屏播放播放控制模块包括对播放状态的控制以及播放进度的控制。见表3.3 所示。表 3.3 播放控制模块功能设计播放控制模块播放状态控制包括暂停 ,播放 ,停止的播放状态进行选择, 单击相应按键实现播放状态的切换, 在没有打开文件和播放列表为空的情况下, 按键点击无效。 通过上一个以及下 一个进行列表中文件上 下的切换,当前文件若是在列表中的最后一个文件, 下一个时则切到列表最上方的文件。播放进度控制包括快进 ,

52、进度条 ,快退。单击快进前进总进度的百分之一,快退则是倒退总进 度的百分之一。进度条不仅仅用来显示当前的进度概况,通过拖动改变进度。面是音量控制模块。见表 3.4 所示。表 3.4 音量控制模块功能设计音量控制模块音量的增减,静音设置有开启和关闭总音量的开关, 关闭就是静音, 通过改变进度条调整增加 或者减少音量大小。媒体文件模块。见表3.5 所示。表 3.5 文件模块功能设计文件模块文件 打开并且播放媒体文件,对于无法兼容的文件不给供打开功能。最后一个模块是计划关闭模块,主要是设置定时然后完成相应的关闭操作。主要适用于 播放音乐文件的时候。详细见表 3.6 。撷伪氢鱧轍幂聹諛詼庞。16表 3

53、.6 定时关闭定时关闭设置定时可以设置定时,设置规格最大为一天,最小为一分钟。定时操作定时时间到了之后执行的操作,关机或者关闭程序。倒计时显示和后台显示倒计时,开启之后可以后台,也可以停止定时计划。3.2 界面设计打开 VC+ 6.0 New Poject MFC AppWizard( EXE )界面选择对话框模式, 然后在对主对话框右键选择右键菜单中 Insert ActiveX Controls ,向下翻找到 Windows Media Player 的组件对该组件右键属性对组件属性进行修改, ID 设置为 IDC_OCX,1 在 常规一栏下的控件布局选项中, 把布局设置成 None,这样

54、播放插件就只提供显示功能而 没有其他的功能。 踪飯梦掺钓貞绫賁发蘄。我们把功能按钮先布局好图 3.3 主界面所示, 对应播放控制使用编组框圈起来内十 字排列分成上一个 ,暂停, 播放, 停止,下一个。播放模式使用下拉列表选择播放的模式, 音量设置单选按钮和滑动条,通过勾选单选键来开启或者关闭音量,通过滚动滑动条调 节音量大小。播放进度用法滑动条和静态文本来实现,左边的文本是当前的播放时间, 右边的文本是该媒体文件的最大时长,中间放有滑动条,根据时间的推移,滑条跟着向 右滑动,直到媒体文件播放完毕,滑条也划到底部。在滑条右下方做了一个快进和快退 的旋转按钮,按左边的箭头的功能是快退,每次快退总进

55、度的百分分一,按右边的箭头 的功能是快进,每次按动前进总进度的百分之一,同时拖动进度条也有调节播放进度的 功能。右边一整块是用列表控件做的播放列表,把风格里的视图设置为“报告”,在列 表下面添加 5 个管理列表的按钮,打开 , 添加,移除,清空 , 退出。婭鑠机职銦夾簣軒蚀骞。图 3.3 播放器主界面17整体来看这个播放器界面已经比较完善了,就差把对应的功能实现了。所以我们所 设计的界面基本如一下图 3.4所展示的那样子,以简洁为主要风格, 功能按钮排布整齐, 虽然于其他优秀的播放器的界面相比差之甚远,但是在 MFC 的界面算较好者。 譽諶掺铒锭 试监鄺儕泻。图 3.4 添加菜单栏后的播放器主

56、界面184 详细设计4.1 功能模块详细设计打开播放器后,播放器先初始化,然后打开文件,打开的文件加入了播放列表,播 放列表显示了媒体文件的相关信息,然后进行播放,导入和导出文件列表和一些对应的 列表管理的操作,清理和移动列表中文件,之后可以选择列表播放的模式,模式主要有 五种,也可以进行播放状态的控制,调整播放进度,改变音量的大小,切换当前播放的 内容等,具体见图 4.1 所示。 俦聹执償閏号燴鈿膽賾。图 4.1 系统顺序流程图根据模块的划分,按文件、播放控制、播放列表、播放模式、音量的模块顺序逐步 完成功能。在此之前先做一个菜单栏,在 Resource view 资源视图对当前资源文件右键 插入 Menu 菜单栏,对对话框右键属性绑定 IDR_MENU ,或者是 CMyMediaPlayerDlg 的初始化函数中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论