[MPlayer-G2-dev] Concerning TODO item re-think parent-child connection, move to vf_vo2.c maybe

Attila Kinali kinali at gmx.net
Wed Dec 10 22:42:31 CET 2003


On Tue, 9 Dec 2003 14:25:21 +0100
"Sascha Sommer" <saschasommer at freenet.de> wrote:

> Ok lets see what we have and what we need.
> As far as I know there are two kinds of vo modules. Exclusive and
> nonexclusive or
> windowed drivers. Exclusive drivers are fbdev, vesa, svga, dga etc. and the
> windowed
> x11, xv, directx, gl. 

Sofar, all drivers beside x11 and Xv on multiple screens are exclusive.
Exclusive in that sense that you can only open one instance at a time.
I think what you mean is that you can/cannot open another (x11) window
for the GUI.

Now, i don't think that we should overcomplicate G2 by adding
a distinction for exclusive/nonexclusive drivers. G2 is
only a lib to be used by frontends. Thus a frontend should
know what it can do with which vo module.

> VOCTRL_SET_WINDOW
> VOCTRL_SET_COLORKEY
> VOCTRL_RESIZE_DEST

Those controls are imho enough... i've not read all the vo code
yet, so maybe there is another one needed but i dont think so.
 
> But what about vidix and the kernel mode drivers like mga_vid and tdfx_vid?
> In G1 these can be used either as windowed drivers via [x/win]vidix or as
> subdriver
> of an exclusive driver like vo vesa.

mga_vid and tdfx_vid only give you an abstraction on the hardware, just
like vesa or Xv, nothing more. I dont think we have to change the
drivers themselfs but (if there is any need to change ofcourse) the 
vo modules..


> Using them as windowed drivers in G2 is no problem as vo xvidix's job is
> already done
> by the GUI. One would only need to adjust their api to match the libvo2 api.
> To avoid the code duplication when using them in exclusive mode as it exist
> in G1 I would propose to make a special video filter that opens two vos.
> It would open the exclusive driver and would call its preinit and config and
> maybe paint the background with
> the colorkey.As the next step it could open a child driver like vidix and
> configurate it for playback ontop of the exclusive driver. This would allow
> to use vidix and the kernel mode drivers toghether with exclusive vo drivers
> without adapting the later ones to support them.
> Feel free to comment.


Afaik there was a diskussion about the xover system,
where drivers could say "i can work in a x11 env with
an overlay" and iirc this is already implemented.
Though this is neither very generic nor portable to other
systems, it's imho the way how it should be done.
Everything else i can currently think of would be overcomplicated
just for being able to handle special cases that most probably
never occur.


			Attila Kinali

-- 
egp ist vergleichbar mit einem ikea bausatz fuer flugzeugtraeger
			-- reeler in +kaosu



More information about the MPlayer-G2-dev mailing list