音频播放程序的设计与实现

上传人:人*** 文档编号:512047357 上传时间:2023-06-27 格式:DOCX 页数:29 大小:122.02KB
返回 下载 相关 举报
音频播放程序的设计与实现_第1页
第1页 / 共29页
音频播放程序的设计与实现_第2页
第2页 / 共29页
音频播放程序的设计与实现_第3页
第3页 / 共29页
音频播放程序的设计与实现_第4页
第4页 / 共29页
音频播放程序的设计与实现_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《音频播放程序的设计与实现》由会员分享,可在线阅读,更多相关《音频播放程序的设计与实现(29页珍藏版)》请在金锄头文库上搜索。

1、音频播放程序的设计与实现综合程序课程设计说明书课程设计名称:综合程序课程设计课程设计题目:音频播放程序的设计与实现学院名称:信息工程学院专业:电子信息工程 班级:学号:姓名:评分:教师:20 12年月日综合程序课程设计任务书20 14 -20 15学年第2学期 第1周一 2周题目音频播放程序的设计与实现内容及要求利用VC+开发一个支持wav、mp3、wma等不同音频格式的媒体播放器。通过课程设 计掌握多媒体编程的基本原理。任务:1)2)编程实现一个可支持多种音频格式的媒体播放器,其基本功能包括媒体 播放、音量调节、播放进度选择、暂停、停止以及歌曲信息的査询与添加 等;给出程序的总体设计和详细设

2、计,要求程序总体架构图、详细设计的流3)程图,函数、变量说明等 给出程序运行、测试的详细结果。进度安排:3月1日3月2日:利用各种渠道查找资料;3月3日:完成需求分析,确定程序功能,确立程 序设计思想;3月4日3月9日:进行详细设计,实现编码;3月10日3月11日:进行程序测试,完善编码; 撰写设计说明书,准备验收;3月12日3月13日:验收。学生姓名:指导时间:3月3日至3月9日指导地点:任务下达任务完成考核方式1评阅口2答辩口3.实际操作口4.其它口指导教师系(部)主任注:1、此表一组一表二份,课程设计小组组长一份;任课教师授课时自带一份 备查。2、课程设计结束后与“课程设计小结”、“学生

3、成绩单”一并交院教务存档。摘要随着现今科学技术的发展,人们生活水平的提高,娱乐已必不可少,人们 通过音乐陶冶情操,放松自己,这大大促进了媒体软件的发展而mp3作为一种 小巧,具有良好的音频解码能力,成为了最为广泛使用的音频格式。而软件市 场的媒体播放器有很多,如酷狗音乐。目前常见的多媒体软件应该说各有特色, 但是几乎每一个都存在着不如人意的地方。本课程设计所做的的播放器是基于 MFC集成开发环境,利用系统的MCI (media controller interface)命令接 口来编程,具有体积小,支持的播放格式多、系统资源占用少、支持播放列表 编辑。了解播放器的功能实现,掌握播放器开发的相关

4、技术,同时利用软件工程的相 关理论知识,了解软件开发的方法与步骤关键字:音乐,MCI,播放器目录一引言61.1 MFC简介61.2 MCI简介6二课程设计的目的与要求72.1目的-72.2任务7三课题的需求分析731播放器的基本控制需求73.2功能需求8四概要设计五 详细设计六 调试与测试分析10七用户手册11八结论11九参考文献12十附录13正文一引言MP3播放器的设计是利用MFC应用程序、媒体控制接口 MIC的基本知识 而设计的。1.1 MFC简介MFC 是 Visual C+是核心。MFC(MicrosoftFoundationClasses)是微软基础类 库的简称,是微软公司实现的一个

5、C+类库,MFC类库将所有图形用户界面的 元素如窗口、菜单和按钮等都以类的形式进行了封装,MFCAppWizard向导根据 继承性利用MFC派生出自己的类,并对Windows应用程序进行了分解,利用MFC 派生类对应用程序重新进行组装,同时还规定了应用程序中各个MFC派生类对 象之间的相互联系,实现了标准Windows应用程序的功能,这就是向导生成的 所谓MFC应用程序框架。这样就可以专心的考虑程序的逻辑,而不是这些每次 编程都要重复的东西。1.2 MCI简介MCI是一种接口,MCI是我们只需要使用MCI函数而不必考虑具体的多媒体 设备,它的好处是可以方便地控制绝大多数多媒体设备包括音频、视频

6、、影碟、 录像等多媒体设备,而不需要知道它们的内部工作状况。它所支持的媒体格式 包括mp3、avi、wav、mpeg等等2这样程序员不再需要关心具体设备的差异, 就可以对激光唱机(CD)、视盘机、波形音频设备、视频播放设备和MIDI设备 等媒体设备进行控制。应用程序通过MCI发送相应的命令来控制媒体设备。MCI 分为命令字符串和命令消息两种,两者具有类似的功能。命令字符串具有使用 简单的特点,但是它的执行效率略低于命令消息。二课程设计的目的与要求2.1 目的利用VC+开发一个支持wav、mp3、wma等不同音频格式的媒体播放器。通 过课程设计掌握多媒体编程的基本原理。2.2任务1)编程实现一个

7、可支持多种音频格式的媒体播放器,其基本功能包括媒体播 放、音量调节、播放进度选择、暂停、停止以及歌曲信息的查询与添加等;2)给出程序的总体设计和详细设计,要求程序总体架构图、详细设计的流程图, 函数、变量说明等3)给出程序运行、测试的详细结果。三课题的需求分析(数据流图、数据字典)分析软件设计的目标和任务,确定软件功能和性能需求。软件需求是指用户对目标软件系统在功能、性能、行为、设计约束等方面 的期望。需求分析就是通过对应用问题及其坏境的分析与理解釆用一系列的分 析方法和技术将用户的需求逐步精确化、完全化、一致化,最终形成需求规模 说明文档的过程。3.1播放器的基本控制需求在着手开发系统之前首

8、先要明确该系统应该实现的一些最基本的功能,然后 逐步细化,为每个功能创建一个模块,再对各个模块进行开发。通过分析我们 得出一款音乐播放器的基本控制如图(1)所示:播放/暂停添加/音频播曲目控删除放器制音量控制图(1):音乐的基本控制32功能需求功能需求规定开发人员必须在产品中实现的软件功能,用户利用这些功能来 完成任务,满足业务需求。功能需求有时也被称作行为需求 ( behavioral requirement),因为习惯上总是用“应该”对其进行描述。功能需求描述开发 人员需要实现什么。本次课程设计要求当用户启动程序进入主界面,用户可以通过添加模块添加本地歌曲。通过播放列表用户可以实现对歌曲的

9、查找、播放、暂停、音量调节、静音。通过总结我们知道其功能模块时序图如下图(2)所示:四概要设计(系统层次结构图)概要设计定义软件各主要成份之间的关系。在需求明确、准备开始编码之前,要做概要设计。设计软件结构的具体任 务是:将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、 确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数 据的结构特性、以及数据库的设计。本程序采用模块化软件设计,自顶向下逐 层把软件系统划分成若干模块。每个模块完成一个特定的功能,最后将所有模 块按照某种方法组合成一个整体,达到整个播放器所要求的功能。本次课程设 计的系统结构图如图(3)所示。播

10、放控播放文件控J进度控声音控播放/暂 停止二、E3/上一曲/|打开文播放歹显示播调整播音量大图(3):系统的层次结构图五详细设计(程序流程图)把软件系统结构成份转换成软件的过程性描述(算法),用程序流程图详述 主要事件的实现过程。然后进行编码根据这种过程性描述,编写核心源代 码。本次课程设计所做音频播放器不仅要实现对一些常见的音频格式文件的播放, 而且还要有友好的用户界面。其设计目标是:实现对多种音频格式文件的播放, 当前播放曲目长度显示,实现音量控制;播放器软件占用系统资源少、运行平 台要求不高、界面美观舒适、操作简单。主要划分为以下4个功能模块,每个功能模块的作用描述如下:1)播放控制:控

11、制歌曲的播放状态,如:播放、暂停、上一曲、下一曲。播放 过的歌曲按播放顺序排列在播放列表中,每次退出程序、重启播放器后播放 列表中的播放记录会自动保存不会清空。2)文件控制:主要用来打开本地播放文件。本音乐播放器支持常见音频格式文 件播放如:MP3、WMA、WAV等。还有对播放列表进行控制如:打开文件所在 目录、移除列表、删除文件。3)进度控制:显示当前歌曲的播放总时长和已播放时长,可以通过鼠标调整歌 曲的播放进度,实现歌曲的跳跃式播放。其实现方式是通过进度条和时间的 同步显示。4)声音控制:调整歌曲音量的大小。界面布局设计 创建一个对话框类,类名为CMPlayerDlg。 向对话框中添加Gr

12、oup Box控件、Static Text控件以及按钮控件。 设置所添加的控件的属性。系统界面的运行结果如图(4)所示。随彳亍昏乐里上一曲體放 俸止下一曲0:0:a/ 0:0:0澹加音K删隊音只楮於欖式:单曲攜誌图(4):系统界面的运行结果图六调试及测试分析在课程设计中,常常遇到许许多多的问题,例如有些非控件变量的声 明,这经常导致程序运行错误。这就要在变量声明处重新声明变量, 调试过程中要经常使用在错误区域设置断点的方法来看看是否是是这 段程序出了问题而不是,别的方面。七用户手册本次课设所设计的程序简单,易用,跟大多数音频软件一样。在启动程序 是需要按添加音乐按钮添加自己喜欢的音乐,然后选择

13、相应的歌曲,模式,点 击播放,美妙的音乐就喷薄而出了,在主界面还可以进行跳跃式听歌,音量控 制等各种操作。简而言之此款软件操作简单,集小巧,易用于一身。八结论经过为期两周的综合程序课程设计,我学到了很多。我对VC+这门课程有 了更深刻的认识,对用MFC创建基于对话框的应用程序更加熟悉,同时了解了 MCI相关知识。本次课程设计中虽然可以实现播放、暂停、停止、播放界面美化以及音量 等功能,但仍然存在着放多不足,添加音乐列表后再次启动不能保留数据。课设中遇到了许多的困难,课设中第一次调试程序时出现了很多错误,其 中有逻辑错误,编译能通过,运行始终无法通过,后来经过思考,进行了多次 修改调试之后得到了

14、运行结果;但还是存在兼容性问题,系统版本以及软件的 版本之间存在各种兼容性问题,这使我不知从何处检査并改进,后来在老师的 帮助下,意识到可能是兼容性的问题,结果换了台电脑,经过改正调试最终达 到了目的。诸如此类的问题数不胜数,不过经过査询资料,咨询老师,与同学 探讨最终完成了这次课设,成功的做出了音频播放器。“书到用时方恨少”只是到要用的时候,才会觉得这句话是真理。以前玩 的时候不觉得,只有真正做事时,抓耳挠腮时才会觉得以前学的不够好。虽然 在设计的过程中,时常会碰到问题,有时是从网上搜索出解决方法,但是往往 大多数百度也不能找到有效的解决办法,这种时候,向同学老师请教,就会让 自己受益很多。 跟老师和同学的交流使我认识的自己的更多不足,这些都是 值得我改进的。总的说来,此次软件设计,让我深刻认识的不足,以后会更加努力。参考文献1 黄维通.Visual C+面向对象编程教程第三版北京:清华大学出 版社,20112 侯俊杰深入浅出MFC.第2版广东:南方出版社,2007 严华峰等.Visual C+课程设计案例精编北京:中国水利水电出 版社,20044 王维玉等.Visual C+高级编程技术精粹北京:科学出版社,20085 陈国建等.Visual C+范例开发大全北京:清华大学出版社,2010九附录初始化程序/ MPlayer

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号