生成 DirectShow 应用程序

[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayerIMFMediaEngine音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

本主题介绍生成 DirectShow 应用程序所需的标头和库。

Windows SDK 中提供了最新的 DirectShow 标头和库。

标头文件

所有 DirectShow 应用程序都使用下表中显示的头文件。

标头文件 以下操作系统所需
Dshow.h 所有 DirectShow 应用程序。

 

某些 DirectShow 接口需要其他头文件。 接口参考中记录了这些要求。

库文件

DirectShow 使用下表中显示的静态库文件。

库文件 说明
Strmiids.lib 将类标识符导出 (CLSID) 和接口标识符 (IID) 。
Quartz.lib 导出 AMGetErrorText 函数。 如果不调用此函数,则不需要此库。

 

对调试和发布版本使用相同的 .lib 文件。

筛选基类

Windows SDK 提供一组 C++ 类,如果你正在编写自定义 DirectShow 筛选器,建议这些类。 这些类作为示例代码提供,你可以将其编译为静态库。 有关详细信息,请参阅 DirectShow 基类

可再发行 DLL

使用 Service Pack 2 (SP2) 及更高版本为 Windows XP 编写的 DirectShow 应用程序不需要重新分发任何 DirectShow DLL。

对于具有 Service Pack 1 的 Windows XP (SP1) 及更早版本,可从 Microsoft DirectX SDK 获取可再发行的 DirectShow DLL。 这些 DLL 的最新版本是版本 9.0c。 没有计划进一步开发这些可再发行 DLL。 具有 Service Pack 2 的 Windows XP (SP2) 包含版本 9.0c DLL。

红色归属包包含以下 DLL:

  • dxnt.cab
    • amstream.dll
    • devenum.dll
    • encapi.dll
    • ks.sys
    • ksolay.ax
    • ksproxy.ax
    • ksuser.dll
    • l3codecx.ax
    • mciqtz32.dll
    • mpg2splt.ax
    • msdmo.dll
    • mskssrv.sys
    • mspclock.sys
    • mspqm.sys
    • mstee.sys
    • mswebdvd.dll
    • qasf.dll
    • qcap.dll
    • qdv.dll
    • qdvd.dll
    • qedit.dll
    • qedwipes.dll
    • quartz.dll
    • stream.sys
    • swenum.sys
  • bda.cab
    • bdaplgin.ax
    • bdasup.sys
    • ccdecode.sys
    • ipsink.ax
    • kstvtune.ax
    • kswdmcap.ax
    • ksxbar.ax
    • mpe.sys
    • mpeg2data.ax
    • msdv.sys
    • msdvbnp.ax
    • msvidctl.dll
    • msyuv.dll
    • nabtsfec.sys
    • ndisip.sys
    • psisdecd.dll
    • psisrndr.ax
    • slip.sys
    • streamip.sys
    • vbisurf.ax
    • wstcodec.sys
    • wstdecod.dll

生成 DirectShow 筛选器