基于VB多媒体技术制作AVI播放器
信息科技 中国科技信息 2007 年第 5 期 CHINA SCIENC E AND TECHNOLOG YINFORMATIO NMar.2007
基于 VB 多媒体
技术制作 AVI 播放器
肖亚红 湖南省株洲职业技术学院信息工程系 412000
2 MMControl 控件 的文件播放,在播放的同时可以显示 摘 要 阐述在 VB 中使用多媒体控件(MMControl)的 MCI(Media Control Interface) 出该文件的总长度及当前播放位置, 方法,解决了在 VB 中管理媒体控件接口 是微软定义的多媒体接口
,它为 并且能够实现循环播放和静音等功能。 ( MCI ) 设备的问题。 多种多媒体设备提供了一个公用接口。 1 )界面
界面设计使用了关键词 MCI 接口包括了 CD 声音播放器、 标签条控件 Visual Basic;多媒体技术;MCI 设备
Scanner、数字型文件的音频设备等多 ( L a b e l ) 、 命令按钮控件 媒体设备。多媒体控件(MMControl) ( C o m m a n d )、 复选框控件
则用于管理媒体控制接口(MCI )。 ( C h e c k )、 对话框控件
1 前言 该控件包含了一组执行 MCI 命令的按 (CommonDialog )和多媒体控件
随着计算机的不断推广,计算机 钮,这些按钮的使用和功能与通常的 (MMControl )。界面设计效果如下 的开发与应用已深入到社会的各个领 CD 机等多媒体设备上的按钮十分相 图 :域。 计算机开发语言也越来越丰富, 似。下图就是多媒体控件及其按钮的
从低级语言到高级语言,再到面向对 外观形象。
象的可视化编程语言, 如 Visual
Basic,Delphi,Java 等使计算机的
实际应用能力更加强于人意,操作简
单化,界面越来越人性化。其中最基
本最容易被初学者所接受的语言当属 该控件不存在于工具箱中,它是
Visual Basic。它不但简化了可视化编 一个 ActiveX 控件,在使用之前要自己
程的方法,而且使得应用程序的开发流 动手将它添加到工具箱中。添加方法 2 )程序初始化 程更加流畅,特别是 VB6.0 在数据库和 为:工程菜单?部件命令?在弹出的对 Private Sub Form_Load() Internet 应用程序开发两方面的改进, 话框中选择控件选项卡中的 Microsoft MMControl1.Visible = False使程序员能够轻松自如地开发功能卓越 Multimedia Control6.0 选项。 MMControl1.Notify = True 的各种数据库与多媒体应用程序。本文 MMControl1.Shareable =中笔者主要针对利用 VB 多媒体控件 3 AVI 播放器的实现 False MMControl 制作一个 AVI 播放器的过 本程序中主要应用了 MMControl MMControl1.TimeFormat = 程,实现 VB 在多媒体技术方面的功能。 控件与一些基本控件。能够实现的功 0 ' 初始化
能是进行 Wav、MIDI、AVI 等格式 End Sub
上接第 123 页 3 )判断是否选择了静音功能的代 |*.avi" 码 ' 指定能够播放的文件类型
本文的工作是在深入了解数据传输 If Check2.Value = 1 Then DiaOpen.ShowOpen
技术、 图像传感器发展趋势的基础 MMControl1.FileName =
上,综合运用 USB 总线技术和 CMOSMMControl1.Silent = DiaOpen.FileName
图像传感器技术,提供一套数字图像 MMControl1.Command =True ' 关闭文件声音
处理的硬件平台及软件系统的设计方 "open" Else
案。 它具有速度快、 体积小、 成本 MMControl1.Command = MMControl1.Silent =
低、使用灵活等特点。传输大小为 640 "play" False ' 打开文件声音
× 480 的黑白图像,每秒传输 25 帧, LabFile.Caption = DiaOpen. End If
所需的传输速率约为 24 MByte/s, 而 FileName 4 )计算文件总长度及显示文件播
USB 接口数据传输的理论速度为 480 End Sub 下图是程序运行实况: 放位置的代码 Mbps(即 60MByte/s),完全能满足使 用P r i v a t e S u b
的解要求。利用 USB2.0 技术是一个有效MMControl1_StatusUpdate()
决
,具有广泛的发展空间。LabLen.Caption =
MMControl1.Length / 1000 ' 计算
文件总长度, 单位为秒
LabPlay.Caption = MMControl1.Position / 1000 ' 动态
4 结束语 显示当前的播放位置
该程序已在 VB6.0 环境中调试通 End Sub 参考文献 过。该程序所讲述的只是 VB 的一些基 5 )判断是否选择了循环播放功能 [1]许永和.EZ-USB FX 系列单片机 USB
本操作。与 VB 强大的功能相比,还属 的代码 外围设备设计与应用[M].北京:北京航
冰山一角,在此仅起抛砖引玉的作用。 Private Sub MMControl1_Done 空航天大学出版社,2002:1-2
而要将 VB 研究透还是一个漫长的过 (NotifyCode As Integer) [2]OmniVisio Technologien Inc.OV7620 s
程,这也需要我们付出更多的努力才能 If MMControl1.Position = Product Specifications-Rev.1. [Z].3
达到目标。 MMControl1.Length Then ' 判断 文2005
件播放是否结束 [3]Cypres sSemiconducto rCorporation.EZ-
MMControl1.Command USB FX2 Technica Referencl eManua lV2. = "prev" ' 回到文件的起点 3 [Z] .2004
If Check1.Value = 1 [4]Texa sInstrumen(TMS320C54tx DSP Then ' 判断是否选择了自动重复播 CPU and Peripheral Referencs eSet [Z]. 放 2001
MMControl1. [5边海龙],贾少华.USB2. 0设备的设计
Command = "play" 与开发[M].北京:人民邮电出版社,
End If 2004:188 参考文献
,1,李淑华.VB 程序设计及应用,高 End If [6]刘智,薛旭成,郝志航.基于 USB 总线
等教育出版社.2004 End Sub 的 CMOS 数字相机技术研究[J]长春理.
,2,樊金生.Visua Basil 经典编程c 128 6 )控制多媒体文件播放的代码 工大学学报,2004;1(27):7
例.光明日报出版社.2006 Private Sub ComPlay_Click() [7张弘].USB 接口设计[M]西安.:西安电
,3,刘世峰.Visua Basil c程序设计.中 子科技大学出版社,2002:186 MMControl1.Command =
央广播电视大学出版社.2004 作者简介 "close" 程玉龙(1978-) ,男,黑龙江人,重庆大 作者简介 DiaOpen.Filter = "Wav 文 学, 硕士研究生在读,主要研究方向为高 肖亚红(1975-):女,湖南株洲,主要研究 件 |*.wav|MIDI 文件 |*.mid|AVI 文件 速数字图像采集、单片机技术研究。 方向:计算机教学。