Filtro di divisione AVI
[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEnginee Acquisizione audio/video in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente di usare un nuovo codice MediaPlayer, IMFMediaEngine e Acquisizione audio/video 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.
Il filtro di divisione AVI viene usato per la riproduzione di file AVI. Accetta i dati in formato AVI e lo divide in flussi costitutivi per un'ulteriore elaborazione e/o rendering.
Etichetta | Valore |
---|---|
Interfacce di filtro | IAMMediaContent, IBaseFilter, IPersistMediaPropertyBag |
Tipi di supporti pin di input | MEDIATYPE_Stream, MEDIASUBTYPE_Avi |
Interfacce del pin di input | IPin, IQualityControl |
Tipi di supporti pin di output | In genere MEDIATYPE_Video o MEDIATYPE_Audio. Il tipo esatto dipende dal contenuto del file, dal fatto che il file sia compresso e dal codec usato. |
Interfacce pin di output | IMediaPosition, IMediaSeeking, IPin, IPropertyBag, IQualityControl |
Filtrare CLSID | CLSID_AviSplitter |
CLSID della pagina delle proprietà | Nessuna pagina delle proprietà. |
Eseguibile | quartz.dll |
Merit | MERIT_NORMAL |
categoria filtro | CLSID_LegacyAmFilterCategory |
Osservazioni
Questo filtro è in genere connesso al origine file asincrona filtro sul relativo pin di input. Può connettersi a qualsiasi filtro il cui pin di output supporta IAsyncReader e offre il tipo di supporto corretto al pin di input del filtro AVI Splitter.
I pin di output nel splitter AVI supportano il metodo IPropertyBag::Read per la lettura delle proprietà dai singoli flussi. Attualmente, viene definita la proprietà seguente.
Proprietà | Descrizione |
---|---|
nome | Restituisce il nome del flusso, tratto dal blocco 'strn' nel file AVI. Se questo blocco è assente, il metodo Read restituisce E_INVALIDARG. |
Il metodo IPropertyBag::Write restituisce E_FAIL. Il filtro AVI Mux supporta IPropertyBag::Write per salvare le proprietà del flusso in un file AVI.
Lo splitter AVI non consente ai filtri downstream di usare il proprio allocatore.
La durata dell'interleaving nel file determina la quantità di memoria allocata dal splitter AVI per elaborarla. Un file interleaved in un secondo blocchi richiederà molto più memoria da elaborare rispetto a un file la cui durata di interleave è impostata su uno o due fotogrammi. Nei computer moderni, questo non è in genere un problema a meno che non si eseguano più istanze di AVI Splitter contemporaneamente.
Riercare
Se il file contiene un flusso video, AVI Splitter supporta la ricerca in base al numero di fotogramma. Per abilitare la ricerca basata su frame, chiamare IMediaSeeking::SetTimeFormat nel Filter Graph Manager con il valore TIME_FORMAT_FRAME.
Se il file contiene un flusso audio, AVI Splitter supporta la ricerca in base al numero di campione. Per abilitare la ricerca basata su esempio, chiamare SetTimeFormat in Filter Graph Manager con il valore TIME_FORMAT_SAMPLE.
In entrambi i casi, il pin di output per tale flusso deve essere connesso a un filtro del renderer.
Argomenti correlati