I finally got DirectFB (0.9.20) setup and working on my new test system (using a G450!).
Argh, a G450... sorry I missed that, I just woke up! I guess you should be using 'dfgmga'.
But now comes the problem I am having with freevo & directfb. I have set in my freevo.conf "display = directfb" And when I go to play a movie, all I get is a black screen, and no video / audio comes out. Pretty much the same problem as the poster below had back in March.
Ok, if you use 'dfbmga' then OSD_STOP_WHEN_PLAYING = 1 gets set automaticly, which might fix your problem (you can set that anyways in local_conf.py).
The attached patch (against CVS) contains my directfb changes (which I'd still like to commit) and using 'directfb' may work for you with no further changes.
-Rob
Index: freevo_config.py =================================================================== RCS file: /cvsroot/freevo/freevo/freevo_config.py,v retrieving revision 1.345 diff -u -r1.345 freevo_config.py --- freevo_config.py 4 Jul 2004 08:05:12 -0000 1.345 +++ freevo_config.py 8 Jul 2004 11:29:07 -0000 @@ -938,7 +938,7 @@ OSD_OVERSCAN_X = 20 OSD_OVERSCAN_Y = 10 -if CONF.display == 'dfbmga': +if CONF.display in ( 'directfb', 'dfbmga' ): OSD_OVERSCAN_X = 50 OSD_OVERSCAN_Y = 50 @@ -952,7 +952,7 @@ # OSD_STOP_WHEN_PLAYING = 0 -if CONF.display in ( 'dfbmga', 'dxr3', 'dga' ): +if CONF.display in ( 'directfb', 'dfbmga', 'dxr3', 'dga' ): OSD_STOP_WHEN_PLAYING = 1 # @@ -1043,7 +1043,7 @@ # prio <0 has no effect unless run as root. MPLAYER_NICE = -20 -if CONF.display == 'dfbmga': +if CONF.display in ( 'directfb', 'dfbmga' ): MPLAYER_ARGS_DEF = ('-autosync 100 -nolirc ' + '-autoq 100 -fs ') else: Index: contrib/debian/freevo.templates =================================================================== RCS file: /cvsroot/freevo/freevo/contrib/debian/freevo.templates,v retrieving revision 1.2 diff -u -r1.2 freevo.templates --- contrib/debian/freevo.templates 25 Oct 2003 14:44:02 -0000 1.2 +++ contrib/debian/freevo.templates 8 Jul 2004 11:29:07 -0000 @@ -1,6 +1,6 @@ Template: freevo/display Type: select -Choices: x11, fbdev, dxr3, mga, dfbmga, dga +Choices: x11, fbdev, dxr3, mga, directfb, dfbmga, dga Description: Video output Choose the output method to use for Freevo Index: src/osd.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/osd.py,v retrieving revision 1.163 diff -u -r1.163 osd.py --- src/osd.py 29 Jun 2004 18:29:20 -0000 1.163 +++ src/osd.py 8 Jul 2004 11:29:08 -0000 @@ -339,10 +339,9 @@ self.width = config.CONF.width self.height = config.CONF.height - if config.CONF.display== 'dxr3': + if config.CONF.display == 'dxr3': os.environ['SDL_VIDEODRIVER'] = 'dxr3' - - if config.CONF.display == 'dfbmga': + elif config.CONF.display in ( 'directfb', 'dfbmga' ): os.environ['SDL_VIDEODRIVER'] = 'directfb' # sometimes this fails Index: src/setup_freevo.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/setup_freevo.py,v retrieving revision 1.16 diff -u -r1.16 setup_freevo.py --- src/setup_freevo.py 20 Apr 2004 17:33:59 -0000 1.16 +++ src/setup_freevo.py 8 Jul 2004 11:29:08 -0000 @@ -129,7 +129,7 @@ --display=DISP set the display DISP can be x11, fbdev, dxr3, mga, - dfbmga or dga + directfb, dfbmga or dga --tv=NORM set the TV standard NORM can be ntsc, pal or secam @@ -167,7 +167,7 @@ def check_config(conf): vals_geometry = ['800x600', '768x576', '640x480'] - vals_display = ['x11', 'fbdev', 'dfbmga', 'mga', 'dxr3', 'dga'] + vals_display = ['x11', 'fbdev', 'directfb', 'dfbmga', 'mga', 'dxr3', 'dga'] vals_tv = ['ntsc', 'pal', 'secam'] vals_chanlist = ['us-bcast', 'us-cable', 'us-cable-hrc', 'japan-bcast', 'japan-cable', 'europe-west', @@ -316,7 +316,7 @@ check_config(conf) # set geometry for display/tv combinations without a choice - if conf.display == 'dfbmga': + if conf.display in ( 'directfb', 'dfbmga' ): if conf.tv == 'ntsc': conf.geometry = '720x480' else: Index: src/tv/plugins/tvtime.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/tv/plugins/tvtime.py,v retrieving revision 1.36 diff -u -r1.36 tvtime.py --- src/tv/plugins/tvtime.py 6 Jun 2004 17:15:10 -0000 1.36 +++ src/tv/plugins/tvtime.py 8 Jul 2004 11:29:08 -0000 @@ -476,9 +476,9 @@ outputplugin = config.CONF.display if config.CONF.display == 'x11': outputplugin = 'Xv' - if config.CONF.display == 'mga': + elif config.CONF.display == 'mga': outputplugin = 'mga' - if config.CONF.display == 'dfbmga': + elif config.CONF.display in ( 'directfb', 'dfbmga' ): outputplugin = 'directfb' if mode == 'vcr': Index: src/www/__init__.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/www/__init__.py,v retrieving revision 1.7 diff -u -r1.7 __init__.py --- src/www/__init__.py 18 Nov 2003 12:58:38 -0000 1.7 +++ src/www/__init__.py 8 Jul 2004 11:29:08 -0000 @@ -5,12 +5,12 @@ class PluginInterface(plugin.DaemonPlugin): def __init__(self): - if config.CONF.display in ('dxr3', 'dfbmga'): + if config.CONF.display in ('dxr3', 'directfb', 'dfbmga'): print 'For some strange reason, the starting of the webserver inside' - print 'Freevo messes up with the DXR3 and dfbmga output. The webserver' + print 'Freevo messes up with the DXR3 and directfb output. The webserver' print 'plugin will be disabled. Start it from outside Freevo with' print 'freevo webserver [start|stop]' - self.reason = 'dxr3 or dfbmga output' + self.reason = 'dxr3 or directfb output' return plugin.DaemonPlugin.__init__(self) self.pid = None