一个简单的媒体播放器的设计与实现.docx
- 文档编号:8612464
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:22
- 大小:175.08KB
一个简单的媒体播放器的设计与实现.docx
《一个简单的媒体播放器的设计与实现.docx》由会员分享,可在线阅读,更多相关《一个简单的媒体播放器的设计与实现.docx(22页珍藏版)》请在冰豆网上搜索。
一个简单的媒体播放器的设计与实现
一个简单的媒体播放器的设计与实现
摘要
现在流行的媒体播放器尽管很多,但都或多或少存在一些缺点,比如:
没有经历的功能;下次播放的时候不能从上次离开的曲目开始;没有身份认证功能;不能有效的爱惜媒体播放器里面的歌曲专有性;功能组合与用户的适应相违抗;界面太复杂和操作太难等。
随着人们对娱乐要求的提高,一款新颖的、切近用户操作适应的播放器超级值得去研究和开发。
本论文所描述的播放器是在MicrosoftVisualStudio.NET2003平台下利用Visual语言完成的。
利用Visual提供的WindowsMediaPlayer控件和文件处置,最终实现一款新颖的,切近用户操作适应的媒体播放器。
该播放器实现了对WAV、MID、MP3、MOV等格式的多媒体文件的播放功能;实现了播放列表加载多个多媒体文件并能够自概念播放顺序;实现了用户的身份认证、持续播放、经历播放和自动关闭播放器等功能。
关键词:
媒体播放器;Visual;MicrosoftVisualStudio.NET2003;WindowsMediaPlayer控件;经历功能
TheDesignandImplementofaSimpleMediaPlayer
Abstract
Nowadays,therearemanypopularmediaplayers.Theyhavemoreorlesscertainshortcomings.Forexample,themediaplayerisnomemoryfunction,thenextplayerdidn'tstartfromtheprogramthelasttimeleaved;noidentityauthentication,noeffectiveprotectionfortheproprietaryofsongsinthemediaplayer;functioncombinationisagainsttheusers'habit,orcomplexinterface,toodifficulttooperateandsoon.Withtheimprovementofrequirementsfortheentertainment,achicplayerwhichclosedtothepeople'soperationhabitisveryworthresearchinganddesigning.
ThethesisdescribedtheplayerwhichwasdevelopedbyVisualbasedonMicrosoftVisualStudio.NET2003.Implementusingfilemanipulationandwindowsmediaplayercontrols,ultimatelyimplementamediaplayerwhichisuniqueandpressclosetouserhabit.
TheplayerrealizedplayfunctionforthemultimediadocumentsofWAV,MID,MP3,MOVformatsandsoon;realizedtoloadseveralmultimediafilesbyplaylistsandcustomizetheplayorder;realizedthefunctionofidentityauthentication,continuousplay,memoryfunctionandrealizedtobeautomaticallyshutteddown.
Keywords:
Mediaplayer;Visual;MicrosoftVisualStudio.NET2003;WindowsmediaPlayerControls;Memoryfunction
论文总页数:
26页
1引言
1.1项目背景
多媒体播放器的设计是一门集运算机技术和数字多媒体技术于一体的综合设计。
随着中国运算机技术、宽带网络技术的进展,愈来愈多的人开始重视多媒体播放器的进展与应用。
再加上现在的播放器尽管种类多样化,但不管是Windows系统自带的WindowsMediaPlayer播放器,仍是此刻网上流行的千千静听,或是Kugoo播放器都或多或少都存在着一些缺点,而这些缺点要么是界面与人们平常的生活适应不相符,或是复杂难懂;要么确实是功能不全不能知足人们对网络娱乐的追求。
随着多媒体的进展,市场潜力的开发,多媒体硬件环境和软件环境的不断完善,和多媒体播放器开发环境的成熟,尤其是Microsoft公司开发的Windows编程工具Visual语言的成熟和完善。
为多媒体播放器的研究和开发提供了先进的思想和多样的媒体操纵手腕,成为多媒体应用程序开发的理想工具。
而这次设计不仅具有操作简便、界面友好等特性;而且在功能方面更切近人们的生活适应和操作适应。
此多媒体设计能识别多中格式的多媒体文件,其中包括WAV,MP3,MID,MOV,等多媒体文件;在播放列表中能够加载一个或多个多媒体文件;自动持续播放多个多媒体文件;用户能随意改变播放顺序;在下次打开播放器时,从上次关闭处继续播放文件;在利用播放器前将进行身份认证;在播放列表的多媒体文件播放完后能够选择自动关闭播放器或循环播放。
1.2国内外现状
在现今信息社会,以多媒体为特点的信息技术和信息产业的进展及应用对人类社会产生的阻碍和作用愈来愈明显,愈来愈重要。
多媒体能改变信息的包装,实现知识信息数字化,为人们取得知识信息提供极大的方便和无穷的乐趣。
友善的人机界面、多种多样的多媒体教学软件、诱人的电子游艺节目、身临其境的多媒体导购系统、五花八门的信息家电和高效方便的网上查询等等,无不渗透着多媒体的作用,它引导人们进入了一个有声有色的世界。
同时,多媒体的进展和应用,极大地推动了各行各业的彼此渗透和飞速进展,大大改变了人类社会的工作环境和生活方式。
可毫不夸张地说,多媒体产业的形成和进展,不仅引发了运算机工业的一次革命,也正在深刻地阻碍人类社会发生庞大的变革。
多媒体技术的进展在专门大程度上依托于多媒体软件开发的水平。
目前,不管是支撑多媒体系统的系统软件,仍是治理和开发软件,和多媒体的应用软件都在能力和数量上还难以知足多媒体飞速进展的需要。
专门是多媒体应用软件的缺乏,一直是制约多媒体产业进展的瓶颈问题,因此己成为多媒体研究和开发的关键问题。
如何制作和设计出大量高质量的多媒体应用软件是运算机从业人员所面临的迫切课题,也是广大人民群众所关切的情形。
1.3项目意义
结合Visual语言提供的先进的思想和多样的媒体操纵手腕,结合用户利用媒体播放器的适应和对媒体播放器的要求,设计了一款界面清楚明了,操作简单实效,能够实现在播放列表中能够加载一个或多个多媒体文件;自动持续播放多个多媒体文件;用户能随意改变播放顺序;在下次打开播放器时,从上次关闭处继续播放文件;在利用播放器前将身份认证;在播放列表的多媒体文件播放完后能够选择自动关闭播放器或循环播放等功能的媒体播放器。
1.4项目实现方式
1)设计的编程语言是Visual,利用Visual多媒体控件中的WindowsMediaPlayer控件来实现多媒体相应功能。
2)利用Visual壮大的文件处置能力,实现身份认证功能和经历功能。
2开发运行平台分析
2.1MicrosoftVisualStudio.NET2003
VisualStudio.NET2003是一个全面的开发工具,用于快速构建面向MicrosoftWindows和Web并连接Microsoft.NET的应用程序,极大地提高了开发人员的效率。
为解决今天最具挑战性的软件开发需要而构建的VisualStudio.NET2003增强并进一步完善了其前代产品的功能,并与前代产品高度兼容。
VisualStudio.NET2003包括来自Modeler的全套功能,可帮忙构建最复杂的企业级应用程序和在最小的设备上部署应用程序。
VisualStudio.NET2003将移动和嵌入式设备,如PocketPC和其他采纳MicrosoftWindowsCE.NET操作系统的设备,带入.NET。
现在,开发人员能够利用一样的编程模型、开发工具及编程技术,来构建应用范围普遍——从小设备到最大的数据中心——的应用程序。
开发人员能够利用VisualStudio.NET来:
1)构建功能壮大而且响应能力极好的基于Windows的应用程序。
2)构建功能壮大而且响应能力极好的PocketPC应用程序。
3)构建完善而平安的Web应用程序。
4)构建对设备有智能感知能力的完善而平安的移动Web应用程序。
5)在以上任何一种应用程序中利用XMLWebservices。
6)幸免“DLL灾难”。
7)排除代价昂贵的应用程序部署和保护问题。
VisualStudio.NET是唯一的从头至尾都是基于通过XMLWebservice进行集成这一思想而构建的环境。
通过许诺应用程序通过Internet共享数据,XMLWebservices使开发人员能够利用新的和现有的代码构建应用程序,而不用考虑平台、编程语言或对象模型。
2.2Visual技术
Visual是运行于Windows平台上的交互式的可视化集成开发环境,是美国Microsoft公司开发的MicrosoftVisual套件的一部份。
Visual集程序的代码编辑、编译、连接和调试等功能于一体,提供了一个完整方便的开发界面和许多有效的辅助开发工具。
Visual中带有的WindowsMediaPlayer控件为开发媒体播放器提供了专门好的技术支持和实现的可能。
而WindowsMediaPlayerActiveX控件提供了一套功能壮大的COM对象模型。
控件所支持的媒体文件格式多样,大体包括所有经常使用的媒体魄式。
Visual的文件处置功能壮大,通过对文件的读写和其他操作,能够方便快捷的实现媒体播放器经历播放功能和身份认证功能。
2.3WindowsMediaPlayer控件
WindowsMediaPlayer控件的功能相当完善,而且有漂亮的视频插件,在播放音频文件时,能够享受漂亮的视觉成效。
1)控件的添加:
感动工具箱,在空白处点击鼠标右键,选择右键菜单中的"新建项...",将弹出"选择工具箱项"对话框,在此对话框中,从"COM组件"选项卡中勾选"WindowsMediaPlayer"组件,确信返回。
2)控件经常使用属性介绍:
="你要播放的某文件";那个地址指定你要播放的文件。
;播放。
;暂停。
;停止。
;全屏。
3系统整体分析
3.1系统整体结构设计及分析
本设计将采纳WindowsMediaPlayer控件结合文件读写等来全面实现多媒体文件的播放和操作。
系统结构图如1所示:
图1设计系统结构图
3.2系统功能设计
设计的功能要紧分四大子模块:
文件加载、播放、关闭、认证。
文件加载是由打开和添加两个子功能模块组成。
播放包括自概念播放顺序、持续播放多个文件、经历播放三个子功能模块。
自概念播放顺序那么是由上一首、下一首、暂停/播放、停止、播放列表等子功能模块组成。
关闭是由循环播放和播放一次就关闭两个子功能模块组成。
身份认证是由登岸和修改认证两个子功能模块组成。
系统功能概要图如图2所示:
图2系统功能概要图
3.2.1认证
认证包括两个子功能:
1)认证登录:
通过用户名和密码的认证登岸,播放器才能被利用,功能主若是爱惜隐私,不能是所有人都能利用播放器,实现了权限的分级,更具有平安性。
2)修改认证:
输入原先的用户名和密码,再输入想修改成的用户名和密码,单击确信。
当下次打开播放器的时候,认证将采纳修改后的新用户名和新密码。
3.2.2文件加载
文件加载包括两个子功能:
1)打开:
加载一个或多个文件到播放列表中,并自动播放;加载新的文件进入时,覆盖播放列表中原有的播放文件。
2)添加:
加载一个或多个文件到播放列表中,可不能覆盖原有的播放列表,只是添加在原有列表的后面。
3.2.3播放
播放包括了三个子功能:
1)自概念播放顺序:
单击下一首按钮,开始播放下一个文件,单击上一首按钮,开始播放上一个文件。
单击暂停按钮,那么播放器暂停播放,同时暂停按钮变成开始按钮,单击开始按钮,播放器从暂停处继续播放,同时开始按钮恢复为暂停按钮。
单击停止按钮,播放器停止播放。
双击播放列表中想要播放文件的文件名,直接播放。
2)持续播放多个文件:
用户能够添加一个或多个多媒体文件在播放列表中,假设添加多个文件,那么按顺序持续循环播放。
并在播放器的题目栏显示正在播放歌曲或视频的名字。
3)经历播放:
退出播放器时,程序自动将用户选择的目录保留到index文件夹中,以便下次打开播放器时,读取index文件夹中保留的文件记录,能够直接从上次退出时正在播放的那个文件开始继续播放,如此就能够实现每次启动播放器,第一播放的是上次退出时播放的那个文件。
如此做就使得播放器具有了经历功能。
3.2.4关闭
关闭包括两个子功能:
1)循环播放:
在默许情形下,播放器是处在循环播放状态中,所谓循环播放确实是当播放完播放列表中的多媒体文件时,又回到第一个文件开始播放。
2)自动关闭:
播放完播放列表中的所有文件后,若是选择了自动关闭功能,那么可执行的播放器将自动关闭。
当再次打开播放器时,播放器又从第一个文件开始播放。
4系统实施方案
4.1媒体播放器界面设计
此界面实现设计的大多功能,其中包括文件的加载,播放,和关闭播放器等功能。
媒体播放器播放界面如图3所示:
图3媒体播放器界面
4.2身份认证
4.2.1登录
初始化的用户名和密码能够通过身份认证,只有通过身份认证的用户才能够正常的利用播放器。
登岸界面如图4所示:
图4登岸界面
打开播放器就会自动弹出一个登岸界面,如图4所示,输入初始用户名和密码进入播放器界面,如图3所示,才能正常利用播放器。
在文件中输入原始的用户名和密码,打开播放器时,在登岸界面中输入原始用户名和密码后,输入的将于文件中的原始用户名和密码进行对照,若是是正确的,将启动播放器。
若是错误将弹犯错误提示框。
其实现代码为:
1)用户名和密码保留函数
If&"\")Then
DimobjAsNewStreamReader&"\",True)
strtest=()
()
EndIf
2)读取保留信息:
readIndex()
()
=False
现在播放器是不可用的。
3)输入信息和保留信息的比较:
Dimstr1AsString
str1=+"|"+
Ifstr1=strtestThen
()
=True
()
Else
MsgBox("用户名或密码错误")
EndIf
4.2.2认证修改
当一个用户名和密码用久了,它的保密性也就随之下降了,认证修改提供解决问题的途径,及时的修改用户名和密码能够保证播放器系统的平安性,能使播放器的专有性更强。
认证修改界面如图5所示:
图5认证修改界面
单击操作,选择修改认证,将会弹出修改认证界面,如图5所示,输入旧用户名和密码,再输入新用户名和密码,点击修改,若是跟文件中原有的旧用户名和密码对照相同,那么修改成功,下次登岸将采纳新的用户名和密码,若是旧用户名和密码与文件中原有效户名和密码不相同,那么修改失败,弹出犯错提示框。
其实现代码为:
1)读取用户名和密码:
If&"\")Then
DimobjAsNewStreamReader&"\",True)
nameandpass=()
()
EndIf
2)写入用户名和密码:
If&"\")Then
&"\")
EndIf
DimobjAsNewStreamWriter&"\",True)
(str)
()
3)比较旧用户名和密码并用新用户名和密码代替:
oldnameandpass=+"|"+
Ifoldnameandpass=nameandpassThen
DimnewNPAsString
newNP=+"|"+
writepass(newNP)
()
Else
MsgBox("用户名或密码错误!
")
EndIf
4.3文件加载系统
4.3.1打开
打开系统是向播放列表加载一个或多个多媒体文件,通过打开加载文件时,将会覆盖播放列表中已有的文件。
而且将自动播放。
其实现代码为:
1)打开文件:
WithOpenfile
.FileName=""
.Filter="视频文件(*.rm;*.rmvb;*.dat;*.avi;*.mp3;*.asf;*.mpg)|*.rm;*.rmvb;*.dat;*.avi;*.mp3;*.asf;*.mpg|音频文件(*.mp3;*.wav;*.wma;*.mid)|*.mp3;*.wav;*.wma;mid|所有文件(*.*)|*.*"
.Multiselect=True
If.ShowDialog()=ThenExitSub
EndWith
2)清空播放列表:
file=Iffile=0ThenExitSub
播放列表.()
()
3)加载新文件:
filename=
ReDimstrfile(file)
Fori=0Tofile-1
Forj=0Tofilename(i).Length
Ifj+1).Chars(0)="\"Then
strfile(i)=CTypej),String)
strfile(i)=CTypestrfile(i).Length-4),String)
Fori=0Tofile-1
播放列表.(i+1&"."&strfile(i))
(filename(i))
4)自动播放:
=filename(0)
播放列表.SetSelected(0,True)
cmbAdd()
5)操作流程:
单击图3上面的‘打开’按钮,弹出文件加载对话框,如图6所示:
图6打开弹出对话框
选择要打开的文件,单击图6的“打开”按钮,加载文件成功。
加载成功后对照加载前后的播放列表发觉打开的文件代替了播放列表中原有的文件。
如图7,8所示:
图7“打开”操作前播放列表图
图8“打开”操作后播放列表图
4.3.2添加
添加系统的功能是向播放列表添加多媒体文件,一次能够添加一个或多个文件,不阻碍播放列表中的原有文件,仅仅是在其后增加文件。
其实现代码相较打开仅仅是少了清空播放列表的代码,在那个地址就不赘言了。
操作流程:
单击图3上面的“添加”按钮,弹出打开对话框,如图9所示,
图9添加弹出对话框
选择要添加的文件,单击图9上的“打开”按钮,添加成功。
添加前后的播放列表对照,如图10,11所示:
图10添加操作后播放列表图
图11添加操作前播放列表图
4.3.3清空
清空系统的功能是清空播放列表中加载的文件,清空后播放完当前正在播放的文件后就可不能播放清空前加载的文件。
其实现代码为:
()
播放列表.()
intcount=0
=""
writeIndex("0")
IsChange=True
操作流程:
单击图3的“清空”按纽,清空播放列内外面的文件,播放列表在清空前后的对照图如图12,13所示:
图12清空前播放列表图
图13清空后播放列表图
4.4文件播放系统
4.4.1暂停/播放
当正在播放文件时,按钮显示为暂停,单击按钮,播放停止,按钮转换为播放,再次单击按钮,文件从上次暂停处继续播放,按钮转换为暂停。
其实现代码为:
Isplay=NotIsplay
IfIsplay=TrueThen
="播放"
Else
="暂停"
EndIf
4.4.2停止
单击停止按钮,正在播放的文件停止播放,播放进度条跳回到起点,暂停/播放按钮由暂停状态转变成为播放状态。
其实现代码为:
=False
=False
=
Isplay=NotIsplay
IfIsplay=TrueThen
="播放"
EndIf
4.4.3自概念播放顺序
当用户想通过自己的操作随意改变播放的顺序时,能够采取三种方式:
单击上一首按钮;单击下一首按钮;在播放列表中双击任意一个文件的名称,从而实现自概念播放顺序。
1)上一首
单击上一首按钮,播放器马上停止播放当前文件,从头开始播放上一个文件,当播放器列表中只有一个文件或是正在播放第一个文件或单击上一首倒退到第一个文件,上一首按钮将失去作用。
其实现代码为:
If>0Andintcount>0Then
=(intcount-1)
intcount=intcount-1
播放列表.SetSelected(intcount,True)
=(intcount))
Ifintcount>0Then
="第"&intcount+1&"首"
Else
="第1首"
EndIf
=True
2)下一首
单击下一首按钮,播放器将停止播放当前文件,从头开始播放下一个文件,当播放器列表中只有一个文件或是正在播放最后一个文件或单击下一首前进到最后一个文件,下一首按钮将失去作用。
其实现代码为:
If>intcount+1Then
=(intcount+1)
intcount=intcount+1
播放列表.SetSelected(intcount,True)
=(intcount))
="第"&intcount+1&"首"
=True
ExitSub
EndIf
3)双击播放列表中文件名称
双击播放列表中任意一个文件名称,播放器将会终止当前正在播放的文件转到播放用户选择的文件,播放完用户选择的文件后,播放器将自动从选择文件后持续播放其他文件。
其实现代码为:
播放列表.SetSelected(CInt,True)
intcount=CInt
=((intcount))
=(intcount))
If=FalseThen
=True
EndIf
=True
4.4.4持续播放多个文件的实现
播放器开始播放后将持续播放后面的其他文件,不需要用户再去手动才能继续播放,使整个播放进程自动化,持续化,从而利用户全身心倾听或观看多媒体文件。
其实现
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一个 简单 媒体播放器 设计 实现