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.000000000 +0200
> > +++ vdr_xine.py 2008-04-21 08:56:26.000000000 +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 ERROR event 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) 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
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-users