Multi-File Parser-Filter

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

Der Filter "Multi-File Parser" analysiert ein einfaches Dateiformat, das es ermöglicht, mehrere Dateinamen anzugeben, als ob es sich um eine Datei gäbe. Diese Dateien weisen das im folgenden Beispiel gezeigte Format auf:

;MULTI
https://server/share/video.mpg
https://server/share/captions.smi

Die Verwendung dieses Filters ist veraltet. Um mehrere Dateien innerhalb desselben Filterdiagramms zu rendern, sollte die Anwendung renderFile oder AddSourceFilter einfach mehrmals aufrufen.

Bezeichnung Wert
Filterschnittstellen IBaseFilter
Eingabenadelmedientypen
  • Haupttyp: MEDIATYPE_Stream
  • Untertyp: CLSID_MultFile
  • Formattyp: GUID_NULL
Eingabenadelschnittstellen IPin, IQualityControl
Ausgabeheftmedientypen
  • Haupttyp: MEDIATYPE_File
  • Untertyp: GUID_NULL
  • Formattyp: MEDIATYPE_File
Ausgabepinschnittstellen IPin, IQualityControl
Filtern von CLSID CLSID_MultFile
Ausführbare Datei Quartz.dll
Verdienst MERIT_UNLIKELY
Filterkategorie CLSID_LegacyAmFilterCategory

 

Bemerkungen

Der Filter erstellt einen Ausgabepin für jede Datei, die in der Quelldatei aufgeführt ist. Der Ausgabetyp ist MEDIATYPE_File, und der Formatblock für den Ausgabetyp ist eine Breitzeichenzeichenfolge, die den Dateinamen enthält. Jeder Pin stellt eine Verbindung mit einer instance des Dateistreamrenderer-Filters her. Der Filter File Stream Renderer erstellt einen Ausgabepin, der die IStreamBuilder-Schnittstelle verfügbar macht. Der Ausgabepin rendert die angegebene Datei. Zwischen dem Multi-File-Parser und dem Dateistreamrenderer werden keine Mediendaten übertragen.

Die CLSID des Filters ist in Uuids.h nicht definiert. Verwenden Sie dieses Makro in Ihrer eigenen Headerdatei:

// {D51BD5A3-7548-11cf-A520-0080C77EF58A}
DEFINE_GUID(CLSID_MultFile,
0xd51bd5a3, 0x7548, 0x11cf, 0xa5, 0x20, 0x0, 0x80, 0xc7, 0x7e, 0xf5, 0x8a);

DirectShow-Filter