Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
Le lundi 21 avril 2008 à 22:42 +0200, Duncan Webb a écrit : Jean P. wrote: Would you do something for me, as I don't use the vdr_xine plug-in and I would like to know from where this is being called. Just create an error or raise an exception. This will hopefully generate a stack trace which may indicate where the problem is being caused. ok that works for me here the patch for vdr_xine.py --- vdr_xine.py.old 2008-04-21 08:56:04.0 +0200 +++ vdr_xine.py 2008-04-21 08:56:26.0 +0200 @@ -75,7 +75,7 @@ import re #freevo modules -import config, menu, rc, plugin, util +import config, menu, rc, plugin, util, osd, time from item import Item import childapp import pygame.locals as key @@ -152,6 +152,7 @@ config.KEYMAP[key.K_F11] = 'YELLOW' config.KEYMAP[key.K_F12] = 'BLUE' config.KEYMAP[key.K_BACKSPACE] = 'BACK' + self.osd = osd.get_singleton() def actions(self): @@ -186,6 +187,8 @@ if self.app: self.app.stop('quit\n') rc.app(None) You could try this too: for i in range(10): if not rc.app.isAlive(): break time.sleep(0.1) This should exit with a stack trace raise error OK done this is my output: VDR_XINE: EVENT DOWN VDR_XINE: EVENT EXIT 2008-04-21 23:37:25,790 ERRORevent callback Traceback (most recent call last): File /usr/lib/python2.5/site-packages/kaa/notifier/event.py,line 191, in handle handler(event) File /usr/lib/python2.5/site-packages/kaa/notifier/event.py, line 145, in __call__ super(EventHandler, self).__call__(event) File /usr/lib/python2.5/site-packages/kaa/notifier/nf_wrapper.py, line 97, in __call__ ret = super(NotifierCallback, self).__call__(*args,**kwargs) File /usr/lib/python2.5/site-packages/kaa/notifier/callback.py, line 168, in __call__ result = cb(*cb_args, **cb_kwargs) File /usr/lib/python2.5/site-packages/freevo/main.py, line 284, in eventhandler if not rc.app()(event): File /usr/lib/python2.5/site-packages/freevo/plugins/vdr_xine.py, line 297, in eventhandler self.stop() File /usr/lib/python2.5/site-packages/freevo/plugins/vdr_xine.py, line 191, in stop if not rc.app.isAlive(): AttributeError: 'function' object has no attribute 'isAlive' VDR_XINE: EVENT VIDEO_END VDR_XINE: VIDEO_END Freevo 1.8.0 r10581 finished at Mon Apr 21 23:34:21 2008 +time.sleep(1) +self.osd.update() def eventhandler(self, event, menuw=None): Will you also say if you have a fast machine or a slow one, and it has hyper-threading or dual core. AFAICT python does not use more than one core, need parallel python for that. My hardware is an EPIA SP13000 with Openchrome driver for MPEG acceleration I would like to find out why this problem has only recently appeared. I'm guessing that vdr_xine.py is based on ChildApp instead of ChildApp2, if this is the case then just changing this to ChildApp2 may sort out the problem as it's stop command waits for the child to be completed before returning. I don't think so because I see in the code: import childapp and self.app = childapp.ChildApp2(command) Thanks Duncan Does it help? (I try to understand what you ask me to do but is my first time in python) Jean - This SF.net email is sponsored by the 2008 JavaOne(SM)
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
Jean P. wrote: Le lundi 21 avril 2008 à 22:42 +0200, Duncan Webb a écrit : Jean P. wrote: Would you do something for me, as I don't use the vdr_xine plug-in and I would like to know from where this is being called. Just create an error or raise an exception. This will hopefully generate a stack trace which may indicate where the problem is being caused. ok that works for me here the patch for vdr_xine.py --- vdr_xine.py.old 2008-04-21 08:56:04.0 +0200 +++ vdr_xine.py 2008-04-21 08:56:26.0 +0200 @@ -75,7 +75,7 @@ import re #freevo modules -import config, menu, rc, plugin, util +import config, menu, rc, plugin, util, osd, time from item import Item import childapp import pygame.locals as key @@ -152,6 +152,7 @@ config.KEYMAP[key.K_F11] = 'YELLOW' config.KEYMAP[key.K_F12] = 'BLUE' config.KEYMAP[key.K_BACKSPACE] = 'BACK' + self.osd = osd.get_singleton() def actions(self): @@ -186,6 +187,8 @@ if self.app: self.app.stop('quit\n') rc.app(None) You could try this too: for i in range(10): if not rc.app.isAlive(): break time.sleep(0.1) This should exit with a stack trace raise error OK done this is my output: VDR_XINE: EVENT DOWN VDR_XINE: EVENT EXIT 2008-04-21 23:37:25,790 ERRORevent callback Traceback (most recent call last): File /usr/lib/python2.5/site-packages/kaa/notifier/event.py, line 191, in handle handler(event) File /usr/lib/python2.5/site-packages/kaa/notifier/event.py, line 145, in __call__ super(EventHandler, self).__call__(event) File /usr/lib/python2.5/site-packages/kaa/notifier/nf_wrapper.py, line 97, in __call__ ret = super(NotifierCallback, self).__call__(*args, **kwargs) File /usr/lib/python2.5/site-packages/kaa/notifier/callback.py, line 168, in __call__ result = cb(*cb_args, **cb_kwargs) File /usr/lib/python2.5/site-packages/freevo/main.py, line 284, in eventhandler if not rc.app()(event): File /usr/lib/python2.5/site-packages/freevo/plugins/vdr_xine.py, line 297, in eventhandler self.stop() File /usr/lib/python2.5/site-packages/freevo/plugins/vdr_xine.py, line 191, in stop if not rc.app.isAlive(): AttributeError: 'function' object has no attribute 'isAlive' VDR_XINE: EVENT VIDEO_END VDR_XINE: VIDEO_END Freevo 1.8.0 r10581 finished at Mon Apr 21 23:34:21 2008 I've just downloaded the code for this, but not installed it. So the stop comes from the main.py. This code below may fix the redisplay problem, as the menu may redraw itself. The advantage is that freevo will wait up to 1 second for the app to exit, when it finished earlier then it waits less time. | for i in range(10): | if not self.app.isAlive(): | break | time.sleep(0.1) If this works but doesn't redisplay the screen then put the self.osd.update() back in, hopefully time.sleep(1) is not required. +time.sleep(1) +self.osd.update() def eventhandler(self, event, menuw=None): Will you also say if you have a fast machine or a slow one, and it has hyper-threading or dual core. AFAICT python does not use more than one core, need parallel python for that. My hardware is an EPIA SP13000 with Openchrome driver for MPEG acceleration So energy efficient and not mega fast. Are you using X or DirectFB? I would like to find out why this problem has only recently appeared. I'm guessing that vdr_xine.py is based on ChildApp instead of ChildApp2, I don't think so because I see in the code: import childapp and self.app = childapp.ChildApp2(command) This is the way mplayer and xine work too except that these device a app class from ChildApp2. if this is the case then just changing this to ChildApp2 may sort out the problem as it's stop command waits for the child to be completed before returning. Does it help? (I try to understand what you ask me to do but is my first time in python) This is no problem, I'm sure that you will find Python relatively simple. Yes thanks, Duncan BTW I can't always respond immediately as I'm at work during the day. - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
ok that works for me here the patch for vdr_xine.py --- vdr_xine.py.old 2008-04-21 08:56:04.0 +0200 +++ vdr_xine.py 2008-04-21 08:56:26.0 +0200 @@ -75,7 +75,7 @@ import re #freevo modules -import config, menu, rc, plugin, util +import config, menu, rc, plugin, util, osd, time from item import Item import childapp import pygame.locals as key @@ -152,6 +152,7 @@ config.KEYMAP[key.K_F11] = 'YELLOW' config.KEYMAP[key.K_F12] = 'BLUE' config.KEYMAP[key.K_BACKSPACE] = 'BACK' + self.osd = osd.get_singleton() def actions(self): @@ -186,6 +187,8 @@ if self.app: self.app.stop('quit\n') rc.app(None) +time.sleep(1) +self.osd.update() def eventhandler(self, event, menuw=None): THX a lot Bye Le jeudi 17 avril 2008 à 14:09 +0200, Gorka Olaizola a écrit : On Thu, Apr 17, 2008 at 06:31:19AM -0400, Partha Bagchi wrote: I have a similar issue though not with vdr_xine but with xine. After I finish playing a movie and hit q to quit, the control is returned to freevo. However, the screen is black. I have seen this behaviour with the freevoscreensaver plugin. After quiting the screensaver the screen was black. I added a sleep time of one second in the plugin shutdown function and after that it seems to work well. time.sleep(1) self.osd.update() I think that the problem could be that Freevo calls to update the Freevo window before the window of the external application gets killed and then Pygame or X do not update the Freevo window because as the app window is hiding the Freevo window no one will see that blitting operation. Freevo appears then with the black screen and the screen, or parts of it, is drawed when a new event is received. - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
Jean P. wrote: Would you do something for me, as I don't use the vdr_xine plug-in and I would like to know from where this is being called. Just create an error or raise an exception. This will hopefully generate a stack trace which may indicate where the problem is being caused. ok that works for me here the patch for vdr_xine.py --- vdr_xine.py.old 2008-04-21 08:56:04.0 +0200 +++ vdr_xine.py 2008-04-21 08:56:26.0 +0200 @@ -75,7 +75,7 @@ import re #freevo modules -import config, menu, rc, plugin, util +import config, menu, rc, plugin, util, osd, time from item import Item import childapp import pygame.locals as key @@ -152,6 +152,7 @@ config.KEYMAP[key.K_F11] = 'YELLOW' config.KEYMAP[key.K_F12] = 'BLUE' config.KEYMAP[key.K_BACKSPACE] = 'BACK' + self.osd = osd.get_singleton() def actions(self): @@ -186,6 +187,8 @@ if self.app: self.app.stop('quit\n') rc.app(None) You could try this too: for i in range(10): if not rc.app.isAlive(): break time.sleep(0.1) This should exit with a stack trace raise error +time.sleep(1) +self.osd.update() def eventhandler(self, event, menuw=None): Will you also say if you have a fast machine or a slow one, and it has hyper-threading or dual core. AFAICT python does not use more than one core, need parallel python for that. I would like to find out why this problem has only recently appeared. I'm guessing that vdr_xine.py is based on ChildApp instead of ChildApp2, if this is the case then just changing this to ChildApp2 may sort out the problem as it's stop command waits for the child to be completed before returning. Thanks Duncan - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
Can *someone* please check this and either confirm of deny it, I mostly use DirectFB on a framebuffer and not test too much running X. I ran the following command on the command-line: xine --auto-play=q As you predicted, it hung there since there was no mrl and did not exit. Is that the check you are looking for? Thanks, Partha - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
On Wed, Apr 16, 2008 at 3:52 PM, Duncan Webb [EMAIL PROTECTED] wrote: [EMAIL PROTECTED] wrote: Hello, I have freshly and succesfully installed new release of freevo (V1.8) with vdr_xine (V0.2) plugins. THX to all the team for the job :D But I have a little unpleasant bug : when I quit VDR and comming back to Freevo the screen is black and not refresh. I have to pull the remote to partially see the menu but the left quarter of the screen still black Is this a Freevo or vdr_xine bug? How can this could be fixed? I can't help you here you as it has never been included in the freevo core, Lucian Muresan is the author. Duncan I have a similar issue though not with vdr_xine but with xine. After I finish playing a movie and hit q to quit, the control is returned to freevo. However, the screen is black. You have to hit the forward or some key on the remote to get the display back. My preferred video player is xine, and freevo version is 1.8.0. Thanks, Partha - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
On Thu, 17 Apr 2008, Partha Bagchi wrote: I have a similar issue though not with vdr_xine but with xine. After I finish playing a movie and hit q to quit, the control is returned to freevo. However, the screen is black. You have to hit the forward or some key on the remote to get the display back. My preferred video player is xine, and freevo version is 1.8.0. that behaviour is familiar to me from 1.7.3 and earlier i play dvds with xine but general video i use mplayer -- Well, I think we should get some bricks and some bats, and show him the *true* meaning of Christmas!' -- Bernice, Designing Women, 12/2/91. - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
On Thu, Apr 17, 2008 at 06:31:19AM -0400, Partha Bagchi wrote: I have a similar issue though not with vdr_xine but with xine. After I finish playing a movie and hit q to quit, the control is returned to freevo. However, the screen is black. I have seen this behaviour with the freevoscreensaver plugin. After quiting the screensaver the screen was black. I added a sleep time of one second in the plugin shutdown function and after that it seems to work well. time.sleep(1) self.osd.update() I think that the problem could be that Freevo calls to update the Freevo window before the window of the external application gets killed and then Pygame or X do not update the Freevo window because as the app window is hiding the Freevo window no one will see that blitting operation. Freevo appears then with the black screen and the screen, or parts of it, is drawed when a new event is received. signature.asc Description: Digital signature - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
Gorka Olaizola wrote: On Thu, Apr 17, 2008 at 06:31:19AM -0400, Partha Bagchi wrote: I have a similar issue though not with vdr_xine but with xine. After I finish playing a movie and hit q to quit, the control is returned to freevo. However, the screen is black. I have seen this behaviour with the freevoscreensaver plugin. After quiting the screensaver the screen was black. I've seen this too with df_xine, but here the problem is that xine was still running after the video has finished. IMHO xine-ui is rather poorly testing when the gui and the splash screen are disabled, it segfaults trying to display a splash screen which has never been initialized. You can try this by taking the command line and running xine under X but remove the --no-splash option and you will see that it displays the splash screen instead of exiting which the --auto-play=q option has told it to do. So it is still running but a black screen is being displayed. This is easy to check using a xterm by looking at the output from 'ps -ef' to see if xine is still running. I added a sleep time of one second in the plugin shutdown function and after that it seems to work well. time.sleep(1) self.osd.update() I think that the problem could be that Freevo calls to update the Freevo window before the window of the external application gets killed and then Pygame or X do not update the Freevo window because as the app window is hiding the Freevo window no one will see that blitting operation. Freevo appears then with the black screen and the screen, or parts of it, is drawed when a new event is received. This sound reasonable, but I'm not 100% convinced that hits is problem with xine as my checks show that xine is still running at the end of a video and so freevo doesn't know that it should update the screen. Can *someone* please check this and either confirm of deny it, I mostly use DirectFB on a framebuffer and not test too much running X. BTW which version of freevo are you using (as you use svn 1.8 which revision number). Duncan - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
Re: [Freevo-users] Display not refreshed after quitting plugin vdr_xine
[EMAIL PROTECTED] wrote: Hello, I have freshly and succesfully installed new release of freevo (V1.8) with vdr_xine (V0.2) plugins. THX to all the team for the job :D But I have a little unpleasant bug : when I quit VDR and comming back to Freevo the screen is black and not refresh. I have to pull the remote to partially see the menu but the left quarter of the screen still black Is this a Freevo or vdr_xine bug? How can this could be fixed? I can't help you here you as it has never been included in the freevo core, Lucian Muresan is the author. Duncan - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users
[Freevo-users] Display not refreshed after quitting plugin vdr_xine
Hello, I have freshly and succesfully installed new release of freevo (V1.8) with vdr_xine (V0.2) plugins. THX to all the team for the job :D But I have a little unpleasant bug : when I quit VDR and comming back to Freevo the screen is black and not refresh. I have to pull the remote to partially see the menu but the left quarter of the screen still black Is this a Freevo or vdr_xine bug? How can this could be fixed? THX Jean - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Freevo-users mailing list Freevo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-users