Erstellen von DirectShow-Anwendungen

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]

In diesem Thema werden die Header und Bibliotheken beschrieben, die zum Erstellen von DirectShow-Anwendungen erforderlich sind.

Die neuesten DirectShow-Header und -Bibliotheken sind im Windows SDK verfügbar.

Headerdateien

Alle DirectShow-Anwendungen verwenden die in der folgenden Tabelle gezeigte Headerdatei.

Headerdatei Erforderlich für
Dshow.h Alle DirectShow-Anwendungen.

 

Einige DirectShow-Schnittstellen erfordern zusätzliche Headerdateien. Diese Anforderungen sind in der Schnittstellenreferenz angegeben.

Bibliotheksdateien

DirectShow verwendet die in der folgenden Tabelle gezeigten statischen Bibliotheksdateien.

Bibliotheksdatei BESCHREIBUNG
Strmiids.lib Exportiert Klassenbezeichner (CLSIDs) und Schnittstellenbezeichner (IIDs).
Quartz.lib Exportiert die FUNKTION AMGetErrorText . Wenn Sie diese Funktion nicht aufrufen, ist diese Bibliothek nicht erforderlich.

 

Verwenden Sie die gleichen LIB-Dateien für Debug- und Releasebuilds.

Filtern von Basisklassen

Das Windows SDK stellt eine Reihe von C++-Klassen bereit, die empfohlen werden, wenn Sie einen benutzerdefinierten DirectShow-Filter schreiben. Diese Klassen werden als Beispielcode bereitgestellt, den Sie in eine statische Bibliothek kompilieren können. Weitere Informationen finden Sie unter DirectShow-Basisklassen.

Verteilbare DLLs

DirectShow-Anwendungen, die für Windows XP mit Service Pack 2 (SP2) und höher geschrieben wurden, müssen keine DirectShow-DLLs neu verteilen.

Für Windows XP mit Service Pack 1 (SP1) und früher sind verteilbare DirectShow-DLLs im Microsoft DirectX SDK verfügbar. Die neueste Version dieser DLLs ist Version 9.0c. Eine Weiterentwicklung dieser verteilbaren DLLs ist nicht geplant. Windows XP mit Service Pack 2 (SP2) enthält die DLLs der Version 9.0c.

Die verteilbaren Pakete enthalten die folgenden DLLs:

  • 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

Erstellen von DirectShow-Filtern