WavSource-Beispiel

Zeigt, wie Sie eine benutzerdefinierte Medienquelle in Microsoft Media Foundation erstellen. Im Beispiel wird eine Medienquelle implementiert, die WAV-Audiodateien analysiert.

Dieses Beispiel ist ein relativ einfaches Beispiel für eine Medienquelle:

  • Es gibt nur einen Stream, sodass kein Code zum Implementieren der Streamauswahl vorhanden ist.
  • Die Medienquelle implementiert keine Ratensteuerung (d.b. schnelle Vorwärts- oder Umgekehrtwiedergabe).
  • Alle Quell- und Streammethoden werden als synchrone Methoden implementiert.
  • Da der Datenteil einer WAV-Datei ein einzelner Block von nicht komprimierten PCM-Audiodaten ist, muss die Medienquelle während der Wiedergabe keine Paketheader lesen oder den Stream auf andere Weise analysieren, außer den anfänglichen WAVEFORMAT-Header zu lesen.

Ein erweitertes Beispiel für eine Medienquelle finden Sie im MPEG1Source-Beispiel.

Gezeigte APIs

In diesem Beispiel werden die folgenden Media Foundation Schnittstellen veranschaulicht:

Verwendung

Im WavSource-Beispiel wird eine DLL erstellt, die ein COM-Server für die Medienquelle und den Bytestreamhandler der Medienquelle ist. Bevor Sie die Medienquelle verwenden, müssen Sie die DLL registrieren.

Um die Medienquelle zu verwenden, können Sie basicPlaybackausführen. Der Quell resolver lädt die Medienquelle automatisch, wenn Sie eine WAV-Datei für die Wiedergabe auswählen. (Wenn ein Fehler auftritt, stellen Sie sicher, dass Sie die WavSource-DLL erfolgreich registriert haben.)

Sie können auch das Tool TopoEdit verwenden, um eine Wiedergabetopologie zu erstellen, die die Medienquelle enthält. Weitere Informationen zu TopoEdit finden Sie unter TopoEdit.

Requirements (Anforderungen)

Produkt Version
Windows SDK Windows 7

Herunterladen des Beispiels

Dieses Beispiel ist im GitHub-Repository Windows klassischen Beispieleverfügbar.

Media Foundation-SDK-Beispiele

Medienquellen

MPEG1Source-Beispiel

Schemahandler und Byte-Stream Handler

Schreiben einer benutzerdefinierten Medienquelle