Duncan Webb wrote:
Ville Syrjälä wrote:
On Fri, Nov 25, 2005 at 08:36:41AM +0100, Jiri Svoboda wrote:
-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Ville
Syrjälä
Sent: Thursday, November 24, 2005 6:47 PM
To: Duncan Webb
Cc: [email protected]
Subject: Re: [directfb-users] MPlayer on directfb fails to
deinitialisecorrectly
On Mon, Nov 21, 2005 at 10:00:15AM -0100, Duncan Webb wrote:
When I run mplayer with -vo directfb now everything exits but
leaves the last frame on the console. The directfb message contain:
(!!!) *** WARNING [Application exited without de-initialization
of DirectFB!] *** [core.c:727 in dfb_core_deinit_check()]
At least in my copy of libvo/vo_directfb2.c the Release() function
is commented out (line 1024). It seems it doesn't like to to do the
preinit() more than once so if you enable the Release() bit you
also have to comment out the "if (dfb) return 0;" at line 189. Oh
and you should also release the keyboard and event buffer too
(around line 995).
Yes, uninit is disabled in vo_directfb2.c. More than one (while
playing multiple media files) init/deinit of dfb caused
troubles. So I have commented out dfb deinit.
Hmm. It works with dfbmga. Also dfbmga supports -fixed-vo which means
it doesn't do preinit()/uninit() for every file.
This seems to work well on the console; interestingly, it doesn't
fully exit when from from a xterm on another machine but that does not
matter to me.
Thanks again,
Duncan
------------------------------------------------------------------------
--- main/libvo/vo_directfb2.c 2005-11-25 14:31:10 +0100
+++ main/libvo/vo_directfb2.c-patched 2005-11-25 12:36:58 +0100
@@ -991,20 +991,21 @@
/*
* (Release)
*/
-/*
mp_msg(MSGT_VO, MSGL_INFO,"DirectFB: Releasing buffer\n");
if (buffer) buffer->Release (buffer);
mp_msg(MSGT_VO, MSGL_INFO,"DirectFB: Releasing keyboard\n");
if (keyboard) keyboard->Release (keyboard);
-*/
+
if (frame) {
mp_msg(MSGT_VO, MSGL_INFO,"DirectFB: Releasing frame\n");
frame->Release (frame);
frame = NULL;
};
-// switch off BES
-// if (layer) layer->SetOpacity(layer,0);
+ if (layer) {
+ mp_msg(MSGT_VO, MSGL_INFO,"DirectFB: Setting Opacity 0 (switch off BES)\n");
+ layer->SetOpacity(layer,0);
+ }
if (layer) {
mp_msg(MSGT_VO, MSGL_INFO,"DirectFB: Releasing layer\n");
@@ -1018,11 +1019,9 @@
primary = NULL;
}
-
-/* mp_msg(MSGT_VO, MSGL_INFO,"DirectFB: Releasing DirectFB library\n");
-
+ mp_msg(MSGT_VO, MSGL_INFO,"DirectFB: Releasing DirectFB library\n");
dfb->Release (dfb);
-*/
+
mp_msg(MSGT_VO, MSGL_INFO,"DirectFB: Uninit done.\n");
}
_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users