Dispositivi codificatori
I codificatori sono dispositivi che ricevono come input un flusso di dati non compresso (video e/o audio), codificano il flusso in un formato specifico, ad esempio MPEG2, e quindi generano un flusso codificato. I dispositivi codificatori possono far parte di un altro dispositivo, ad esempio una combinazione di adattatori di tuner/acquisizione TV o possono essere separati. Ad esempio, un codificatore integrato riceve un flusso di dati da un dispositivo di acquisizione, ad esempio un tuner/decodificatore TV analogico e quindi produce un flusso codificato. Un codificatore autonomo può ricevere dati di input da un file non compresso, elaborare i dati e quindi restituire dati codificati.
Microsoft offre il supporto per i dispositivi codificatori audio/video basati su hardware in DirectX 9.0 e versioni successive.
Per supportare i dispositivi del codificatore audio/video, è necessario implementare il supporto per le proprietà del codificatore definite da Microsoft in un minidriver del filtro di streaming del kernel. Il supporto può essere aggiunto a una classe di flusso esistente o a un minidriver AVStream implementando le proprietà del codificatore. In alternativa, se si sta scrivendo un nuovo minidriver (per un codificatore autonomo o integrato), Microsoft consiglia di seguire l'architettura AVStream perché la classe di flusso è obsoleta e non è più supportata. È possibile usare AVStream Simulated Hardware Sample Driver (Avshws) come punto di partenza. Il driver Avshws è un esempio AVStream incentrato sui pin che implementa il supporto per i trasferimenti DMA.
Nota
Se si scrive un codificatore implementato dal software, non è consigliabile scriverlo come filtro di streaming del kernel. Tali filtri devono invece essere scritti come filtri Microsoft DirectShow o Oggetti multimediali DirectX. Per altre informazioni sui codificatori basati su software, vedere l'argomento "API codificatore" di DirectShow SDK.
I client accedono alla funzionalità del codificatore tramite l'interfaccia COM ICodecAPI . Specificare l'interfaccia che KsProxy espone nel file INF del driver a seconda delle proprietà implementate dal minidriver. Per informazioni sulle proprietà e sull'evento di streaming del kernel definiti da Microsoft, vedere Implementazione e supporto del codificatore . Per esempi su come implementarli, vedere Esempi di codice del codificatore . Per informazioni su come installare un filtro del codificatore, vedere Installazione e registrazione del codificatore , inclusa la procedura per specificare quale interfaccia COM deve esporre KsProxy.
I dispositivi codificatori devono essere conformi ai requisiti di Streaming Media e Broadcast, come descritto nel Programma di certificazione Windows oltre ai requisiti di logo generici che coprono tutti i dispositivi.