多媒体播放器的设计与实现研讨.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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()

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档