Freigeben über


ICaptureGraphBuilder::SetOutputFileName-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.]

Hinweis Die ICaptureGraphBuilder-Schnittstelle ist veraltet. Verwenden Sie stattdessen ICaptureGraphBuilder2 .
 
Erstellt den Renderingabschnitt des Filterdiagramms, in dem Bits mit dem angegebenen Dateinamen auf dem Datenträger gespeichert werden.

Syntax

HRESULT SetOutputFileName(
  [in]  const GUID      *pType,
  [in]  LPCOLESTR       lpstrFile,
  [out] IBaseFilter     **ppf,
  [out] IFileSinkFilter **ppSink
);

Parameter

[in] pType

Zeiger auf eine GUID , die den Medienuntertyp darstellt. Muss &MEDIASUBTYPE_Avilauten.

[in] lpstrFile

Zeiger auf eine Breitzeichenzeichenfolge, die den Namen der Ausgabedatei enthält.

[out] ppf

Adresse eines Zeigers auf eine IBaseFilter-Schnittstelle , die den Multiplexerfilter darstellt. Diese Methode erhöht die Verweisanzahl auf der IBaseFilter-Schnittstelle , sodass Sie die Verweisanzahl mit der Release-Methode für diesen Parameter verringern müssen, wenn Sie den Filter verwenden.

[out] ppSink

Adresse eines Zeigers auf eine IFileSinkFilter-Schnittstelle , die den Dateischreiber darstellt. Diese Methode erhöht die Verweisanzahl auf der IFileSinkFilter-Schnittstelle, sodass Sie die Verweisanzahl mithilfe von Release verringern müssen, wenn Sie den Filter verwenden.

Rückgabewert

Gibt einen HRESULT-Wert zurück. Die folgenden Werte sind möglich.

Rückgabecode Beschreibung
E_FAIL
Fehler.
E_INVALIDARG
Ungültiges Argument. Audio-Video Interleaved (AVI) ist das einzige unterstützte Ausgabeformat.
E_OUTOFMEMORY
Nicht genügend Arbeitsspeicher.
E_POINTER
NULL-Zeigerargument.
E_UNEXPECTED
Unerwarteter Fehler.
NOERROR
Erfolg.
S_OK
Die Instanz des AVI-Multiplexers wurde erfolgreich erstellt.

Hinweise

Diese Methode fügt den Multiplexer und den Dateischreiber in das Filterdiagramm ein und ruft IFileSinkFilter::SetFileName auf, um den Namen der Ausgabedatei festzulegen.

Sie können den von dieser Methode zurückgegebenen ppf-Parameter als pfRenderer-Parameter in Aufrufen von RenderStream verwenden.

Sie können den pSink-Parameter aus dieser Methode in einem Aufruf von SetFileName verwenden, um den von ICaptureGraphBuilder::SetOutputFileNamefestgelegten Dateinamen zu ändern.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Referenz:_Dshowh
Zielplattform Windows
Kopfzeile strmif.h
DLL Quartz.dll

Weitere Informationen

Fehler- und Erfolgscodes

ICaptureGraphBuilder-Schnittstelle