美文网首页
Build tmhare.mvps.org-vcam 项目

Build tmhare.mvps.org-vcam 项目

作者: Charles_linzc | 来源:发表于2021-10-22 00:32 被阅读0次

    这里记录一下网上Vivek‘s Capture Source Filter filter(虚拟摄像头项目)的build与测试过程。

    1. git的tmhare.mvps.org-vcam 项目,下载项目代码。
      git项目有详细的说明,可以参照说明build项目

    2. 下载 DirectShow BaseClasses 项目
      baseClasses项目包含了有用的基础directshow 类,source filter需要集成这些基础类类,以方便写新的filter.

    3. 使用visual studio 9 打开baseclasses项目,
      点击baseclasses.sln, 会打开项目和解决方案更改对话框:


      image.png

      由于visual studio 版本比较高,我们需要按要求对项目单项升级一下,点击确认。
      IDE自动开始迁移解决方案和项目,完成后,弹出迁移报告,确认无误后,就可以看到visual 9熟悉的项目目录了:


      image.png
      迁移完的项目:
      image.png
    4. 点击项目属性,修改输入目标(dll名称)为 strmbasd,默认使用项目名称,与这个项目的配置会有冲突,编译会有警告提示,修改后就可以顺利编译:


      image.png

      点击 生成->生成解决方案,build baseclasses项目:


      image.png
      生成的lib为 strmbasd.lib,现在将这个lib库copy到一个可共享的目录中方便其他项目引用:
      image.png
    5. 打开下载的 Vivek‘s Capture Source Filter filter项目,双击Filters.cpp,可以看到缺少<streams.h>头文件,这个文件及来源base库。


      image.png

      到该项目的下载目录,找到directshow.props文件,并用文本编辑器打开:


      image.png
      a. 修改directshowSamplesDir, 使得$(DirectShowSamplesDir)\baseclasses指向前面获取的baseclasses项目路径
      b. 修改link配置,指向strmbasd.lib的放置路径,并修改baseclasses.lib为strmbasd.lib
      image.png

      重新打开vcam项目,这是就可以去掉错误提示了。点击“生成” ->"生成解决方案",确定项目可以成功build,打出的dll库名为filters.dll:


      image.png
    6. 使用regsvr32注册filters.lib
      regsvr32 Filters.dll
      可以通过注册表,搜索vcam的clsid({8E14549A-DB61-4309-AFA1-3578E927E933})查询注册结果:


      image.png
    7. 使用grapheditor测试vcam
      7.1 打开本机安装的windows 10 sdk(安装版本不一样,路径不一样),注册proppage.dll
      regsvr32 proppage.dll


      image.png

      7.2 双击打开grapheditor.exe


      image.png
      7.3 点击“inserver filter into ghaph”按钮 或 点解 graph-->insert filter 菜单,插入我们注册的virtual cam:
      image.png
      7.4 点击插入color space converter 和 Enhanced Video Renderer
      image.png

      7.5 通过拖拽输出端口,将三个filter链接起来:


      image.png
      7.6 点击 播放 按钮, 就可以看到vitual cam的效果了:
      image.png

    reference:

    1. windows directshow samples: https://github.com/microsoft/Windows-classic-samples/tree/main/Samples/Win7Samples/multimedia/directshow/filters
    2. tmhare.mvps.org-vcam project: https://github.com/roman380/tmhare.mvps.org-vcam
    3. grapheditor.exe 路径: C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64

    相关文章

      网友评论

          本文标题:Build tmhare.mvps.org-vcam 项目

          本文链接:https://www.haomeiwen.com/subject/zuifaltx.html