Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2659682
  • 博文数量: 416
  • 博客积分: 10220
  • 博客等级: 上将
  • 技术积分: 4193
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-15 09:47
文章分类

全部博文(416)

文章存档

2022年(1)

2021年(1)

2020年(1)

2019年(5)

2018年(7)

2017年(6)

2016年(7)

2015年(11)

2014年(1)

2012年(5)

2011年(7)

2010年(35)

2009年(64)

2008年(48)

2007年(177)

2006年(40)

我的朋友

分类: WINDOWS

2007-02-01 17:10:40

今天看到在VC6.0里面可以直接使用 GraphEdit调试你自己编写的 Filter,但是反复试了多次就是摸不着门路。后来在网上找资料,又参考了一些书,问了郭郭和小侯,才终于把GraphEdit调试 Filter 的方法简单的串了一遍。不禁感叹,这年头,做个菜鸟真难呀!于是想把过程写一下,献给广大的菜鸟。

在这里以陆其明《DirectShow开发指南》中第四章的一个叫做 FilterTitleOverlay的例子进行说明,编译器版本VC6.0,系统Windows XP。

1. 首先把工程 Rebuild All重新编译。这里需要注意 CFilterTitleOverlay.cpp里的const AMOVIESETUP_FILTER sudFilter 中有 Filter的名字"HQ Title Overlay Std.",如果想方便,你可以改成自己的名字之后再Rebuild All。

2. 注册组件。其实一个filter就是一个COM组件,所以使用之前需要注册,可以有两种方法对组件进行注册。

           1. 直接使用命令。命令行下输入:regsvr32  Hqtlystd.ax(编译之后你会在工程目录下的Debug中找到Hqtlystd.ax,这个就是要用的Filter)即可注册成功。
           2. VC6.0 中一般有注册组件的快捷菜单,也就是Tools -> Register Controls。我说一般,是因为我的就没有,后来费尽千辛万苦终于加上去了(在郭郭的上面找到了)。如果你没有,可以在Tools下选择Customize,然后选择Tools,进行如下图的设置。注意:你可以把 GraphEdit和 GuidGen 也放到这里来,使用十分方便(GuidGen在VC目录下Common\Tools里,用于生成GUID)。

3.  打开GraphEdit,菜单中Graph-〉Insert Filters,选择Directshow Filters,然后找到HQ Title Overlay Std双击添加到GraphEdit 中去,如下图。

4.  GraphEdit 中菜单File-〉Render Media File,选择一个媒体文件,加到GraphEdit 中,如下图。

5. 把MPEG Video Decoder 和 HQ Title Overlay Std手动连接起来,这时候就可以播放了。

6. 在debug模式下能单步调试开发filter

阅读(2659) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~