• DirectShow编译过程(转载+修改)


    需要安装的软件

    1, Visual Studio 2005 Pro + MSDN.iso 安装到 C:\DEV\VS2005

    2, Platform SDK 可以从微软官方网站下载,我下载的是 Windows Server 2003 R2 Platform SDK ISO.img,

       用虚拟光驱 daemon tools 安装到 C:\DEV\PSDK

    3, DirectX SDK 也可以从微软官方网站下载,我下载的是 dxsdk_aug2007.exe,安装到 C:\DEV\dxsdk

    修改 SetEnv.Cmd

    用编辑器(比如记事本, ultraedit, 或者 Emacs)打开 C:\DEV\platformSDK\SetEnv.Cmd, 在第一行加上:

    Set DXSDK_DIR=C:\DEV\DXSDK

    注意,如果 directx sdk 的安装位置不同,要做相应的修改

    编译 DirectShow 基类源代码,配置VS2005

    1,开始菜单 Microsoft Visual Studio 2005/Visual Studio Tools/Visual Studio 2005 Command Prompt

       打开命令行窗口,也可以启动 cmd 窗口后自己运行vsvars32.bat

    2,cd C:\DEV\PSDK

       SetEnv /XP32 /DEBUG

    3,cd C:\DEV\PSDK\Samples\Multimedia\DirectShow

    4,nmake

      然后去喝咖啡,如果编译顺利,我们就有了 debug 版的 strmbasd.lib

    5,cd C:\DEV\pSDK

       SetEnv /XP32 /RETAIL

    6,cd C:\DEV\PSDK\Samples\Multimedia\DirectShow

    7,nmake

       再去喝咖啡,如果编译顺利,我们就有了 release 版的 strmbase.lib

    8,启动 vs2005, 菜单 Tools/Options/Projects and Solutions/VC++ Directories 中

       include files 中加入

       C:\DEV\pSDK\Include

       C:\DEV\dxsdk\Include

       C:\DEV\PSDK\Samples\Multimedia\DirectShow\BaseClasses

       Library Files 中加入

       C:\DEV\pSDK\lib

       C:\DEV\dxsdk\lib

       C:\DEV\PSDK\Samples\Multimedia\DirectShow\BaseClasses\XP32_RETAIL

       C:\DEV\PSDK\Samples\Multimedia\DirectShow\BaseClasses\XP32_DEBUG

    9, 新建工程以后,菜单 Project/Properties 在对话框中找到 Linker/Input

       为Debug configuration 添加 strmbasd.lib, winmm.lib

       为Release configuration 添加strmbase.lib, winmm.lib

    注意:

    版本要完全正确,安装PSDK选择安装环境变量

    一定要把加入的includefiles和lib路径放到最上面,之后才是vc原来的路径,否则还是会出错

    ps:关于directshow例子的编译:

    用vs2005的新建\从现有代码创建创建工程,然后看makefile文件里的lib文件列表,一起加入项目属性\链接\输入\附加依赖项

    在代码前加入

    #ifndef _WIN32_WINNT

    #define _WIN32_WINNT 0x0400           //使用CoInitializeEx

    #endif

    (CoInitializeEx是winnt的,win2k中只有CoInitialize)

    总结:dxsdk版本很多,dshow的变动更大,从dxsdk转移到了platformsdk,platformsdk又改成了windowssdk,有人推荐vistasdk,好处是里面dshow例程都是vs2005和2008的了,不像server 2k3 platformsdk还有一makefile,坏处是还是错误不断,看来还是以如上搭配最为合适

  • 相关阅读:
    Ubuntu 安装vsftp软件(已测试)
    linux 防火墙打开端口/屏蔽IP等
    PhpStorm+PhpStudy+xdebug 配置图解
    MongoDB 学习笔记(五)索引
    linux vi 编辑器命令
    mongodb添加用户和认证
    Linux下Nodejs安装(完整详细)
    键盘数字与字母对应的快捷键
    Webservce、WCF、WebApi的区别
    MongoDB 学习笔记(四)C# 操作MongoDB
  • 原文地址:https://www.cnblogs.com/sdqxcxh/p/1798993.html
Copyright © 2020-2023  润新知