In the past I have used Managed Direct X and DirectShow.Net to play a video to a texture on a simple mesh. I have then used this same technique to combine multiple video sources into a single texture, using the various capabilities exposed through textures to blend these streams together. This was a very interesting experiment 2 years ago and was quite suitable for the purpose when Managed Dirext X was still being developed and supported (which is no longer is) and similarly with DirectShow.Net - it doesn't seem like it has been updated since July 2007.
I'm looking to venture in to this space again and would like to know how this can be done in C#, without using depreciated or end-of-life API's and how best to approach it.