Dirk Meyer wrote:
I had this working over mplayer but I might have been using
force-windowed in /etc/directfbrc.  It is also very possible to modify
mplayer and df_xine to display onto an existing window's surface,
still using the BES.  This way Freevo could startup and maintain
several windows - for main screen, OSD, picture in picture, video
previews, and full video.


That remonds me of a design problem. Based on the display we should do
some special stuff in the mplayer or xine plugins. Right now, the user
has to set everything. Three possible solutions:

1. mplayer/xine knows about every display. Disadvantage: every time we
   add a display, we need to expand mplayer/xine

2. The display knows about special mplayer/xine settings.
   Disadvantage: when we add a new player, we need to change all
   displays

I would see option 1 to be a lesser evil than option 2. It is true that both are not optimal and kinda undermines the abstraction mevas gives us.



3. We add a dummy variable display to freevo.conf and do some special
settings in freevo_conf.py. Disadvantage: we need to change this
every time we add something new.

I think that the 'diaplay' variable in freevo.conf should be used to set GUI_DIAPLAY automaticly (If it doesn't already). Based on that we can set an intelligent default for MAPLAYER_VO_DEV or the xine -V flag, both of which could be overriden in local_conf.py.



Ideas?

What about adding a module to src/config/ so we can config.detect('display'). Much of this work can be done there, setting intelligent defaults and perhaps even setting some argument variables that the mplayer or xine tv/video plugins can use as-is with no redundant checks required. If there's any special magic or workaround that needs to be done for certain displays then it could be done in the src/config/display.py file. Just a thought...



Dischi, on a related note, I was wondering if you could add a get_
method to the src/gui/displays/ code that returns a list of (or
active) canvas.


Like gui.display.display_stack?

Heh, yes, just like that and get_display(). :) Ok, I'll go try something with that.


-Rob



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Freevo-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-users

Reply via email to