Controllo flusso
[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.
L'interfaccia IVMRVideoStreamControl nei pin di input di VMR consente alle applicazioni e ai filtri upstream di controllare il comportamento del componente mixer, tra cui l'ordine Z e lo stato attivo dei flussi di input di VMR. Anche se questa interfaccia è esposta sui pin, opera sul componente mixer di VMR, quindi è disponibile solo quando viene caricato il mixer, ovvero quando vmR elabora più flussi di input. I filtri upstream usano i metodi SetColorKey e GetColorKey per controllare la chiave del colore di origine. Questi metodi abilitano gli effetti, ad esempio la sovrapposizione dell'animazione sul video. È sufficiente impostare la chiave di colore sul colore di sfondo del flusso di animazione e vmR mixerà tale flusso con un altro flusso video. Le applicazioni devono prestare attenzione a non modificare la chiave di colore su un valore diverso dal valore usato da un filtro upstream, ad esempio un decodificatore.
I filtri usano i metodi GetStreamActiveState e SetStreamActiveState per indicare al mixer se prevedere i dati di input da un pin specificato. Ad esempio, il decodificatore Line21 usa questi metodi per attivare il pin di input di VMR per i dati Line21 solo quando questi dati sono presenti nel flusso. L'impostazione di un pin su uno stato inattivo indica al mixer di non attendere i dati da un pin specificato prima di comporre l'immagine.