- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
多媒体播放器的设计与实现分析
《多媒体技术》
课程论文
题 目:基于MFC的多媒体播放器的设计与实现
专 业:
班 级:
姓 名:
学 号:
指导老师:
摘 要:
本程序是基于MFC集成开发环境,利用ActiveMovieActiveMovie,多媒体
1.开发工具及相关知识介绍
MFC(MicrosoftFoundationClasses)是微软基础类库的简称,是微软公司实现的一个c++类库,主要封装了大部分的windows API函数,vc++是微软公司开发的c/c++的集成开发环境,所谓集成开发环境,就是说利用它可以编辑,编译,调试,而不是使用多种工具轮换操作,灵活性较大。vc也指它的内部编译器,集成开发环境必须有一个编译器内核,例如DevC++其中一个编译器内核就是gcc。 MFC除了是一个类库以外,还是一个框架,在vc++里新建一个MFC的工程,开发环境会自动帮你产生许多文件,同时它使用了mfcxx.dll。xx是版本,它封装了mfc内核,这样你就可以专心的考虑你程序的逻辑,而不是这些每次编程都要重复的东西,但是由于是通用框架,没有最好的针对性,当然也就丧失了一些灵活性和效率。
一个MFC窗口对象是一个C++ CWnd类(或派生类)的实例,是程序直接创建的。在程序执行中它随着窗口类构造函数的调用而生成,随着析构函数的调用而消失。而Windows窗口则是 Windows系统的一个内部数据结构的实例,由一个“窗口句柄”标识,Windows系统创建它并给它分配系统资源。Windows窗口在MFC窗口对 象创建之后,由CWnd类的Create成员函数创建,“窗口句柄”保存在窗口对象的m_hWnd成员变量中。Windows窗口可以被一个程序销毁,也 可以被用户的动作销毁。
3.2?各模块介绍?
本多媒体播放系统从界面上看分为四个部分:播放界面、播放控制、播放列表和播放模式。??
(1)播放界面:可以看到背景图,还可以方便用户调整播放进度、音量大小,也能对音频和视频进行播放和暂停的控制。?
(2)播放模式:有顺序播放、循环播放、随机选择三种模式。用户通过对这三种模式的选择可以控制音频视频的播放顺序。?
(3)播放列表:播放列表记录了被用户添加的需要播放的文件,方便用户在添加文件之后可以迅速找到需要播放的文件。?
(4)播放控制:主要包括媒体文件的打开、播放进度的调整、暂停、停止、全屏和程序的退出。
??
4.各模块源程序及主要部分
4.1.打开文件
void CMediaPlayerDlg::OnOpen()
{
m_listCtrl.SetFocus();CString str;
TCHAR szFilter[] = _T(Mp3 File(*.mp3)|*.mp3|Wma File(*.wma)|*.wma|Video File(*.dat)|*.dat|Wave File(*.wav)|*.wav|AVI File(*.avi)|*.avi|Movie File(*.mov)|*.mov|Media File(*.mmm)|*.mmm|Mid File(*.mid;*,rmi)|*.mid;*.rmi|MPEG File(*.mpeg)|*.mpeg|All File(*.*)|*.*||); CFileDialog fileDlg(TRUE,NULL, NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter, this);
CString strFilePath;
if (IDOK == fileDlg.DoModal())
{
strFilePath = fileDlg.GetPathName();
strFilePath.MakeUpper();
m_player.SetUrl(strFilePath);
m_media=static_castCWMPMedia(m_player.newMedia(strFilePath));
m_list.appendItem(m_media);
m_listCtrl.InsertItem(count,m_media.GetName());
m_listCtrl.SetItemText(count,1,_T(m_media.getItemInfo(FileType))
您可能关注的文档
- 复旦大学,厦门大学2012-2015金融学431真题汇编.doc
- 复旦大学材料物理第5课.doc
- 复旦大学材料物理第10课.doc
- 封头旋压成型精要.pptx
- 复旦大学材料物理第9课分析.doc
- 复合材料力学第11章分析.pptx
- 复式记账和借贷记账法分析.pptx
- 复杂网络(度相关性与社团结构)ppt分析.pptx
- 复旦微电子企业硬件笔试题及部分答案分析.doc
- 复榆催化剂项目监理质量控制点分析.docx
- 热处理工艺对FeCoBSi系非晶合金微观结构和软磁性能的影响.docx
- 消费领域的算法歧视法律规制研究.docx
- 财政衔接资金审计评价与优化路径研究——以S县为例.docx
- ESG信息披露动因及经济后果研究——以比亚迪股份有限公司为例.docx
- GaN基新型类Fin结构HEMTs器件高线性研究.docx
- 耳部全息铜砭刮痧治疗肝阳上亢型高血压患者的临床研究.docx
- 高性能CO2电还原催化剂的高通量计算研究.docx
- Gremlin-1在瘢痕疙瘩成纤维细胞中的作用及机制研究.docx
- GLP-1R基因敲除对B16F10细胞系增殖及迁移功能的影响.docx
- DMT1介导的铁过载在血友病性关节病软骨退变中的作用机制研究.docx
文档评论(0)