In my last post I talked a little about how I was modifying the VRE to support it's own DirectShow Renderer. This is to get around how crappy/inflexible the SampleGrabber really is. The DirectShow renderer I have made is really just a glorified SampleGrabber which is very simple and probably won't be more than 20 LoC when it is finished. This should, in theory make the VRE compatible with any video media-type, whether its MPEG2, encrypted DVD, etc. This will also make the VRE very simple to use with DirectShow.
hr = m_FilterGraph.AddFilter(vreRenderer, "VRE_Renderer");
hr = capGraph.RenderStream(PinCategory.Capture,
MediaType.Video,
capFilter,
null,
vreRenderer);
I have finished the proof-of-concept, but there is still much more work to be done. I first need to rewrite the prototype to be clean. Next I need to modify the VRE to be more flexible so I can set any arbitrary media-type. This way I can pass the media-type of the custom renderer to the MediaBridge filter.
I'm not really too far off from having a simple to use DVD WPF control...not to mention a much more flexible VRE. Just my time is very limited with the nine-to-fiver.
-Jer