Thanks,
Ole Dittmann
System-wide:
1. Start -> Run "dxdiag.exe" -> Display panel
2. Control Panel -> Display -> Settings -> Advanced ->
Troubleshoot
Per-renderer (only keep GDI and offscreen surfaces, you
don't want primary surfaces or overlays):
1. (O)VR: IDirectDrawVideo::SetSwitches()
2. OM: no way (always uses DirectDraw5's overlays)
3. VMR7: IVMRFilterConfig::SetRenderingPrefs()
4. VMR9: no way (always uses Direct3D9 textures or render
targets, I can't remember)
5. EVR: no idea, but I guess it behaves like the VMR9
--
// Alessandro Angeli
// MVP :: DirectShow / MediaFoundation
// mvpnews at riseoftheants dot com
// http://www.riseoftheants.com/mmx/faq.htm
"Windows Media Player 11 -> Options -> Performance -> Use DirectX Video
Acceleration" would be the switch I want to have in my application.
(This was translated from german sorry if its not exact)
There you can deactivate decoding hardware but keep overlays and other stuff
which solves many problems - but only for media player
"Alessandro Angeli" <nob...@nowhere.in.the.net> schrieb im Newsbeitrag
news:OFr3crCk...@TK2MSFTNGP06.phx.gbl...
Well, I'm not sure if this a acceptable solution, but you can set the
aceleration level in the graphic card's properties. It's system wide
alright...
Matias
> "Windows Media Player 11 -> Options -> Performance -> Use
> DirectX Video Acceleration" would be the switch I want to
> have in my application.
I have no idea what WMP's switch does. That is, it can
either somehow disable DXVA-support in the video renderer or
just tell the WMV decoder to not use DXVA, in which case
DXVA would still be used by other video decoders.
There doesn't seem to be any way in IAMVideoAccelerator to
disable DXVA in the renderer, so my guess is that WMP can
only disable DXVA in the WMV decoder (g_wszWMVCDXVAEnabled
property of the WMV decoder DMO or
IWMCodecAMVideoAccelerator or IWMReaderAccelerator on its
internal WMReader).
You can do the same. If you want to disable DXVA for any
decoder, you must prevent the decoder to negotiate a DXVA
connection with the renderer. Inserting the stock
SampleGrabber filter in between decoder and renderer should
be enough (you need to configure it in sample callback mode
and you callback can simply return S_OK without doing
anything). Of course, inserting the SampleGrabber limits the
media type negotiation even though it doesn't affect
performance noticeably. A better choice would be a custom
trans-in-place filter:
http://groups.google.com/group/microsoft.public.win32.programmer.directx.video/msg/ac95cceb368461ef
"Matias" <mat...@irc.pl> schrieb im Newsbeitrag
news:fsgvj1$l2s$1...@news.interia.pl...
Gruss, Ole Dittmann
"Alessandro Angeli" <nob...@nowhere.in.the.net> schrieb im Newsbeitrag
news:ec9XdnEk...@TK2MSFTNGP03.phx.gbl...