WM ASF Writer Filter (DirectShow)
Der WM ASF Writer ist ein Wrapperfilter für das Writerobjekt, das mit dem Windows Media™ Format SDK bereitgestellt wird. Der Filter akzeptiert eine variable Anzahl von Eingabestreams und erstellt eine ASF-Datei (Advanced Systems Format). Der Filter verarbeitet alle Komprimierungen und Multiplexings (obwohl der Komprimierungsmechanismus umgangen werden kann). Sie können DEN WM ASF Writer in verschiedenen Szenarien verwenden, einschließlich der Erfassung digitaler Videos (DV), der Audiorekomprimierung und der Konvertierung von Audio-Video Interleaved -Dateien (AVI) oder MPEG-Multimediadateien für das Netzwerkstreaming. Dieser Filter bietet die einzige Möglichkeit zum Erstellen von Microsoft® Windows Media™ Audio- und Windows Media Video-Dateien in Microsoft DirectShow.
Weitere Informationen finden Sie unter Erstellen von ASF-Dateien in DirectShow.
| Bezeichnung | Wert |
|---|---|
| Filtern von Schnittstellen | IAMFilterMiscFlags, IBaseFilter, IConfigAsfWriter, IConfigAsfWriter2, IFileSinkFilter2, IMediaSeeking, IPersistStream, IServiceProvider, ISpecifyPropertyPages Zusätzlich macht der Filter die folgenden WINDOWS Media Format SDK-Schnittstellen verfügbar: IWMIndexer2, IWMHeaderInfo, IWMWriterAdvanced2 |
| Eingabepin-Medientypen | Hängt vom ASF-Profil ab. In der Regel unkomprimierte Audio- und Videotypen, obwohl der Filter komprimierte Typen akzeptiert, wenn sie mit dem ASF-Profil übereinstimmen. |
| Eingabepinschnittstellen | IAMStreamConfig, IAMWMBufferPass, IMemInputPin, IPin, IServiceProvider Zusätzlich macht der Pin die folgende Windows Media Format SDK-Schnittstelle verfügbar: IWMStreamConfig2 (über IServiceProvider) |
| Ausgabepin-Medientypen | Nicht zutreffend |
| Schnittstellen für Ausgabepins | Nicht zutreffend |
| Filtern der CLSID | CLSID _ WMAsfWriter |
| Eigenschaftenseite CLSID | CLSID _ AsfWriterProperties |
| Ausführbare Datei | Qasf.dll |
| Verdienst | NICHT _ _ VERWENDEN _ |
| Filterkategorie | Nicht angegeben |
Hinweise
Der Filter erfordert das Windows Media Format Software Development Kit (SDK) und die zugrunde liegenden Abhängigkeiten.
Die Anzahl der Eingabepins für den Filter, abhängig vom Profil oder Profilbezeichner des ASF-Streams.
Die Eingabepins unterstützen eine Methode der IAMStreamConfig-Schnittstelle: IAMStreamConfig::GetFormat. Alle anderen Methoden geben E _ NOTIMPL zurück. Rufen Sie die GetFormat-Methode auf, um das Zielkomprimierungsformat des Pins abfragt, das vom aktuellen ASF-Profil definiert wird. Verwenden Sie die IConfigAsfWriter-Schnittstelle, um das Profil festlegen.
Sie können die IServiceProvider-Schnittstelle des Filters verwenden, um einen Zeiger auf die IWMWriterAdvanced2-Schnittstelle zu erhalten, die im Windows Media Format SDK definiert ist. Sie können die IWMWriterAdvanced2-Schnittstelle verwenden, um das Videodeinterlacing zu steuern, wenn das Quellvideo verschachtelt wird. Rufen Sie zum Festlegen des Deinterlacingmodus IWMWriterAdvanced2::SetInputSetting auf. Verwenden Sie für den dwInputNum-Parameter den nullbasierten Index des Videoeingabepins, wie er von der IEnumPins-Schnittstelle aufzählt wird.
Das folgende Beispiel zeigt, wie Sie diese Schnittstelle abfragen:
// Assume that pAsfWriter is a valid IBaseFilter pointer.
IServiceProvider *pProvider = NULL;
IWMWriterAdvanced2 *pWMWA2 = NULL;
hr = pAsfWriter->QueryInterface(
IID_IServiceProvider,
(void**)&pProvider
);
if (SUCCEEDED(hr))
{
hr = pProvider->QueryService(
IID_IWMWriterAdvanced2,
IID_IWMWriterAdvanced2,
(void**)&pWMWA2
);
pProvider->Release();
if (SUCCEEDED(hr))
{
// Use pWMWA2. (Not shown.)
pWMWA2->Release();
}
}
Anwendungen sollten keine der IWMWriterAdvanced-Methoden verwenden, die die IWMWriterAdvanced2-Schnittstelle erbt. Das Aufrufen dieser Methoden kann mit dem Vorgang des Filters interessieren.
Der einzige von diesem Filter unterstützte Dateischreibmodus ist AM _ FILE _ OVERWRITE. Siehe IFileSinkFilter2::GetMode.
Wenn die Windows Media Format SDK Runtime WMT STATUS-Nachrichten an den WM ASF Writer-Filter sendet, leitet der Filter sie als _ EC _ WMT _ EVENT-Ereignisse weiter.