----- Original Message ----- From: "Rob Shortt" <[EMAIL PROTECTED]>
To: <freevo-users@lists.sourceforge.net>
Sent: Thursday, February 10, 2005 4:00 PM
Subject: Re: [Freevo-users] Re: mevas slow?


IIRC this is not possible, both mplayer and xine are running in
fullscreen mode and don't like other dfb applications.

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.


I also got this working but with different aproach. I modified dfbmga plugin in mplayer. I removed all layer initialitazion and reconfiguration. Insted of creating new layer/surface dfbmga was getting control of window that was created by my application that called mplayer. Window id (that is actually plain number) i passed through dfbmga calling parameters. I think that same thing can be achieved with modification of xine. With this aproach i got smooth transition between my application and mplayer (no flickering)
There could be a problem with directfb windows on top mplayer for tv output. Dfbmga for tv output uses surfaces with YV12 pixelformat. (This format gives accelerated video on tv output) In BES output it uses RGB format. Problem is that I think that windows with RGB surface can't be on top of windows (layers) with YV12 surface.
Insted of using directfb windows for osd on top mplayer (xine) we can use subpicture layer. This layer is only available for tv output, but freevo as htpc software is made for tv output, so this shouldn't be a problem. This layer can display only 16 colors but with good palette choice it is enough for nice osd (note: vdr also uses 16 colors for osd). Subpicture layer can give best performance because it is independent of crtc2 layer witch mplayer uses for it's output. Only downside of this is that as I know subpicture layer is available only on matrox cards.


For Dischi:
Here is my configuration:

/etc/directfbrc
-------------------------------
matrox-crtc2
matrox-tv-standard=pal
primary-layer=02
matrox-sgram
mode=720x576
no-cursor
disable-module=mouse
disable-module=joystick
disable-module=lirc

freevo_config.py (GUI related)
-------------------------------
GUI_DISPLAY = 'DFB'
GUI_BACKGROUND_VIDEO = ''
MPLAYER_BMOVL2_POSSIBLE = 0
GUI_FADE_STEPS = 10 # For deactivating fade effect this should be 0
GUI_XML_FILE = ''
GUI_DEFAULT_XML_FILE = 'blurr'
GUI_FORCE_TEXTVIEW_STYLE = 1
GUI_MEDIAMENU_FORCE_TEXTVIEW = 0
GUI_DFB_LAYER = 0


freevo.conf (GUI related)
-------------------------------
display = dfbmga
geometry = 720x576
tv = pal

Regards,
   Dino

P.S.
I just check out directfb cvs. Here is a part of gfx_utils.c (rgba_to_dst_format function)
...
case DSPF_YV12:
case DSPF_I420:
case DSPF_NV12:
case DSPF_NV16:
D_ONCE( "format not fully supported (only luma plane, yet)" );
...
It seems that there is partial support for displaying RGB content on YV12. Hope for more improvements :)




-------------------------------------------------------
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
Freevo-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freevo-users

Reply via email to