Ureader.com  
Microsoft software help and Community
   home   |   control panel login   |   archive   |  
 
Windos
win32.3rdparty
win32.directx.audio
win32.directx.ddk
win32.directx.graphics
win32.directx.input
win32.directx.managed
win32.directx.misc
win32.directx.networking
win32.directx.sdk
win32.directx.video
win32.dirx.grap.shaders
win32.gdi
win32.international
win32.kernel
win32.messaging
win32.mmedia
win32.networks
win32.ole
win32.rtc
win32.tapi
win32.tapi.beta
win32.tools
win32.ui
win32.wince
win32.wmi
windows.mediacenter
winfx.aero
winfx.announcements
winfx.avalon
winfx.collaboration
winfx.fundamentals
winfx.general
winfx.indigo
winfx.sdk
winfx.winfs
  
 
date: Tue, 8 Jul 2008 09:43:31 -0700 (PDT),    group: microsoft.public.win32.programmer.directx.video        back       


VMR9 and power suspend   
I have modified the AMCap example to use the VideoMixingRenderer9
instead of IVideoWindow for displaying video. When configured for
windowless rendering mode, the VMR9 filter does not continue to render
after a power standby/hibernate cycle.

It works fine in either mode with IVideoWindow, but only works fine
with windowed rendering mode with VMR9. Any suggestions for what I
need to do to have VMR9 continue to render after resuming from standby/
hibernate? Even restarting the filter graph doesnt seem to solve the
problem.

Thanks
Vilas
date: Tue, 8 Jul 2008 09:43:31 -0700 (PDT)   author:   vkc

Re: VMR9 and power suspend   
> When configured for
> windowless rendering mode, the VMR9 filter does not continue to render
> after a power standby/hibernate cycle.

You could try pumping messages from your top-level window to the graph via 
the IGraphNotify interface. The renderer isn't getting the power events 
because it doesn't have its own window in order to hear them.

I could be wrong though.

drep
date: Tue, 8 Jul 2008 18:56:47 +0100   author:   drep

Re: VMR9 and power suspend   
On Tue, 8 Jul 2008 09:43:31 -0700 (PDT), vkc wrote:

>  Any suggestions for what I
> need to do to have VMR9 continue to render after resuming from standby/
> hibernate? Even restarting the filter graph doesnt seem to solve the
> problem.

Do you get WM_DISPLAYCHANGE on the application's message loop?  If so, see

IVMRWindowlessControl9::DisplayModeChanged

Any dshow EC_ events?

There has been discussion in the past about problems with VMR9 and screen
savers.  See Google Groups:

http://groups.google.com/groups/search?ie=UTF-8&q=screen+saver+vmr9+group%3Amicrosoft.public.win32.programmer.directx.video&qt_s=Search

Nothing definitive but it may help you find a solution.

Please report back if you find anything.

-- 
Please read this before replying:
1. Dshow & posting help:  http://tmhare.mvps.org/help.htm
2. Trim & respond inline (please don't top post or snip everything)
3. Benefit others:  follow up if you are helped or you found a solution
date: Tue, 8 Jul 2008 20:21:14 -0600   author:   The March Hare [MVP] erland

Re: VMR9 and power suspend   
Solved the problem.

Since VMR9 is configured for windowless operation, the container
window must handle WM_PAINT messages and must call
IVMRWindowlessControl9::RepaintVideo.

Should have paid more attention to the VMR9 documentation:

http://msdn.microsoft.com/en-us/library/ms788128(VS.85).aspx

Thanks
Vilas


On Jul 8, 6:56 pm, "drep" 
wrote:
> > When configured for
> > windowless rendering mode, the VMR9 filter does not continue to render
> > after a power standby/hibernate cycle.
>
> You could try pumping messages from your top-level window to the graph via
> the IGraphNotify interface. The renderer isn't getting the power events
> because it doesn't have its own window in order to hear them.
>
> I could be wrong though.
>
> drep
date: Wed, 9 Jul 2008 04:13:22 -0700 (PDT)   author:   vkc

Re: VMR9 and power suspend   
On Tue, 8 Jul 2008 20:21:14 -0600, The March Hare [MVP] wrote:

> Do you get WM_DISPLAYCHANGE on the application's message loop?  If so, see
> 
> IVMRWindowlessControl9::DisplayModeChanged
> 
> Any dshow EC_ events?
> 
> There has been discussion in the past about problems with VMR9 and screen
> savers.  See Google Groups:
> 
> http://groups.google.com/groups/search?ie=UTF-8&q=screen+saver+vmr9+group%3Amicrosoft.public.win32.programmer.directx.video&qt_s=Search
> 
> Nothing definitive but it may help you find a solution.
> 
> Please report back if you find anything.

I've never completely solved this problem.  In Windowless mode it is a
problem when simply locking the desktop as the DirectDraw/3D surface is
lost.  You should receive an EC_ event in this case however the trick is
getting it running again after the unlock/restore as the old renderer
doesn't seem to work any more.  I found I needed to strip out the renderer
and create a new one before I could successfully re-run the graph.  If you
find an alternative solution I would be interested.

-- 
http://www.chrisnet.net/code.htm
[MS MVP for DirectShow / MediaFoundation]
date: Thu, 10 Jul 2008 12:11:30 -0400   author:   Chris P.

Re: VMR9 and power suspend   
On Thu, 10 Jul 2008 12:11:30 -0400, Chris P. wrote:

> I found I needed to strip out the renderer
> and create a new one before I could successfully re-run the graph.  If you
> find an alternative solution I would be interested.

You'd think calling IVMRWindowlessControl9::DisplayModeChanged would handle
it :(  I only use VMR9 for a limited feature of my app, mostly a custom
renderer.

-- 
Please read this before replying:
1. Dshow & posting help:  http://tmhare.mvps.org/help.htm
2. Trim & respond inline (please don't top post or snip everything)
3. Benefit others:  follow up if you are helped or you found a solution
date: Thu, 10 Jul 2008 15:19:12 -0600   author:   The March Hare [MVP] erland

Google
 
Web ureader.com


    COPYRIGHT 2007, YARDI TECHNOLOGY LIMITED, ALL RIGHT RESERVE  |   contact us