Esempio di filtro asincrono

Descrizione

L'esempio di filtro asincrono è un filtro di lettura file che supporta il download progressivo. Questo filtro di esempio implementa le interfacce IAsyncReader e IFileSourceFilter . Supporta i file MPEG, ma non i file AVI.

Utilizzo

Questo esempio include una piccola applicazione della riga di comando, Memfile.exe, che illustra il filtro. Gli argomenti della riga di comando specificano un file multimediale e una velocità in bit, espressa in kilobyte al secondo. L'applicazione legge il file in memoria alla velocità specificata e riproduce il file. A tale scopo, viene creata un'istanza del filtro, viene aggiunto il filtro al grafo del filtro ed eseguito il rendering del PIN di output del filtro.

Dalla riga di comando digitare:

Velocità in bit del file Memfile

Il filtro di esempio asincrono non supporta i file AVI, perché non è in grado di connettersi al filtro del separatore AVI . Il pin di output del filtro asincrono propone MEDIATYPE _ Stream e MEDIASUBTYPE _ null per il tipo di supporto. Il pin di input nel filtro di separatore AVI non accetta MEDIASUBTYPE _ null e non propone alcun tipo. Pertanto, la connessione al pin ha esito negativo. Il filtro asincrono potrebbe essere migliorato per offrire MEDIASUBTYPE _ AVI quando appropriato. Ad esempio, potrebbe esaminare il formato di file o usare l'estensione di file.

Download dell'esempio

Per scaricare gli esempi di DirectShow SDK, installare la versione più recente del Windows SDK.

Questo esempio viene installato nel percorso seguente: [ SDK radice ] \ esempi di \ \ filtri DirectShow \ multimediali \ Async.

Esempi di DirectShow