IGraphBuilder::RenderFile-Methode (strmif.h)

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

Die RenderFile -Methode erstellt ein Filterdiagramm, das die angegebene Datei rendert.

Syntax

HRESULT RenderFile(
  [in] LPCWSTR lpcwstrFile,
  [in] LPCWSTR lpcwstrPlayList
);

Parameter

[in] lpcwstrFile

Gibt eine Breitzeichenzeichenfolge an, die den Namen einer Mediendatei enthält.

[in] lpcwstrPlayList

Reserviert. Muss NULL sein.

Rückgabewert

Gibt ein HRESULT zurück. Die folgenden Werte sind möglich.

Rückgabecode BESCHREIBUNG
S_OK
Erfolg.
VFW_S_AUDIO_NOT_RENDERED
Teilerfolg; die Audiowiedergabe wurde nicht gerendert.
VFW_S_DUPLICATE_NAME
Erfolg; Der Filtergraph-Manager hat den Filternamen geändert, um Duplizierungen zu vermeiden.
VFW_S_PARTIAL_RENDER
Einige der Streams in diesem Film haben ein nicht unterstütztes Format.
VFW_S_VIDEO_NOT_RENDERED
Teilerfolg; einige Der Streams in diesem Film sind in einem nicht unterstützten Format.
E_ABORT
Der Vorgang wurde abgebrochen.
E_FAIL
Fehler.
E_INVALIDARG
Das Argument ist ungültig.
E_OUTOFMEMORY
Nicht genügend Arbeitsspeicher.
E_POINTER
NULL-Zeigerargument.
VFW_E_CANNOT_CONNECT
Es konnte keine Kombination von Zwischenfiltern gefunden werden, um die Verbindung herzustellen.
VFW_E_CANNOT_LOAD_SOURCE_FILTER
Der Quellfilter für diese Datei konnte nicht geladen werden.
VFW_E_CANNOT_RENDER
Es wurde keine Kombination von Filtern gefunden, um den Stream zu rendern.
VFW_E_INVALID_FILE_FORMAT
Das Dateiformat ist ungültig.
VFW_E_NOT_FOUND
Ein Objekt oder Name wurde nicht gefunden.
VFW_E_UNKNOWN_FILE_TYPE
Der Medientyp dieser Datei wird nicht erkannt.
VFW_E_UNSUPPORTED_STREAM
Die Datei kann nicht wiedergegeben werden. Das Format wird nicht unterstützt.

Hinweise

Wenn der lpwstrFile-Parameter eine Mediendatei angibt, erstellt die Methode ein Filterdiagramm für die Standardwiedergabe. Zunächst wird ein Quellfilter hinzugefügt, der die Datei lesen kann, wobei derselbe Prozess wie die IGraphBuilder::AddSourceFilter-Methode verwendet wird. Anschließend werden die Ausgabepins für den Quellfilter gerendert und bei Bedarf Zwischenfilter hinzugefügt. Sie versucht Filter in der gleichen Reihenfolge wie die IGraphBuilder::Connect-Methode .

Während des Verbindungsvorgangs ignoriert der Filtergraph-Manager Pins für Zwischenfilter, wenn der Pinname mit einer Tilde (~) beginnt. Weitere Informationen finden Sie unter PIN_INFO.

Beachten Sie, dass die RenderFile Methode keine Filter aus dem Diagramm entfernt. Wenn Sie zweimal aufrufen RenderFile , fügt der zweite Aufruf dem Diagramm einfach weitere Filter hinzu. Wenn Sie das Diagramm ausführen, werden beide Quellen gleichzeitig wiedergegeben.

Beispiele

Im folgenden Beispiel wird eine AVI-Datei für die Standardwiedergabe gerendert:

C++
hr = pGraph->RenderFile(L"C:\\Media\\Example.avi", 0);
Im folgenden Beispiel wird eine AVI-Datei über HTTP heruntergeladen, wobei der Filter Dateiquelle (URL) verwendet wird:
C++
hr = pGraph->RenderFile(L"http://example.microsoft.com/Example.avi", 0);

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile strmif.h (include Dshow.h)
Bibliothek Strmiids.lib

Weitere Informationen

Fehler- und Erfolgscodes

IGraphBuilder-Schnittstelle