科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件Visual Basic6多媒体设计小结

Visual Basic6多媒体设计小结

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文介绍了一些播放多媒体文件的常用方法

作者:xyl 来源:论坛 2007年10月14日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
三、ActiveMovie控件方法

  ActiveMovie是ActiveX套件中的一个控件,它可以用来播放媒体文件,它支持绝大部分目前通用的媒体格式,它可以播放Wave、Midi、Avi、MPEG、QuickTime Movie等 格式文件。对它的操作相当简单,只需提供要播放的文件名就可以用Run、Pause、Stop方法来播放、暂停和停止该媒体文件了。使用前通过"项目\部件"菜单选择"Microsoft ActiveMovie Control",此时工具箱就会出现ActiveMovie控件,将此控件安放在应用程序的窗体中,然后通过属性窗口或程序代码指定一个多媒体文件, 比如:

Private Sub Command1_Click()
ActiveMovie1.filename = "d:\sv.mpg"
ActiveMovie1.Run
End Sub

  运行程序之后即可通过其控制条进行播放控制。

  四、MediaPlayer控件方法

  Visual Basic中还有一个宝贝:MediaPlayer,这个控件支持多种音乐格式,如MP3、MIDI、WAV等,可以通过Run、Pause、Stop方法来播放、暂停和停止该媒体文件。使用前通过"项目\部件"菜单选择"Windows Media player",此时工具箱就会出现MediaPlayer控件,将此控件安放在应用程序的窗体中,然后通过属性窗口或程序代码指定一个多媒体文件,就可以通过代码对其进行播放控制了。下面的代码实现了MP3文件的播放:

Private Sub Form_Load()
MediaPlayer1.Visible = False
End Sub
Private Sub cmdPlay_Click()
On Error GoTo handler
With CommonDialog1
.InitDir = App.Path
.Filter = "Midi Files(*.mid)|*.mid|MP3 Files(*.mp3)|*.mp3|Wave Filse(*.wav)|*.wav|(*.m3u)|*.m3u"
.FileName = ""
.ShowOpen
End With
MediaPlayer1.FileName = CommonDialog1.FileName
MediaPlayer1.Play
Exit Sub
handler:
MsgBox "未选择媒体文件。", vbOKOnly, "错误信息"
End Sub

  五、API函数控制方法

  在实现多媒体文件的高效播放,必须依靠WINDOWS的API 函数,操作多媒体文件常用的API函数如下:

  1、mciExecute()函数,这是一个最简单的函数,只有一个参数即MCI指令字符串, 当出现错误时将自动弹出对话框; 下面的代码对sound.wave文件分别进行打开、播放、停止、关闭等控制:

I=mciExecute("open "d:\sound.wav" alias sound")
I=mciExecute("play sound")
I=mciExecute("stop sound")
I=mciExecute("close sound")

  2、mciSendString()函数,它的功能与上面的函数相同, 但它可以传送相应的信息给应用程序, 使用时需要四个参数, 第一个是MCI命令字符串, 第二个是缓冲区,第三个是缓冲区长度, 第四个在VB中可恒置为0; 使用此函数能播放哪些媒体文件呢,可以打开win.ini文件看看便知道,找到[mci extensions]部分,这里记录了你的计算机所能使用的所有媒体文件名,如:mid=Sequencer,等号左边的表示媒体文件的扩展名,等号右边的表示打开此媒体文件的设备名。

  使用该函数还要知道如何使用命令字符串来控制设备.下面列出的命令集是各种设备同时都具有的也是关键的命令集:

  1)Open device_name [alias alias_name]:Open命令用来打开device_name设备并取别名为alias_name。device_name为媒体文件名或设备名,alias_name是为device_name取的别名。如:Open C:\windows\kl.wav alias WAV意思是打开:c:\windows\kl.wav这个文件并取别名为WAV,在操作过程中可用这个别名来控制它所打开的设备了。

  2)Close alias_name:Close命令用来关闭别名为alias_name的设备,在关闭程序时必须调用该命令否则其它的程序将无法打开该设备。

  3)Play alias_name:Play命令用来播放别名为alias_name的媒体文件,成功的打开设备后就可调用该命令来播放媒体文件了。

  4)Stop alias_name命令用来停止播放媒体文件。

  5)Seek alias_name命令用来设置当前播放的位置.(需事先设定时间格式) 。

  6)Set alias_name[audio all off][audio all on][time format ms]命令用来设置设备的各种状态.如:静音,有声音,时间格式为毫秒等。

  7)Status alias_name[length][mode][position]命令用来取得设备的状态,如该媒体文件的长度、该媒体文件所处状态、该媒体文件的当前位置等。

  下面的代码实现了AVI文件的播放;

Dim i As Long, RS As String, cb As Long, A$, x As Long, y As Long
RS = Space$(128)
A$ = "e:\kt.avi"
'Frame1为播放AVI文件的框架窗口;
i = mciSendString("open AVIvideo!" & A$ & " alias movie parent " & Frame1.hWnd & " style child", RS, 128, 0)
i = mciSendString("play movie", RS, 128, 0)

  在实际应用中, 还涉及很多具体的编程细节, 比如播放进度的显示、播放进度的改变、视频播放的窗口控制、播放界面的设计等等,这些功能的实现,读者朋友们可以参考MSDN。

  小结

  由于篇幅的限制,笔者只能对各种播放多媒体文件的方法泛泛地讨论一下,其实每一种方法都很强大,读者朋友们需要在实践中不断摸索,才能灵活运用,发挥出它们的强大功能来。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章