Aubin Paul wrote:
On Mon, Oct 27, 2003 at 06:39:38PM +0100, Dirk Meyer wrote:

...


Sorry for the long mail, but it may help you to understand the stuff
and find bugs in the future (not that there are bugs).


Please test it!


Thanks for finding this; I remember fixing a bug like this awhile back
with similar weird results. I had no idea this was the issue, so thank
you again.

While we're on the subject of eventhandling in MPlayer:


I just tested the most recent CVS version briefly, and there is a problem with TV viewing. When pressing 'OK' or 'STOP' to return from viewing TV to the TV guide, it takes about 2 seconds to exit MPlayer.

I've attached the logs at the end of this email. It seems the problem is due to MPlayer not getting the 'quit' from freevo. Unfortunately I don't have time right now to dive into it...

/ Krister


[EMAIL PROTECTED] freevo.cvs]$ ./freevo
config.py (355): Loading configure settings: /home/krister/.freevo/freevo.conf
config.py (360): Cfg file data: "cdparanoia = ./runtime/apps/cdparanoia"
config.py (360): Cfg file data: "chanlist = us-cable"
config.py (360): Cfg file data: "display = x11"
config.py (360): Cfg file data: "geometry = 800x600"
config.py (360): Cfg file data: "jpegtran = ./runtime/apps/jpegtran"
config.py (360): Cfg file data: "lame = ./runtime/apps/lame"
config.py (360): Cfg file data: "mplayer = /usr/local/bin/mplayer"
config.py (360): Cfg file data: "oggenc = ./runtime/apps/oggenc"
config.py (360): Cfg file data: "renice = /usr/bin/renice"
config.py (360): Cfg file data: "setterm = /usr/bin/setterm"
config.py (360): Cfg file data: "tv = ntsc"
config.py (360): Cfg file data: "version = 2.1"
config.py (420): Loading cfg: ./freevo_config.py
Warning: /var/cache/freevo does not exists and can't be created
Please create this directory as root and set permissions for the
Freevo user to write to it.
Using /tmp/freevo as cache directory, but this is a bad idea


Loading cfg overrides: /home/krister/.freevo/local_conf.py
config.py (480): Logging to /tmp/freevo/main-500.log

Error: DIR_MOVIES not set, set it to Home directory


Error: DIR_AUDIO not set, set it to Home directory



Error: DIR_IMAGES not set, set it to Home directory



Error: DIR_RECORD not set Please set DIR_RECORD to the directory, where recordings should be stored or remove the tv plugin. Autoset variable to /home/krister.

Error: TV_SHOW_DATA_DIR not found
COVER_DIR not found
MOVIE_DATA_DIR not found
27900:  file=libXcursor.so.1.0;  DIRSP=NULL!
osd.py (438): SDL Driver: x11
skin.py (77): Imported skin main
main.py (351): Skin: Loading XML file noia
osd.py (301): Loading font "./share/fonts/VeraBd.ttf"
osd.py (301): Loading font "./share/fonts/VeraBd.ttf"
osd.py (301): Loading font "./share/fonts/VeraBd.ttf"
osd.py (301): Loading font "./share/fonts/VeraBI.ttf"
osd.py (301): Loading font "./share/fonts/VeraBd.ttf"
osd.py (301): Loading font "./share/fonts/Vera.ttf"
osd.py (301): Loading font "./share/fonts/VeraBd.ttf"
osd.py (301): Loading font "./share/fonts/VeraBd.ttf"
osd.py (301): Loading font "./share/fonts/VeraBd.ttf"
freevo: could not connect to socket
freevo: No such file or directory
WARNING: Could not initialize PyLirc!
GUIObject.py (150): inside GUIOBJECT INIT

WARNING: no pre-cached data
Freevo will cache each directory when you first enter it. This can
be slow. Start "./freevo cache" to pre-cache all directories to speed
up usage of freevo

osd.py (301): Loading font "./share/fonts/Vera.ttf"
xml_parser.py (658): Building the xml hash database...
xml_parser.py (699): done
mixer.py (165): Volume = 40
mixer.py (165): Volume = 90
mixer.py (165): Volume = 0
mixer.py (165): Volume = 0
mplayer.py (140): MPlayer version is: dev-CVS-030914-14:02-3.2.2
mplayer.py (148): MPlayer version set to: 9999
main.py (600): draw
area.py (175): show, force update
main.py (309): Main loop starting...
main.py (323): handling event MENU_SELECT
main.py (600): draw
main.py (323): handling event MENU_SELECT
GUIObject.py (150): inside GUIOBJECT INIT
GUIObject.py (150): inside GUIOBJECT INIT
GUIObject.py (150): inside GUIOBJECT INIT
PopupBox.py (145): set focus to <gui.PopupBox.PopupBox instance at 0x4150418c>
GUIObject.py (150): inside GUIOBJECT INIT
Label.py (239): LABEL: state=normal
Label.py (240): LABEL: font=./share/fonts/Vera.ttf
Label.py (241): LABEL: size=18
GUIObject.py (387): GUIObject::draw <gui.PopupBox.PopupBox instance at 0x4150418c>
LayoutManagers.py (135): FlowLayout: container="<gui.PopupBox.PopupBox instance at 0x4150418c>"
LayoutManagers.py (136): child="<gui.Border.Border instance at 0x41c9c5ec>"
LayoutManagers.py (137): child is 0x0
LayoutManagers.py (143): skipping border
LayoutManagers.py (135): FlowLayout: container="<gui.PopupBox.PopupBox instance at 0x4150418c>"
LayoutManagers.py (136): child="<gui.Label.Label instance at 0x41c9c5cc>"
LayoutManagers.py (137): child is -1x-1
LayoutManagers.py (155): child width not set
LayoutManagers.py (166): child width set to 380
LayoutManagers.py (175): child was 380x580
LayoutManagers.py (177): child now 365x30.0
LayoutManagers.py (180): end is 385
LayoutManagers.py (181): child row len is 0
LayoutManagers.py (182): child h_align is 1001
LayoutManagers.py (209): position="10,10"
LayoutManagers.py (235): moved right by 8
LayoutManagers.py (246): moved down by 50.0
PopupBox.py (267): PopupBox::_draw <gui.PopupBox.PopupBox instance at 0x4150418c>
Container.py (177): Container::draw <gui.PopupBox.PopupBox instance at 0x4150418c>
GUIObject.py (387): GUIObject::draw <gui.Border.Border instance at 0x41c9c5ec>
Border.py (183): Inside Border.draw...
Border.py (184): Border type: flat
Border.py (196): Border: x=0, y=0, w=0, h=0
GUIObject.py (387): GUIObject::draw <gui.Label.Label instance at 0x41c9c5cc>
Label.py (303): Label::_draw <gui.Label.Label instance at 0x41c9c5cc>
Label.py (304): text=Preparing the program guide
Label.py (345): parent="<gui.PopupBox.PopupBox instance at 0x4150418c>"
Label.py (346): self.surface="<Surface(365x30x32 SW)>"
Label.py (347): surface.rect: <rect(0, 0, 365, 30)>
Label.py (348): self.rect: 18,60.0,365,30.0
Label.py (349): parent.surface="<Surface(400x150x32 SW)>"
Label.py (350): position="18,60.0"
Label.py (356): draw position="18,60.0"
XMLTV, trying to read raw file (/tmp/TV.xml)
XMLTV file (/tmp/TV.xml) missing!
epg_xmltv.py: Only adding channels in list
GUIObject.destroy(): <gui.PopupBox.PopupBox instance at 0x4150418c>
GUIObject.destroy(): <gui.Border.Border instance at 0x41c9c5ec>
GUIObject.py (481): parent: <gui.PopupBox.PopupBox instance at 0x4150418c>
GUIObject.py (387): GUIObject::draw <gui.PopupBox.PopupBox instance at 0x4150418c>
GUIObject.destroy(): <gui.Label.Label instance at 0x41c9c5cc>
GUIObject.py (481): parent: <gui.PopupBox.PopupBox instance at 0x4150418c>
GUIObject.py (387): GUIObject::draw <gui.PopupBox.PopupBox instance at 0x4150418c>
GUIObject.py (481): parent: <menu.MenuWidget instance at 0x414f10ac>
osd.py (468): app is <menu.MenuWidget instance at 0x414f10ac>
osd.py (469): Setting context to menu
GUIObject.py (429): GUIObject::draw: have bg_surface
main.py (600): draw
epg: Returning new results
tvguide.py (117): update schedule
epg: Returning new results
tvguide.py (117): update schedule
main.py (600): draw
area.py (175): show, force update
main.py (323): handling event MENU_SELECT
tvguide.py (128): TVGUIDE EVENT is MENU_SELECT
main.py (577): clear: True
mode=tv channel=C69comedy.zap2it.com tuner=69
mixer.py (165): Volume = 0
MPlayer_Thread.run(): Started, cmd=--prio=-20 /usr/local/bin/mplayer -vo xv,sdl,x11, -fs tv://69 -tv driver=v4l:device=/dev/video0:input=0:norm=NTSC:chanlist=us-cable:width=640:height=480:outfmt=yuy2 -nocache -slave
File "/home/proj/freevo/freevo/runtime/lib/python2.3/threading.py", line 436, in __bootstrap
self.run()
File "/home/proj/freevo/freevo.cvs/src/tv/plugins/mplayer.py", line 414, in run
self.app = MPlayerApp(self.command)
File "/home/proj/freevo/freevo.cvs/src/tv/plugins/mplayer.py", line 356, in __init__
childapp.ChildApp.__init__(self, app)
File "/home/proj/freevo/freevo/src/childapp.py", line 117, in __init__
traceback.print_stack()
main.py (577): clear: True
mixer.py (165): Volume = 60
mixer.py (165): Volume = 40
1067314838.1: started tv app
main.py (320): popen2 ./runtime/runapp --prio=-20 /usr/local/bin/mplayer -vo xv,sdl,x11, -fs tv://69 -tv driver=v4l:device=/dev/video0:input=0:norm=NTSC:chanlist=us-cable:width=640:height=480:outfmt=yuy2 -nocache -slave
self.t1.isAlive()=True, self.t2.isAlive()=True
ChildApp.__init__(), pid=27915, app=./runtime/runapp --prio=-20 /usr/local/bin/mplayer -vo xv,sdl,x11, -fs tv://69 -tv driver=v4l:device=/dev/video0:input=0:norm=NTSC:chanlist=us-cable:width=640:height=480:outfmt=yuy2 -nocache -slave, poll=-1
main.py (323): handling event STOP
1067314846.5: tv app got STOP event
mixer.py (165): Volume = 0
mixer.py (165): Volume = 0
main.py (600): draw
childapp.py (213): killing my child
File "/home/proj/freevo/freevo/runtime/lib/python2.3/threading.py", line 436, in __bootstrap
self.run()
File "/home/proj/freevo/freevo.cvs/src/tv/plugins/mplayer.py", line 422, in run
self.app.kill()
File "/home/proj/freevo/freevo.cvs/src/tv/plugins/mplayer.py", line 364, in kill
childapp.ChildApp.kill(self, signal.SIGINT)
File "/home/proj/freevo/freevo/src/childapp.py", line 214, in kill
traceback.print_stack()
popen3.py (159): poll
childapp.py (236): childapp: killing pid 27915 signal 2
childapp.py (242): childapp: Before wait(27915)
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
childapp.py (323): stdout: No data, stopping (pid 27916)!
childapp.py (323): stderr: No data, stopping (pid 27917)!
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
force killing with signal 9
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
popen3.py (159): poll
childapp.py (257): childapp: After wait()
Killing mplayer
stopped tv app
main.py (323): handling event PLAY_END
tvguide.py (128): TVGUIDE EVENT is PLAY_END
main.py (600): draw
area.py (175): show, force update




-------------------------------------------------------
This SF.net email is sponsored by: The SF.net Donation Program.
Do you like what SourceForge.net is doing for the Open
Source Community?  Make a contribution, and help us add new
features and functionality. Click here: http://sourceforge.net/donate/
_______________________________________________
Freevo-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freevo-devel

Reply via email to