Filtro writer WM ASF (DirectShow)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

WM ASF Writer è un filtro wrapper per l'oggetto writer fornito con Windows Media™ Format SDK. Il filtro accetta un numero variabile di flussi di input e crea un file ASF (Advanced Systems Format). Il filtro gestisce tutta la compressione e il multiplexing (anche se il meccanismo di compressione può essere ignorato). È possibile usare WM ASF Writer in vari scenari, tra cui l'acquisizione di video digitali (DV), la ricompressione audio e la conversione di Audio-Video file multimediali interleaved (AVI) o MPEG per lo streaming di rete. Questo filtro offre l'unico modo per creare file Audio e Windows Media Video di Microsoft Windows Media™ in Microsoft® DirectShow.

Per altre informazioni, vedere Creazione di file ASF in DirectShow.

Etichetta Valore
Interfacce di filtro IAMFilterMiscFlags, IBaseFilter, IConfigAsfWriter, IConfigAsfWriter2, IFileSinkFilter2, IMediaSeeking, IPersistStream, IServiceProvider, ISpecifyPropertyPages, inoltre, il filtro espone le seguenti interfacce di Windows Media Format SDK: IWMIndexer2, IWMHeaderInfo, IWMWriterAdvanced2
Tipi di supporti pin di input Dipende dal profilo ASF. In genere i tipi audio e video non compressi, anche se il filtro accetta tipi compressi se corrispondono al profilo ASF.
Interfacce pin di input IAMStreamConfig, IAMWMBufferPass, IMemInputPin, IPin, IServiceProvider, inoltre, il pin espone l'interfaccia windows Media Format SDK seguente: IWMStreamConfig2 (tramite IServiceProvider)
Tipi di supporti di pin di output Non applicabile.
Interfacce pin di output Non applicabile.
Filtro CLSID CLSID_WMAsfWriter
Pagina delle proprietà CLSID CLSID_AsfWriterProperties
File eseguibile Qasf.dll
Merito MERIT_DO_NOT_USE
Categoria filtro Non specificato

 

Commenti

Il filtro richiede Windows Media Format Software Development Kit (SDK) e le relative dipendenze sottostanti.

Numero di pin di input nel filtro a seconda del profilo o dell'identificatore del profilo del flusso ASF.

I pin di input supportano un metodo dall'interfaccia IAMStreamConfig : IAMStreamConfig::GetFormat. Tutti gli altri metodi restituiscono E_NOTIMPL. Chiamare il metodo GetFormat per eseguire query sul formato di compressione di destinazione del pin, definito dal profilo ASF corrente. Usare l'interfaccia IConfigAsfWriter per impostare il profilo.

È possibile usare l'interfaccia IServiceProvider del filtro per ottenere un puntatore all'interfaccia IWMWriterAdvanced2 , definita in Windows Media Format SDK. È possibile usare l'interfaccia IWMWriterAdvanced2 per controllare la decantazione video quando il video di origine è interlacciato. Per impostare la modalità di deinterlacing, chiamare IWMWriterAdvanced2::SetInputSetting. Per il parametro dwInputNum , usare l'indice in base zero del pin di input video, come enumerato dall'interfaccia IEnumPins .

Nell'esempio seguente viene illustrato come eseguire query per questa interfaccia:

// 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();
    }
}

Le applicazioni non devono usare nessuno dei metodi IWMWriterAdvanced ereditati dall'interfaccia IWMWriterAdvanced2 . La chiamata di tutti questi metodi potrebbe interere con l'operazione del filtro.

L'unica modalità di scrittura file supportata da questo filtro è AM_FILE_OVERWRITE. Vedere IFileSinkFilter2::GetMode.

Quando il runtime di Windows Media Format SDK invia messaggi WMT_STATUS al filtro Writer ASF WM, il filtro li inoltra come eventi EC_WMT_EVENT .

Filtri DirectShow