[MPlayer-dev-eng] Writing a brand new D3D video output to fix Vista Aero disabling

Reimar Döffinger Reimar.Doeffinger at stud.uni-karlsruhe.de
Wed Jun 4 19:33:31 CEST 2008


Hello,
On Wed, Jun 04, 2008 at 12:39:07AM +0300, Georgi Petrov wrote:
> Btw I have one problem with the OpenGL driver - no matter what options
> I use, when I move the window on my second display (TVOUT), it seems
> like it's rendered with 20 fps or so. The picture is choppy. It plays
> ok on my primary screen.

Interesting, because this setup is exactly one of the reasons why I have
been using -vo gl, because it works without trouble both on the local
display and on the TV (though vsync is essential for the TV).
I have been using it on Linux with the NVidia drivers and both TwinView
and two independent displays without any issues, so that is at least not
a general problem.

[...]
> 4. Overlays are not modern anymore. In a composited desktop you can't
> expect to have some region of the screen, where you can draw directly
> anything you want. Everything should be relayed through DWM. D3D is
> just a convenient and supported way to do it. DirectDraw is not.

Well, I can't resist to say: That is just Microsoft being lazy though,
to my knowledge X can support xv with compositing, and at least Xgl
could do it in a way that integrated without problems.

> As somebody pointed out, newer video cards scale down overlay HW. A quoute:
> 
> "The nVidia GeForce 8800 series cards including the 8800GT and 8800GTS
> now only support a single texture overlay on the primary monitor.
> Therefore they cannot properly support more than one video playback
> using hardware acceleration, regardless of the platform."

I'd really like to know details on that. Actually I can check tomorrow.
If they mean what under Linux is called "NV17 Video Texture" I really
can see no reason to do that since the functionality can use normal 3D
hardware and even if not it is cheap enough in hardware cost that they
could support 32 on a simple 7200 GPU.

> Ha ha - hardware acceleration through overlay not, but through well
> working interface like Direct3D - you can have as many videos WITH
> hardware acceleration as you want.

Well, until the installed memory is full or you reach the 80 GB/s
transfer rate of the cards memory of course ;-)

> This trend will continue and the next nVidia/ATI hardware won't have
> overlay at all. Now on Windows guess which interface is supported
> best? DirectX! OpenGL "works", but as you see - I'm having issues with
> it. No offense to the Reimar, who developed the plugin, but you know -
> it's Windows and MS's interfaces are always treated the best.

Well, honestly in the case of OpenGL it's usually ATI and not MS who
causes the problems. And in my very personal experience that is not
limited to OpenGL at all.

> Looking around everybody else has D3D output. I don't see a single
> other player without support for it on windows except MPlayer based
> ones. This is a shame I'm trying to fix :)

Well, that is no surprise. We do not have anyone maintaining the Windows
port in general. I myself considered writing a D3D vo, but (besides that
D3D programming is a pain with C, and it is probably triple pain if you
would want it to still work on Win9x) who is there to take care of?
OpenGL has the advantage that thanks to being supported on Windows, Linux,
Solaris,... there is a bigger chance someone will take care of it if I
can't.

> So the bottom line is - we shall see after I complete the driver. We
> will perform measurements, check compatibility, stability, support and
> anything else and I think that especially on Vista this will turn out
> to be the ultimate video out. Not because I wrote it or something
> stupid like that. Just because of the facts :)

I do not really disagree and it is not my intention to discourage you
(though luckily it seems that would be quite hard anyway ;-) ).
Just don't expect too much at once, -vo gl is the result of several
years of effort - that sure can be reduced to less since I haven't been
working on it all the time, but still, I expect it to be quite some time
till you can beat it in (almost) all aspects ;-)

Greetings,
Reimar Döffinger



More information about the MPlayer-dev-eng mailing list