GMFBridge, Windowless VMR and Multiple Monitors



I have a simple application with a capture graph that reads a file and throws
the samples through GMFBridge to a render graph with a windowless VMR9. (The
bridge isn't necessary here, but this is the basis for something more
complicated and I figured I should get the basics down first.) I'm not trying
to stretch the video across multiple monitors, just display it to one of the
two.

The application works fine on a single monitor, or on multiple monitors if I
don't use GMFBridge. However, when I use GMFBridge and drag the window that
the VMR is rendering to over onto the second monitor, it stops rendering and
doesn't repaint.

As far as I can tell, my event handlers are set up correctly - the form's
move and resize event handlers call SetVideoPosition, the repaint handler
calls RepaintVideo, and the settings-change handler calls DisplayModeChanged.
These do appear to trigger properly when I move the window to the other
monitor.

I rigged up SampleGrabbers in the capture and render graphs to count the
number of samples sent from the capture graph and received by the render
graph. When the problem occurs, I see that the capture graph has sent one
more sample than has been rendered and both counts stop incrementing. Is this
dropped sample part of the cause?

This seems to be something particular to the operation of a render graph
operating through GMFBridge, but I can't quite figure out how it should work.
Any ideas on what I might be missing?

Thanks for your help.

.



Relevant Pages

  • Re: GMFBridge, Windowless VMR and Multiple Monitors
    ... number of samples sent from the capture graph and received by the render ... I see that the capture graph has sent one ... This seems to be something particular to the operation of a render graph ... would make sure that the time stamps are correct on the second run. ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: DirectShow AVI Splitter filter in Windows Mobile 5
    ... Render will try all the decompressors in the system if need be until it ... The mentioned files work like this in the desktop filter graph showing in ... The ting to do is to call 'render' on the output pin. ... Another common format that uses AVI is DivX and variants - also not ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: What happened to the Multi-File parser?
    ... need to render and seek seamlessly in sequence, ... //set windowless, query windowless control, set clipping window etc etc ... Am I not setting up the graph correctly? ... I'm not 100% certain about the MediaTime vs. SetStartStop. ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Controlling DataFlow upstream of a Smart Tee.
    ... > Source Filter instead of Device Capture Filter). ... The graph I made works ... If you take the file and render it in GraphEdit, ... clock) but an async file reader. ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: How to get the snapshot of the first video frame of MPEG-2 video?
    ... >I use the DirectShow to build a filter graph which can render the many ... run the graph, and pause it, get the Video Render Filter and call the ...
    (microsoft.public.win32.programmer.directx.video)