Domanda

In passato ho usato Managed DirectX e DirectShow.Net di riprodurre un video in una texture su una maglia semplice. Ho poi utilizzato questa stessa tecnica per combinare più sorgenti video in un unico tessuto, utilizzando le varie funzionalità esposte attraverso le texture di fondere insieme questi flussi. Questo è stato un esperimento molto interessante 2 anni fa ed è stato molto adatto allo scopo quando Managed Dirext X era ancora in fase di sviluppo e supportato (che è non lo è più) e allo stesso modo con DirectShow.Net - non sembra come esso è stato aggiornato da July 2007.

Sto cercando di avventurarsi in questo spazio di nuovo e vorrei sapere come questo può essere fatto in C #, senza l'utilizzo di deprezzato o alla fine del ciclo di vita API e il modo migliore per avvicinarsi.

È stato utile?

Soluzione

E 'molto facile da fare in WPF.

MediaElement controlli, uno sopra l'altro, e fare quello superiore 50% trasparente.

Tuttavia, non credo che sia possibile salvare in un nuovo video

Altri suggerimenti

è possibile utilizzare SlimDX libreria open source che è lo stesso come quasi uguale a MDX e DirectShow e avere il supporto in Vista anche in win7.0

Un'altra opzione mi sono imbattuto oggi può essere AForge.net - contiene uno spazio dei nomi per la riproduzione di video. http://www.aforgenet.com/framework/samples/video.html ed è pubblicato sotto licenza LGPL.

Un ulteriore opzione è OpenTK; per miscelare i telai forniti da un flusso video: http://www.opentk.com/doc/graphics

ho fatto esattamente che circa 2003. Ho dovuto usare il codice non sicuro, in altre parole, i puntatori a convertire ogni fotogramma immagine copiata fuori dei due flussi video in formato RGB e media ogni valori dei pixel e poi riconvertire formato originale. Il calo di prestazioni è così grande se non si utilizza il codice non sicuro. La mia comprensione è che quando la manipolazione flusso video, il DirectShow fa la magia allineando automaticamente molti codec da fare l'atto. Nel frattempo quei flussi di immagini deve essere thread-safe e correttamente sincronizzato, che significa un sacco di overhead. Ma qualcuno che conosce meglio deve saltare su questo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top