DirectShow是一组常用的COM接口组件,其中常用的组件有IGraphBuilder,IMediaControl,IMediaEvent接口,这三个接口在本文先不介绍。本文主要是讲讲如何使用DirectShow接口。通常,在播放在线视频和音频文件时候,要用到微软的DirectX提供的DirectShow组件,使用DirectShow这个组件可以方便地播放视频和音频文件。为了使用该接口,首先得注册主互操作程序集QuartzTypeLib.dll。
主互操作程序集是由微软提供的程序集。它包含用COM技术实现的类型定义。注册过程如下:
第一步:
使用tlbimp工具获得QuartzTypeLib.dll文件,进入CMD命令行模式在命令行下输入如下命名:
tlbimp C:\Windows\system32\quartz.dll /out:QuartzTypeLib.dll (我这里是吧tlbimp.exe直接拷到C根目录下了)
这个命令的主要是用来将quartz.dll文件的内容输出到QuartzTypeLib.dll文件中,请注意这里的注册路径,我这里:C:\Documents and Settings\Administrator
截个图看看
对于tlbimp.exe这个工具的文件路径:C:\Windows\system32\tlbimp.exe,这里再给大家介绍一个查询系统dll、ocx、exe、sys等等后缀名的网站,点击打开链接,会给出你查询文件的路劲,而且如果你的系统找不到这些文件,而且还提供下载。个人觉得不错,同样截个图吧
第二步:
获得该文件后,在命令行模式下,在该文件的文件夹下输入指令:
- C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Regasm QuartzTypeLib.dll
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Regasm QuartzTypeLib.dll
这个命令主要用来
将QuartzTypeLib.dll文件注册到注册表中。注意,执行这个命令时候应该位于包含改dll的文件目录下。截个图吧
上面两步完成后,就可以在C#程序中可以用如下语句的方式引用DirectShow的命名空间了。
- using QuartzTypeLib;
using QuartzTypeLib;
进而,通过该引用就可以使用DirectShow接口了。