How can I detect if a given window has an hardware overlay surface? (like MediaPlayer, WinDVD, VLC,...)
+1
A:
Overlay surfaces are not related to any system window, in principle, they are surfaces to be "composed" with the video framebuffer (or the primary display surface). What you can detect is (depending on your API) if the hardware supports overlays, how many planes, supported formats (YUV, etc) and so on. This can be done from DX and OpenGL, for example.
Many tasks done in the past with overlays can be done now with the composition support of modern window managers, e.g: compiz, DWM in Vista, Quartz in OSX. In fact, I think programming with raw overlay surfaces is discouraged since WMs are providing such composition facilities for application developers.
Hernán
2009-09-03 05:21:47