Esempio di filtro asincrono

Descrizione

L'esempio filtro asincrono è un filtro lettore di 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 un'applicazione della riga di comando di piccole dimensioni, 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, crea un'istanza del filtro, aggiunge il filtro al grafico dei filtri ed esegue il rendering del pin di output del filtro.

Dalla riga di comando digitare:

Velocità in bit del nome file Memfile

Il filtro di esempio asincrono non supporta i file AVI, perché non può connettersi al filtro AVI Splitter . Il pin di output del filtro asincrono propone MEDIATYPE_Stream e MEDIASUBTYPE_NULL per il tipo di supporto. Il pin di input nel filtro AVI Splitter non accetta MEDIASUBTYPE_NULL e non propone alcun tipo di proprio. Pertanto, la connessione del pin non riesce. Il filtro asincrono può essere migliorato per offrire MEDIASUBTYPE_Avi quando appropriato. Ad esempio, può esaminare il formato di file o usare l'estensione del file.

Download dell'esempio

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

Questo esempio viene installato nel percorso seguente: [SDK Root]\Samples\Multimedia\DirectShow\Filters\Async.

Esempi di DirectShow