#vb开发多媒体播放器软件.docx
- 文档编号:28884121
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:7
- 大小:20.20KB
#vb开发多媒体播放器软件.docx
《#vb开发多媒体播放器软件.docx》由会员分享,可在线阅读,更多相关《#vb开发多媒体播放器软件.docx(7页珍藏版)》请在冰豆网上搜索。
#vb开发多媒体播放器软件
vb开发多媒体播放器软件
处理SSI文件时出错
一、前言
随着多媒体硬件环境和软件环境的不断完善,目前,大部分计算机软件开发中都涉及多媒体软件技术的应用。
进行多媒体应用程序设计,从原理上说,可以采用从C++到多媒体专用开发系统<如TOOLBOOK、AUTHORWARE、DIRECTOR)等多种层次的工具。
然而,因为多媒体软件涉及的媒体复杂多样、开发周期短并且需要多种专业人员参与,因此,为了能进行实用高效的开发,必须选用简单易用、开发效率高的软件。
VisualBasic是Microsoft公司开发的Windows编程工具软件。
因为它具有先进的设计思想、快速易掌握的使用方法及控制媒体对象手段灵活多样等特点,受到了多媒体软件开发人员的关注和青睐,也因此成为多媒体应用程序开发的理想工具。
二、VisualBasic的多媒体控件MCI.OCX
MCI<媒体控制接口)是Microsoft公司为实现Windows系统下设备无关性而提供的媒体控制接口标准。
用户可以方便地使用MCI控制标准的多媒体设备。
MCI包含在Windows多媒体扩展的MMSYSTEM模块中,用来协调事件间以及MCI设备驱动程序间的通讯,提供了与设备无关的接口属性。
通常应用程序是通过指定一个MCI设备类型来区分MCI设备,设备类型指明了当前实际使用设备的物理类型,不同的设备类型使用不同的控件属性来进行描述(见附表1>。
从使用的控制方式上来说,MCI设备分为复合和简单两类。
一个简单MCI设备并不需要设备元素。
例如,CD音频和音碟机就是在一个已经安装好了的硬盘上工作的,它们不需要应用程序为其操作的媒体内容提供任何信息。
但对于复合的MCI设备,就需要应用程序提供设备元素,即一个包含全部路径名的源数据文件或目的文件。
VisualBasic语言的CustomControl<用户控制部件)概念体现了当今软件设计的发展潮流--面向对象技术,编程者可以在VisualBasic的工具箱 为了方便地控制多媒体,在专业版VisualBasic工具箱中提供了一个用于多媒体目的的用户控件--MCI.OCX。 多媒体MCI控件MCI.OCX专用于对多媒体控制接口MCI设备的多媒体数据文件实行记录和回放,从目的效果上来说,该控件通过一组按钮来发出种种设备控制命令以实现对诸如: 音频面板、MIDI音序器、CD-ROM驱动器、音频CD播放机、录像带播放、录音带录放等设备的控制。 在VisualBasic程序设计时,当在表中加入多媒体MCI控件时<在工具箱内双击MCI控件),则出现下列按钮群: 向前 应用程序对MCI的这组按钮操作非常灵活方便,如当我们打开一个MCI设备后,就可以根据该设备类型的属性随时从控件中选择合适的状态按钮来表示即刻设备的物理状态。 所有MCI控件可以有下列几种方式来编程: ⑴控件及其各按钮的可见性和使能性;⑵可变或完全对控件进行重新定义;⑶在一个窗口表格中可以同时控制多个设备。 三、多媒体控制部件MCI.OCX的调用 在VisualBasic3.0专业版中,多媒体控件MCI.OCX<在VisualBasic3.0和4.0中,多媒体控件的扩展名为.VBX)是作为可选用部件提供的。 为了使用它,首先要执行FileAddFile菜单命令,把Windowssystem目录下的MCI.OCX加入到工具箱 如果使用的是VisualBasic4.0版<或5.0版),选择oolsCustomControls菜单或直接键入Ctrl+T,即可出现对话框,在AvailableControls列表框中选中MicrosoftMultimediaControls条目旁边的检查框,同样会在工具箱中出现MCI.OCX图标。 双击工具箱中的多媒体控件MCI.OCX图标,调用MCI.OCX控件之后,表单FORM中将出现一排灰色的媒体控制按钮<九个)。 四、VisualBasic多媒体应用程序设计步骤 多媒体控件MCI.OCX包含有一组高级的与设备无关的控制命令。 在使用该多媒体控件时,首先用OPEN命令打开MCI设备<多媒体设备)并建立一个与之对应的文件,以便来进行录或放等操作<但是对诸如CDAudio、VCR和录像带不能使用相应文件)。 一旦设备打开成功,就可以向它发出各种操作命令<见附表的按钮命令)来完成指定的工作任务。 最后记住,要用Close命令来关闭设备和数据文件。 使用MCI.OCX来进行多媒体应用程序开发是很方便的,因为大多数属性都是容易理解的,其中Command属性尤为重要,它是在运行过程中向多媒体设备发命令。 格式为: Form.Mmcontrol.Command=cmdstring$ 其中,cmdstring$变量是如下可执行命令名: Open、Close、Play、Pause、Stop、Back、Step、Prev、Next、Seek、Record、Eject、Sound和Save。 一旦给其命令设置,它就立刻执行,所发生的错误存在Error属性中。 下面以播放DEMO.WAV<波形文件)文件为例,说明VisualBasic多媒体应用程序设计步骤。 首先,创建一个包含有多媒体控件 其次,在Form_Load过程中,插入相应程序代码。 如下 SubForm_Load(> ‘在发出OPEN命令前要设置多媒体设备的属性 Form1.MMControl1.Notify=False Form1.MMControl1.Wait=True Form1.MMControl1.Shareable=False Form1.MMControl1.DeviceType="WaveAudio" Form1.MMControl1.FileName="c: windowss Mmdatademo.wav" Form1.MMControl1.Command="Open" EndSub 最后,运行上述程序,控制键呈黑色,这时就可以使用Play、Record等键操作数据文件DEMO.WAV了。 例如用鼠标点按Play键就能听到.WAV音效<计算机应装有发音设备)。 通过上面陈述,不难发现,VisualBasic利用多媒体控件MCI.OCX设贫嗝教逵τ贸? 序很容易掌握。 五、VisualBasic多媒体应用程序设计实例 1、播放CD音乐 在很多多媒体软件系统中,都提供了激光唱盘的播放软件,利用多媒体控件MCI.OCX,我们可以轻松地编制出符合自己使用要求的简易激光唱盘播放机。 表1给出了简易CD播放器的主要控制部件定义,其后是对应于各个触发事件的源程序代码。 完整的源程序清单如下: `CD播放机实用程序 `运行程序前请在CD-ROM驱动器中装入一张激光唱碟’“LOAD”按钮触发事件 PrivateSubCommand1_Click(> `装入CD唱片 OnErrorGoToMCI_ERROR MMControl1.Command="Open" OnErrorGoTo0 `设置时间格式 MMControl1.TimeFormat=vbMCIFormatTmsf `关闭LOAD按钮,显示图片 Command1.Enabled=False Picture1.Picture=Picture3.Picture `设置初始轨道数 Label1.Caption="1" ExitSub MCI_ERROR: DisplayErrorMessageBox ResumeMCI_EXIT MCI_EXIT: UnloadCD EndSub PrivateSubForm_Load(> MMControl1.Wait=True MMControl1.UpdateInterval=0 `设置设备类型 MMControl1.DeviceType="CDAudio" `设置缺省轨道数为0 Label1.Caption="0" ndSub PrivateSubForm_Unload(CancelAsInteger> MCITest.Show EndSub ’“出带”按钮触发事件 PrivateSubMMControl1_EjectClick(CancelAsInteger> Command1.Enabled=True Picture1.Picture=Picture2.Picture MMControl1.UpdateInterval=0 OnErrorGoToMCI_ERROR2 MMControl1.Command="Eject" MMControl1.Command="Close" OnErrorGoTo0 Label1.Caption="0" Label3.BackColor=&H404040 ExitSub MCI_ERROR2: DisplayErrorMessageBox ResumeNext EndSub ’“向前”按钮触发事件 PrivateSubMMControl1_NextCompleted(ErrorCodeAsLong> Label1.Caption=Str$(MMControl1.Track> EndSub ’“暂停”按钮触发事件 PrivateSubMMControl1_PauseClick(CancelAsInteger> MMControl1.UpdateInterval=0 Label3.BackColor=&H404040 EndSub ’“播放”按钮触发事件 PrivateSubMMControl1_PlayClick(CancelAsInteger> MMControl1.UpdateInterval=1000 Label1.Caption=Str$(MMControl1.Track> EndSub ’“向后”按钮触发事件 PrivateSubMMControl1_PrevCompleted(ErrorCodeAsLong> Label1.Caption=Str$(MMControl1.Track> EndSub PrivateSubMMControl1_StatusUpdate(> Label1.Caption=Str$(MMControl1.PositionAnd&HFF> IfMMControl1.Mode=vbMCIModePlayThen Label3.BackColor=&H80FF& Else Label3.BackColor=&H404040 EndIf EndSub ’“停止”按钮触发事件 PrivateSubMMControl1_StopClick(CancelAsInteger> MMControl1.UpdateInterval=0 Label3.BackColor=&H404040 MMControl1.To=MMControl1.Start MMControl1.Command="Seek" MMControl1.Track=1 Label1.Caption="1" EndSub 2、播放AVI<音频视频接口)文件 电影<包括声音和图像)是广大计算机工作者最为关心的媒体信息之一,电影处理技术也是多媒体关键技术之一。 而在多媒体系统中,AVI 于是,屏幕窗口上的音频视频操作,就变成了对AVI文件<文件后缀为AVI)的处理。 在实际工作中,播放AVI文件<即影片)的方法有许多种,而其中以利用VisualBasic的多媒体控件方法最为简单、方便。 下面以一个具体实例来说明如何播放AVI文件: 假设用户当前目录下有名字为DEMO.AVI的视频音频文件,则利用VisulBasic播放该影片需要经过如下步骤: <1)在VisualBasic的窗体中加入一个MMControl多媒体控件、一个PictureBox图片框控件和两个ComandButton命令按钮部件; <2)设置各个控件的属性,其中窗体命名为Form1,MMControl多媒体控件命名为MMControl1、PictureBox图片框控件命名为Picture1、两个ComandButton命令按钮控件分别命名为Play和Close; <3)编写各触发事件源程序代码并且运行。 源程序代码为: PrivateSubPlay_Click(> MMControl1.Filename="DEMO.AVI" MMControl1.DeviceType=="AVIVIDEO" MMControl1.hWndDisplay=Picture1.hWnd MMControl1.Command="OPEN" MMControl1.To=1 MMControl1.Command="SEEK" MMControl1.Command="PLAY" EndSub PrivateSubClose_Click(> MMControl1.Command="STOP" MMControl1.Command="CLOSE" EndSub 值得注意的是: 在播放AVI文件之前,首先应该把AVI<音频视频)驱动程序安装在Windows下。 AVI的驱动程序名为MCIAVI.DRV,必须将它拷贝到WINDOWSSYSTEM目录下,同时在SYSTEM.INI文件的[MCI]部分加上: AVIVIDEO=MCIAVI.DRV 这样,运行Windows时,Windows会自动地将AVI的驱动程序安装好。 以上仅描述了利用多媒体控制部件播放音频文件<.WAV)、CD唱片和音频视频文件<.AVI)的操作过程。 实际上利用多媒体控制部件同样可以播放动画文件<.FLI、.FLC)、MIDI文件等其他媒体信息。 六、结束语 通过前面论述,不难看出: 利用VisualBasic提供的多媒体控制部件MCI.OCX,广大计算机用户可以方便、快捷、高效率地开发出各种多媒体应用程序。 但需要强调的是: 开发设计VisualBasic多媒体应用程序,除了可以利用多媒体控制部件以外,还可以采用其他手段,例如通过调用API函数等等<鉴于篇幅,这里未做讨论)。 可见,VisualBasic确实是专业与非专业多媒体软件开发人员共同拥有的理想开发工具。 附表1MCI设备类型定义 设备类型 设备描述 CDAudio 激光唱盘播放设备 DAT 数字化磁带音频播放机 DigitalVideo动态数字视频图像设备 Animation 动画播放设备 Other 未给出标准定义的MCI设备 Overlay 模拟视频图像叠加设备 Sequence MIDI音序发生器 VCR 可以使用程序控制的磁盘录像机 VideoDisc 可以使用程序控制的激光视盘机 WaveAudio 播放数字化波形音频的设备? ? ? 附表2多媒体控制部件特有事件列表 事件 说明 Done 完成MCI命令动作 ButtonClick 单击按钮 ButtonCompleted按钮执行命令完成 ButtonGetFocus 按钮获得输入焦点 ButtonLostFocus按钮失去输入焦点 StatusUpdate 更新媒体控制对象的状态信息
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vb 开发 多媒体 播放 软件