Capture Graph with VMR9 in Windowless mode



Hi

I have the following capture graph controlled by my app

Capture Source ->Smart Tee (preview) -> CSC -> VMR9
-> Smart Tee (capture) -> AVI MUX -> File Writer

The VMR9 is in in Windowless mode

Everything works fine most of the time. However if the screensaver
kicks back to login - after signing back in, the graph is stopped and
restarted by the FGM outside the control of my app. This results in
any frames written to the avi file prior to the screen saver kicking
in being lost, as the stop/re-start causes the file writer to seek to
the start of the file and continue, which over-writes those originally
present at the start.

I was hoping I could trap this event and head off the problem by
handling the EC_VMR_RENDERDEVICE_SET event by flushing the file writer
and opening a new file. However, this is posted AFTER the
stop/restart, so the damage is already done.

I have read the docs on 'Using the Video Mixing Renderer ' and 'VMR
Windowless Mode' and I'm following the recommendations relating to
WM_PAINT, WM_DISPLAYCHANGE, and WM_SIZE.

I've googled extensively for this problem and can't find a match. (I
see Geraint may be facing a similar challenge with the GMF Bridge when
using more than one monitor)

Anyone got any ideas?
Thanks


.



Relevant Pages

  • Re: Capture Graph with VMR9 in Windowless mode
    ... I have the following capture graph controlled by my app ... handling the EC_VMR_RENDERDEVICE_SET event by flushing the file writer ... Windowless Mode' and I'm following the recommendations relating to ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: VMR9 and GDI display problems in Vista
    ... the VMR9 in windowless mode? ... D3d surfaces used in windowless mode and how I can draw lines/circles on it? ... In my app I ... The renderless mode seems a little daunting, ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: DirectShow on DirectX Surface
    ... I do have an empty WM_ERASEBKGND handle in my app, ... I have since adjusted my code to use the VMR mixer in windowless mode, ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Getting mouse evnts from Video playback
    ... The video displays in a window I created with toolbars, ... I have used it in backward compatibility mode and in windowless mode and my app gets the mouse events through normal windows messages. ...
    (microsoft.public.win32.programmer.directx.video)

Loading