我应该 link 哪个库来使用 DirectX Media Object Wrapper Filter?

Which library should I link to use DirectX Media Object Wrapper Filter?

我提取了我的 C++ 应用程序的一小段代码:

#include <windows.h>
#include "Dshow.h"
#include "dmodshow.h"

int main()
{
    IBaseFilter         *audioWrapper = NULL;
    CoCreateInstance(CLSID_DMOWrapperFilter, NULL, CLSCTX_INPROC_SERVER, IID_IBaseFilter, (void**)&(audioWrapper));

    return 0;
}

在这里,我想创建一个 DMO Wrapper Filter 的实例。该应用程序编译良好,但当我 link 时,我得到:

error LNK2001: unresolved external symbol _CLSID_DMOWrapperFilter

但是,我按照 the documentation 中的说明在我的依赖项中正确添加了 Strmiids.libQuartz.lib,但它仍然不起作用。

我知道 SDK 已正确安装在我的系统上,因为我可以编译另一个使用 DirectShow 的应用程序,但我没有发现在这种特殊情况下需要依赖项。

那么,有人知道我应该使用哪个库来编译我的应用程序吗?

显然,DMO GUID 由 dmoguids.lib 库导出,CLSID_DMOWrapperFilter 是其中的一部分(即使它在 dmodshow.h 中定义)。

确实,DMO GUIDs 的文档页面说:

These GUIDs are defined in the header file Dmoreg.h and exported by the Dmoguids.lib library.