DirectShow入门文章及VC环境配置

本文提供DirectShow在VC环境下的配置步骤,包括基类源代码编译、VC编译环境配置、链接库文件设置等,并列举常见错误及解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

介绍Directshow的一些文章链接,放在这里,作为普及读物。

 http://www.learnsky.com/bbs/printpage.asp?BoardID=10&ID=887

http://tech.sina.com.cn/s/2005-08-18/0933696822.shtml

http://blog.youkuaiyun.com/laiyiling/category/251892.aspx

还有陆其明老师的博客:

http://blog.youkuaiyun.com/happydeer/archive/2007/04/01/1548426.aspx

http://jemylu.spaces.live.com/

几本书的源代码现在也都可以从如下地址下载到:http://www.directshow.cn/forum/viewthread.php?tid=302&extra=page%3D1

DirectShow在VC环境下的配置:

1. 分别在Debug和Release下编译基类源代码,Debug 生成strmbasd.dlib,Release下生成strmbase.lib, C:/DXSDK/Samples/C++/DirectShow/BaseClasses/baseclasses.dsw.

2. 配置VC编译环境:

Include files目录如下:

D:/DXSDK/Include

    D:/DXSDK/SAMPLES/C++/DIRECTSHOW/BASECLASSES

    D:/DXSDK/SAMPLES/C++/COMMON/INCLUDE

    C:/Program Files/Microsoft Visual Studio/VC98/INCLUDE

    C:/Program Files/Microsoft Visual Studio/VC98/MFC/INCLUDE

    C:/Program Files/Microsoft Visual Studio/VC98/ATL/INCLUDE

Libray Files目录如下:

D:/DXSDK/Lib

    D:/DXSDK/SAMPLES/C++/DIRECTSHOW/BASECLASSES/DEBUG

    D:/DXSDK/SAMPLES/C++/DIRECTSHOW/BASECLASSES/RELEASE

    C:/PROGRAM FILES/MICROSOFT SDK/LIB

    C:/Program Files/Microsoft Visual Studio/VC98/LIB

    C:/Program Files/Microsoft Visual Studio/VC98/MFC/LIB

3. 配置必要的链接库文件,即在VC的菜单中选择Project|Settings|Link,在弹出的对话框中的Category中选择General,然后在Object/library modules中输入如下代码:

    Debug版本   strmbasd.lib, msvcrtd.lib, winmm.lib

    Release版本 strmbase.lib, msvcrt.lib, winmm.lib

并且选中Ignore all default libraries。

4. 如果按照上述操作仍有如下类似的错误提示

error LNK2001: unresolved external symbol _CLSID_FilterGraph

请在link下添加strmiids.lib和quartz.lib,特别是在2003开发环境下应当添加该链接库。因为DirectShow SDK建议,DirectShow应用程序应该至少连接库文件strmiids.lib和quartz.lib。前者定义了DirectShow标准的CLSID和IID,后者定义了导出函数AMGetErrorText(如果应用程序中没有使用到这个函数,也可以不连接这个库)。如果程序里包含了头文件streams.h,则一般库文件还要连接strmbasd.lib、uuid.lib、winmm.lib。

5.出现下述错误时error LNK2001: unresolved external symbol "class ATL::CAtlBaseModule ATL::_AtlBaseModule" (?_AtlBaseModule@ATL@@3VCAtlBaseModule@1@A)

Project|Settings|Link 在Debug下包含atls.lib ,在Release下添加atlsd.lib 库。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值