DirectShow-Beispiel-Apps
[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde durch MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation ersetzt. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]
Sie finden die DirectShow-Beispiel-Apps im Repository windows-classic-samples auf GitHub.
In der folgenden Tabelle sind alle DirectShow-Beispiele aufgeführt, die in diesem Repository bereitgestellt werden. Anweisungen zum Erstellen der Beispiele finden Sie in der Dokumentation im Windows SDK. Wenn ein Thema vorhanden ist, das ein Beispiel beschreibt, wird die erste Spalte dieser Tabelle mit diesem verknüpft.
Beispiel | Bereich | BESCHREIBUNG | Zusätzliche Abhängigkeiten |
---|---|---|---|
DirectShow-Basisklassen | Basisklassenbibliothek | C++-Klassen und Hilfsprogrammfunktionen für die Implementierung von DirectShow-Filtern. | |
AmCap-Beispiel | Erfassung | Videoaufnahmeanwendung. | strmbase.lib |
DVApp-Beispiel | Erfassung | Digital Video (DV) Capture-Anwendung. | |
PlayCap-Beispiel | Erfassung | Einfache Erfassungsanwendung. | |
DMO-Demobeispiel | DMO | Streamt Audiodaten aus einer WAV-Datei über einen Audioeffekt-DMO. | DirectX SDK |
DVD-Beispiel | DVD | Veranschaulicht die grundlegende DVD-Wiedergabe und -Navigation sowie erweiterte Features wie die Verwaltung der Elternebene, Lesezeichen, Karaoke und Befehlssynchronisierung. | |
InfTee-Filterbeispiel | Filter, Sonstiges | Beispielimplementierung des Infinite Pin Tee-Filters . | strmbase.lib |
Metronomfilterbeispiel | Filter, Sonstiges | Zeigt, wie eine Referenzuhr implementiert wird. | strmbase.lib |
PSI-Parserfilterbeispiel | Filter, Sonstiges | Empfängt Psi-Tabellen (Program Specific Information) aus einem MPEG-2-Transportstream und extrahiert Programminformationen. | strmbase.lib |
Beispiel für den Dumpfilter | Filter, Renderer | Schreibt Medienbeispiele empfängt in eine Textdatei. | strmbase.lib |
SampVid-Filter | Filter, Renderer | Videorendererfilter. | strmbase.lib |
Bereichsfilterbeispiel | Filter, Renderer | Zeigt Sounddaten als Wellenformen an. | strmbase.lib |
Asynchrones Filterbeispiel | Filter, Quelle | Dateilesefilter, der progressives Herunterladen unterstützt. | strmbase.lib |
Kugelfilterbeispiel | Filter, Quelle | Videoquellenfilter, der ein Bild eines springenden Balls erzeugt. | strmbase.lib |
Beispiel für Pushquellenfilter | Filter, Quelle | Quellfilter, die die folgenden Daten als Videostream bereitstellen: Eine einzelne Bitmap, eine Gruppe von Bitmaps, eine Kopie des aktuellen Desktopbilds. | strmbase.lib |
Beispiel für Synth-Filter | Filter, Quelle | Quellfilter, der Audiowellenformen generiert. In diesem Beispiel wird die dynamische Grapherstellung veranschaulicht. | strmbase.lib |
EZRGB24-Filterbeispiel | Filter, Transformation | Bildverarbeitungsfilter. | strmbase.lib |
Gurgelfilterbeispiel | Filter, Transformation | Audioeffektfilter. | strmbase.lib |
WavDest-Filterbeispiel | Filter, Transformation | Schreibt einen Audiostream in eine WAV-Datei. | strmbase.lib |
DMOEnum-Beispiel | Verschiedenes | Zeigt, wie DirectX Media Objects (DMOs) aufgelistet werden. | |
Mapperbeispiel | Verschiedenes | Zeigt, wie Sie die Filterzuordnung verwenden, um Filter in der Registrierung zu finden. | |
SysEnum-Beispiel | Verschiedenes | Veranschaulicht die Verwendung des Systemgeräte-Enumerators zum Auflisten von Geräten und Filtern. | |
CutScene-Beispiel | Wiedergabe | Gibt eine Videodatei im Vollbildmodus ab. | |
DDrawXCL-Beispiel | Wiedergabe | Gibt Videos im exklusiven DirectDraw-Vollbildmodus mithilfe der IDDrawExclModeVideo-Schnittstelle auf dem Filter "Overlay Mixer" ab. | |
DShowPlayer-Beispiel | Wiedergabe | Videowiedergabeanwendung. | |
EVRPlayer-Beispiel | Wiedergabe | Veranschaulicht die Verwendung des DirectShow EVR-Filters.
Hinweis: Erfordert Windows Vista oder höher. Dieses Beispiel ist im Windows SDK für Windows Server 2008 oder höher verfügbar. |
strmbase.lib |
Texture3D9-Beispiel | Wiedergabe | Zeichnet Videos auf einer Microsoft DirectX 9.0-Texturoberfläche. | strmbase.lib, DirectX SDK |
Tickerbeispiel | VMR-9 | Verwendet VMR-9, um Video und Text zu mischen. | |
VMR9Allocator-Beispiel | VMR-9 | Implementiert einen benutzerdefinierten Zuweisungs-Presenter für die VMR-9. | strmbase.lib |
VMR9Compositor-Beispiel | VMR-9 | Implementiert einen benutzerdefinierten Mixer für VMR-9. | |
VMRPlayer-Beispiel | VMR-9 | Verwendet VMR-9, um ein oder zwei ausgeführte Videos mit einem statischen Image zu kombinieren. | |
Wasserzeichenbeispiel | VMR-9 | Blendet eine statische Bitmap während der Wiedergabe mithilfe von VMR-9 mit einem Video. | |
Fensterloses Beispiel | VMR-9 | Veranschaulicht den fensterlosen Modus in VMR-9. |
Zusätzliche Abhängigkeiten
Einige der Beispiele verknüpfen mit der DirectShow-Basisklassenbibliothek. Um diese Beispiele zu erstellen, erstellen Sie zuerst die Basisklassenbibliothek. Weitere Informationen finden Sie unter DirectShow-Basisklassen. Die Basisklassenbibliothek ist für alle Beispielfilter erforderlich.
Einige beispiele erfordern zusätzlich zum Windows SDK auch das DirectX SDK. Um diese Beispiele zu erstellen, müssen Sie das DirectX SDK installieren und die %DXSDK\_DIR%
Umgebungsvariable auf den Installationspfad für DirectX SDK festlegen.
Viele der DirectShow-Beispiele verwenden einen Satz allgemeiner Header und Quelldateien, die sich in der Directrory \[SDK Root\]Samples\Multimedia\DirectShow\Common
befinden. Wenn Sie einen Beispielordner in ein anderes Verzeichnis kopieren, müssen Sie auch den Common
Ordner kopieren.