Freigeben über


WM ASF Writer Filter (Windows Media Format 11 SDK)

[Das dieser Seite zugeordnete Feature Windows Media Format 11 SDK-ist ein Legacyfeature. Es wurde von Source Reader und Sink Writerersetzt. Source Reader und Sink Writer wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code Source Reader und Sink Writer- anstelle Windows Media Format 11 SDK-verwendet werden soll. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, um die neuen APIs zu verwenden, falls möglich umgeschrieben werden.]

Der WM ASF Writer-Filter akzeptiert eine variable Anzahl von Eingabedatenströmen und erstellt eine ASF-Datei. Der Filter behandelt alle Komprimierung und Multiplexing (obwohl der Komprimierungsmechanismus umgangen werden kann). Sie können den WM ASF Writer-Filter in verschiedenen Szenarien verwenden, z. B. digital video(DV)-Aufnahme, Audiokomprimierung und Konvertierung von Audio-Video Interleaved (AVI) oder MPEG digital media files for network streaming. Dieser Filter bietet die einzige Möglichkeit zum Erstellen von Microsoft Windows Media Audio- und Windows Media Video-Dateien in DirectShow.

Weitere Informationen finden Sie unter Erstellen von ASF-Dateien in DirectShow.

Die folgende Tabelle enthält Informationen zum WM ASF Writer-Filter, z. B. die Schnittstellen und Medientypen, die unterstützt werden.

Filterinformationen Arten
Filterschnittstellen IAMFilterMiscFlags, IBaseFilter, IConfigAsfWriter, IFileSinkFilter2, IMediaSeeking, IPersistStream, IServiceProvider, ISpecifyPropertyPages, IWMIndexer2, IWMHeaderInfo, IWMWriterAdvanced2
Eingabe-Pin-Medientypen Abhängig vom Profil. Normalerweise nicht komprimierte Typen wie MEDIATYPE_Audio oder MEDIATYPE_Video, obwohl komprimierte Typen akzeptiert werden können, wenn sie mit dem Profil übereinstimmen
Eingabe-Pin-Schnittstellen IPin, IMemInputPin, IAMStreamConfig, IServiceProvider, IAMWMBufferPass, IWMStreamConfig2 (bis IServiceProvider)
Ausgabe-Pinmedientypen Nicht zutreffend
Ausgabeheftschnittstellen Nicht zutreffend
Filter CLSID CLSID_WMAsfWriter
Eigenschaftenseite CLSID CLSID_WMAsfWriterProperties
Ausführbar Qasf.dll
Verdienst MERIT_DO_NOT_USE
Filterkategorie Nicht angegeben

 

Bemerkungen

Die Anzahl der Eingabenadeln für den Filter hängt vom Profil ab, das an den Filter übergeben wird. Für jeden im Profil definierten Datenstrom wird ein Pin des entsprechenden Medientyps erstellt.

Die Eingabe-Pins unterstützen eine Methode aus der IAMStreamConfig Schnittstelle: IAMStreamConfig::GetFormat. Alle anderen Methoden geben E_NOTIMPL zurück. Rufen Sie die GetFormat--Methode auf, um das Zielkomprimierungsformat des Pins abzufragen, das durch das aktuelle Profil definiert wird. Verwenden Sie die IConfigAsfWriter Schnittstelle, um das Profil festzulegen.

Die IServiceProvider--Schnittstelle des Filters ermöglicht Anwendungen das Abrufen der IWMWriterAdvanced2--Schnittstelle, die im Windows Media Format SDK definiert ist. Die IWMWriterAdvanced2 Schnittstelle steuert videodeinterlacing und ist nützlich, wenn die Eingabe eine interlaced Quelle ist, z. B. DV (digitales Video). Verwenden Sie die methoden GetInputSetting und SetInputSetting zum Steuern von Deinterlacing. Es wird nicht empfohlen, dass Clients eine der anderen Methoden auf dieser Schnittstelle verwenden. Diese Schnittstelle kann nur abgerufen werden, nachdem der Filter dem Filterdiagramm hinzugefügt wurde. Das folgende Beispiel zeigt, wie Sie diese Schnittstelle abfragen:

// Assume that m_pGraph is a valid IGraphBuilder interface pointer,
// and that pAsfWriter points to the IBaseFilter interface
// on the WM ASF Writer filter.

IServiceProvider *pProvider = NULL;
IWMWriterAdvanced2 *pWMWA2 = NULL;

hr = m_pGraph->AddFilter(pAsfWriter, L"WM ASF Writer");
...
hr = pAsfWriter->QueryInterface(IID_IServiceProvider, (void**)&pProvider)
if (SUCCEEDED(hr))
{
    hr = pProvider->QueryService(IID_IWMWriterAdvanced2,
        IID_IWMWriterAdvanced2, (void**)&pWMWA2);
    pProvider->Release();
}

DirectShow QASF Reference