h
课程设计说明书
课程设计名称 软件综合课程设计
课程设计题目 音频播放器程序的设计与实现学院名称 信息工程学院
专业 电子信息工程 班级 110414班
学号 11041424 姓名 刘日华
评分 教师 刘洪武
20 14年2 月 22 日
W
h
电子信息工程专业课程设计任务书
20132014学年第2学期 第1周2周
正文
W
h
目录
引言…………………………………………………. .5
一、设计程序的目的与要求…………………. . . . . . . . .6
目的……………………………………………. . . . . . .6
要求…………………………………………………6
二、方案实现与调试………………………………6
总体设计………………………………………….6
1、实现功能………………………………………6
2、功能模块图…………………………………. .7
详细设计………………………………………….7
1、界面布局………………………………………7
2、各模块功能设计………………………………8
2.1处理“打开”按钮………………………………. .9
2.2处理“播放”按钮……………………………….9
2.3处理“暂停”按钮………………………………. .9
2.4处理“停止”按钮………………………………. .9
2.5处理“音量”按钮…………………………………10
2.6处理“退出”按钮………………………………. . .10
3操作步骤……………………………………….10
三、课程设计分析与总结……………………….11
分析…………………………………………. .11
W
h
总结…………………………………………. . .11
附录……………………………………………….13
关键程序清单…………………………………13
参考文献………………………………………20
引言
MP3播放器的设计是利用MFC应用程序、媒体控制接口MIC的基本知识而设计的。
1.1 MFC简介
MF C是Visual C++是核心。MF C类库将所有图形用户界面的元素如窗口、菜单和按钮等都以类的形式进行了封装MFC AppWizard向导根据继承性利用MFC派生出自己的类并对Wind o ws应用程序进行了分解利用MFC派生类对应用程序重新进行组装 同时还规定了应用程序中各个MFC派生类对象之间的相互联系实现了标准Windo ws应用程序的功能这就是向导生成的所谓MFC应用程序框架。每个MFC类都包括了一些函数函数放到类中符合C++编程方法。这些函数必须通过类定义对象才能使用
W
h
[1]
。
1.2 MCI简介
MC I Media C ontro l Interfac e媒体控制接口是Mircro S o ft提供的一组多媒体设备和文件的标准接口它的好处是可以方便地控制绝大多数多媒体设备包括音频、视频、影碟、录像等多媒体设备而不需要知道它们的内部工作状况。它所支持的媒体格式包括mp 3、 avi、wav、mp eg等等。
音频技术发展较早几年前一些技术已经成熟并产品化音频技术主要包括四个方面音频数字化、语音处理、语音合成及语音识别。
音频文件包括多种格式的文件MP3就是其中的一种。MP3的全称是Moving Picture Exp erts GroupAudio LayerⅢ它所使用的技术是在VC D(MP EG-1)的音频压缩技术上发展出的第三代而不是MPEG-3。MP 3是一种音频压缩的国际技术标准它一般需要MP 3播放器来读取。
一、课程设计的目的与要求
1、 目的
利用VC++开发一个支持w av、mp 3、w ma等不同音频格式的媒体播放器。通过课程设计掌握多媒体编程的基本原理。
2、任务
W
h
1 编程实现一个可支持多种音频格式的媒体播放器其基本功能包括媒体播放、音量调节、播放进度选择、暂停、停止以及歌曲信息的查询与添加等
2 给出程序的总体设计和详细设计要求程序总体架构图、详细设计的流程图 函数、变量说明等
3 给出程序运行、测试的详细结果。
二、方案实现与调试
总体设计
1实现功能
MP 3播放器主要对常用Windo ws音频格式的文件实现播放控制播放歌曲、暂停播放、停止播放等实现音量控制静音、声音放大以及声音减小的功能。
2功能模块图
W
h
图-1系统功能模块图
详细设计
1界面布局设计
(1)创建一个对话框类类名为Mp 3PlayerDlg。
(2)向对话框中添加Group Box控件、Static Text控件以及按钮控件。
(3)设置所添加的控件的属性。
系统界面的运行结果图如图-2所示。
W
图-2系统界面运行结果图
Mp3Player对话框中所用控件的属性描述如表-1所示。
表-1对话框控件ID及其描述
控件ID 描述
IDC_STATIC_INFO_WND Group Box控件用来显示“信息窗口”IDC_STATIC_INFO Static Text控件用来显示各种信息IDC_STATIC_OPERATION Group Box控件用来显示“操作面板”IDC_BUTTON_O PEN 按钮控件单击它用来选择歌曲IDC_BUTTON_PLAY 按钮控件单击它用来播放歌曲IDC_BUTTON_PAUSE 按钮控件单击它用来暂停播放歌曲IDC_B UTTON_S TO P 按钮控件单击它用来停止播放歌曲IDC_BUTTON_VO LUM E 按钮控件单击它用来设定音量IDC_BUTTON_QUIT 按钮控件单击它用来退出程序
2各模块功能设计
2.1处理“打开”按钮
W
h
单击“打开”按钮后在O nButto nOp en()函数中,首先对文件类型进行过滤调用DoMo da()函数打开对话框选择一个媒体文件通过G etP athName()函数获取文件路径通过G etF ileName()函数获取文件名后调用Disp layInfo()函数在S tatic Text控件上显示“你选择的歌曲是文件名”然后利用G etDlgIt em()函数设置“暂停”按钮以及“停止”按钮不可用。
2.2处理“播放”按钮
单击“播放”按钮后在OnButtonP lay()函数中通过调用MC IMP 3类的MC IOp en()函数获取刚才选择的文件路径以及文件名调用该类的MC IP lay()函数播放歌曲此时调用Dis p layInfo()函数在S tatic Text控件上显示“正在播放的歌曲是文件名”进行歌曲的播放然后利用GetDlgIt em()函数设置“播放”按钮不可用。
2.3处理“暂停”按钮
单击“暂停”按钮后在OnButtonP aus e()函数中首先通过调用MC IMP 3类的MC IP aus e()函数暂停正在播放的歌曲然后调用D is p layI nfo()函数在S tatic Text控件上显示“暂停播放歌曲文件名”此时的歌曲处于暂停时的进度上利用GetDlgItem()函数设置“播放”按钮可用。
2.4处理“停止”按钮
单击“停止”按钮后在O nButto nS top()函数中首先通过调用MC IMP 3类的MC IP aus e()函数停止正在播放的歌曲然后调用D is p layI nfo()函数在S tatic Text控件上显示
W
hypervmart怎么样?hypervmart是一家国外主机商,成立于2011年,提供虚拟主机、VPS等,vps基于Hyper-V 2012 R2,宣称不超售,支持linux和windows,有荷兰和英国2个数据中心,特色是1Gbps带宽、不限流量。现在配置提高,价格不变,性价比提高了很多。(数据中心不太清楚,按以前的记录,应该是欧洲),支持Paypal付款。点击进入:hypervmart官方网...
蓝速数据金秋上云季2G58/年怎么样?蓝速数据物理机拼团0元购劲爆?蓝速数据服务器秒杀爆产品好不好?蓝速数据是广州五联科技信息有限公司旗下品牌云计算平台、采用国内首选Zkeys公有云建设多种开通方式、具有IDC、ISP从业资格证IDC运营商新老用户值得信赖的商家。我司主要从事内地的枣庄、宿迁、深圳、绍兴、成都(市、县)。待开放地区:北京、广州、十堰、西安、镇江(市、县)。等地区数据中心业务,均KV...
今天有网友提到自己在Linux服务器中安装VNC桌面的时候安装都没有问题,但是在登录远程的时候居然有出现灰色界面,有三行代码提示"Accept clipboard from viewers,Send clipboard to viewers,Send primary selection to viewers"。即便我们重新登录也不行,这个到底如何解决呢?这里找几个可以解决的可能办法,我们多多尝试。...