江苏省淮安市统计局 朱怀众
---- 微软的DirectShow是一种可扩展的媒体结构,它通过内置的或自定义的过滤器(Filter)控制和处理多媒体数据流, 微软随Internet Explorer 4.01及Windows 98 一起发布了一个DirectShow运行时间文件:Quartz.dll。利用它,你几乎能重放所有流行的媒体文件:MPEG、AVI、WAV、MIDI、AU和MOV。
---- 除过滤器外,DirectShow还支持一种自动化对象( filter graph manager),该对象了解所有可利用的过滤器,并能根据媒体文件的类型自动选择所需的过滤器。
---- 为了在VisualBasic中使用这一自动化对象,我们首先要在VisualBasic工程中注册ActiveMovie Control type library(即QuartzTypeLib) ,注册成功后,就可用对象浏览器(Object Browser)检查和ActiveMovie Control type library 相对应的属性、事件和方法。
---- 随着因特网的普及,通常被用在Unix机上的声音文件(以AU为扩展名)也开始经常出现在Windows机上。下面就以在Visual Basic中播放AU文件为例,讲述如何使用DirectShow重放媒体文件。
---- 1. 在Visual basic中新建一个 Standard EXE 工程, Form1被缺省创建。
---- 2. 从 Project 菜单中,选取References,ActiveMovie Control type library 将出现在Available References的列表框中,点击它旁边的小方框。
---- 3. 在 Form1添加一个命令按钮。
---- 4. 粘贴下面的代码到Form1的代码窗口,其中变量MyFile存放你的AU 文件的路径及文件名。
Option Explicit
Private Sub Command1_Click()
Static MyObject As Object
Dim MyFile As String
MyFile = "< AU 文件的路径及文件名 >"
Set MyObject = New FilgraphManager
MyObject.RenderFile MyFile
MyObject.Run
End Sub
---- 5. 在Run菜单上,选取Start,或按F5键运行此程序,点击Command1, AU 文件将开始播放。
关键词:在VB中运用DirectShow播放AU文件