[MPlayer-dev-eng] GUI and vo_x11_create_vo_window()

Reimar Döffinger Reimar.Doeffinger at gmx.de
Fri Aug 19 19:49:37 CEST 2011


On Fri, Aug 19, 2011 at 09:25:26AM +0200, Ingo Brückl wrote:
> it is about telling the vo driver what state
> the window is in it is going to handle.

vo driver doesn't care and does not need to know when WinID is set.

> And I think GUI_SETUP_VIDEO_WINDOW is
> exactly the right place to do it, because that is why GUI_SETUP_VIDEO_WINDOW
> exists at all.

Actually, I think not really. It is there to inform the Gui to
setup the window so that libvo can use it.
And looking at the code there indeed currently seems to be only
information going from vo to GUI, nothing the other way.

> As you can see, it is just about telling vo_x11_create_vo_window() the right
> thing. Because vo_x11_create_vo_window() sets vo_fs according to the flags it
> gets, this information has to be correct:

As I said: libvo does not need to know the fullscreen state with WinID,
it gets a window, it draws in it. End of story.
Well, not quite. The vo_fs is misused as a "use aspect scaling flag" in
this case.

> Concerning setting/unsetting fullscreen there isn't any further hack nor any
> other interference with vo code.

Thing is, the WinID code is meant to work without (or with minimal) need for
information from the GUI to libvo, because that is a pain to do for
properly separated GUIs.
This kind of close coupling was certainly never meant to be necessary.
Which is why I still very much kindly request that you try some of my
other suggestions, like just setting "fullscreen" variable to 1 once and
see if that doesn't work well enough.
I admit this is still rather ugly, but a "use aspect" variable does not
currently exist.


More information about the MPlayer-dev-eng mailing list