Beispiel für Bereichsfilter

[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.]

Beschreibung

Der Bereichsfilter ist ein Rendererfilter, der Sounddaten als Wellenformen anzeigt.

Verbrauch

Um diesen Filter zu verwenden, öffnen Sie GraphEdit, und rendern Sie eine Audiodatei (oder eine Videodatei mit einem Audiostream). Trennen Sie den Audiorenderer vorübergehend, und fügen Sie den Beispielfilter Infinite-Pin Tee (InfTee Filter Sample) ein. Verbinden Sie den Audiorenderer erneut. Verbinden Sie dann den zweiten Ausgabestift des Infinite-Pin Tee-Filters mit dem Bereichsfilter. Führen Sie nun das Diagramm aus.

Das Fenster Bereich wird als Dialogfeld und nicht als tatsächliches Fenster implementiert. Entwickler, die Systemsteuerungen erstellen, um Filterparameter in Echtzeit zu ändern, möchten möglicherweise eine Solche Technik anstelle von Eigenschaftenseiten verwenden.

Der Bereichsfilter veranschaulicht das Einrichten eines separaten Threads zum Verarbeiten von Daten. In diesem Fall werden die Daten einfach in einen separaten Puffer der IMemInputPin::Receive-Methode kopiert und dann im Fenster Bereich des separaten Threads gezeichnet.

Mit dem Filter Bereich können Sie auch die Audioausgabe überwachen, um zu bestimmen, ob Sie clippingen, damit Sie die Verstärkung anpassen können.

Dieser Filter wird in GraphEdit als "Oscilloscope" angezeigt.

Herunterladen des Beispiels

Installieren Sie zum Herunterladen der DirectShow SDK-Beispiele die neueste Version des Windows SDK.

Dieses Beispiel wird unter dem folgenden Pfad installiert: [SDK-Stamm]\Samples\Multimedia\DirectShow\Filters\Scope.

DirectShow-Beispiele