zoukankan      html  css  js  c++  java
  • 【Directshow】IFilterGraph::AddFilter方法参数问题<转>

    看dx里dshow的例子和别人的程序,用IFilterGraph::AddFilter()这个API添加filter到Graph的时候,第二个参数是一个设备友好名称;

    我看有的填的是通过IPropertyBag:read方法得到的FriendlyName参数,这个好理解;但是有的则直接填入诸如"Capture

    Video","Source"之类的字符串,实在无法理解,因为这些根本不是设备的FriendlyName,这可以是一个in输入参数啊?

         包括陆其明的书和dshow的例子都没有对这个问题阐述过,只是随便填的。

        后来查到MSDN才了解,翻译了一下:

               第二个参数filter的名称可以是NULL,在这种情况下filter graph manager将产生一个名字。

               如果该参数不为NULL,且不是唯一的,AddFilter函数将修改这个(你填入的)名字,且尝试产生一个唯一的名字;如果成功,

    返回VFW_S_DUPLICATE_NAME,否则返回VFW_E_DUPLICATE_NAME。

          上面的粗体字说明了, 填入"Capture Video","Source"之类是没用的;实际修改playcap的例子,改为AddFilter(pSrcFilter, L"XXX");

    ,应用程序也不会有任何变化。

    http://blog.csdn.net/cosmoslife/article/details/8031504

  • 相关阅读:
    Explain用法
    轻量快速的 Python ASGI 框架 uvicorn
    conda常用命令
    ubuntu 安装并配置zsh
    ubuntu安装zsh终端
    /etc/profile、/etc/bashrc、.bash_profile、.bashrc
    python用List的内建函数list.sort进行排序
    python对象排序
    修改python接口返回给前端的格式封装
    linux设置uwsgi开机自启
  • 原文地址:https://www.cnblogs.com/wainiwann/p/7879404.html
Copyright © 2011-2022 走看看