Re: SV: [Freevo-devel] Re: FXD handler bugfixes
On Tue 09.12.2003 at 07:49:37AM +0100, Peter Svensson wrote: Perhaps someone could add this to games as well ?? Please? Add what to the games? Matthieu -- (~._.~)Matthieu Weber - Université de Jyväskylä (~._.~) ( ? )email : [EMAIL PROTECTED] ( ? ) ()- -() public key id : 452AE0AD ()- -() (_)-(_) Humor ist, wenn man trotzdem lacht (Germain Muller) (_)-(_) --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
SV: SV: [Freevo-devel] Re: FXD handler bugfixes
Sorry, it's early in the morning here in Sweden. :) AFAIK it's still not possible to play game images/roms which has spaces in their names - or contain multiple '.', so the games subsystem would probably also benefit from using the list calling convention instead of the double quotes. /PS -Ursprungligt meddelande- Från: Matthieu Weber Till: '[EMAIL PROTECTED] ' Skickat: 2003-12-09 08:09 Ämne: Re: SV: [Freevo-devel] Re: FXD handler bugfixes On Tue 09.12.2003 at 07:49:37AM +0100, Peter Svensson wrote: Perhaps someone could add this to games as well ?? Please? Add what to the games? Matthieu -- (~._.~)Matthieu Weber - Université de Jyväskylä (~._.~) ( ? )email : [EMAIL PROTECTED] ( ? ) ()- -() public key id : 452AE0AD ()- -() (_)-(_) Humor ist, wenn man trotzdem lacht (Germain Muller) (_)-(_) --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
[Freevo-devel] Audio detach bug
I just finished adding xpdf to the games menu to read som dox in freevo. Not optimal, but actually works OK. I played some nice tune and thought to detach itandlisten to it while I read some pdf. However, freevo crashed; Spoiler; AttributeError: 'list' object has no attribute 'playerGUI' mplayer.py (186): MPlayer.play(): Starting thread, cmd=['--prio=-20', '/usr/bin/mplayer', '-slave', '-autosync', '100', '-nolirc', '-autoq', '100', '-screenw', '800', '-screenh', '600', '-fs', '-vo', 'null', '-ao', 'oss:/dev/dsp', '', '-demuxer', '17', '', '', '/media/music/Chill/Aqua Bassino - Pools/01 - Time to Go.mp3'] main.py (369): popen2 ['/usr/bin/mplayer', '-slave', '-autosync', '100', '-nolirc', '-autoq', '100', '-screenw', '800', '-screenh', '600', '-fs', '-vo', 'null', '-ao', 'oss:/dev/dsp', '-demuxer', '17', '/media/music/Chill/Aqua Bassino - Pools/01 - Time to Go.mp3'] self.t1.isAlive()=True, self.t2.isAlive()=True ChildApp.__init__(), pid=1767, app=/usr/bin/mplayer -slave -autosync 100 -nolirc -autoq 100 -screenw 800 -screenh 600 -fs -vo null -ao oss:/dev/dsp -demuxer 17 /media/music/Chill/Aqua Bassino - Pools/01 - Time to Go.mp3, poll=-1 Crash! Traceback (most recent call last): File /usr/local/lib/python2.3/site-packages/freevo/main.py, line 521, in ? main_func() File /usr/local/lib/python2.3/site-packages/freevo/main.py, line 394, in main_func event.arg() File /usr/local/lib/python2.3/site-packages/freevo/audio/plugins/detach.py, line 66, in detach gui = plugin.getbyname(plugin.AUDIO_PLAYER).playerGUI AttributeError: 'list' object has no attribute 'playerGUI' Stopping webserver plugin. 1 child(s) still running, terminate them shutting down /usr/bin/mplayer -slave -autosync 100 -nolirc -autoq 100 -screenw 800 -screenh 600 -fs -vo null -ao oss:/dev/dsp -demuxer 17 /media/music/Chill/Aqua Bassino - Pools/01 - Time to Go.mp3 childapp.py (278): childapp: killing pid 1767 signal 15 childapp.py (284): childapp: Before wait(1767) childapp.py (299): childapp: After wait() /PS --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
[Freevo-cvslog] freevo/WIP/Ruelle command.py,1.1,1.2
Update of /cvsroot/freevo/freevo/WIP/Ruelle In directory sc8-pr-cvs1:/tmp/cvs-serv24804 Modified Files: command.py Log Message: osd stop now almost works. still need waitpid tuple help Index: command.py === RCS file: /cvsroot/freevo/freevo/WIP/Ruelle/command.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** command.py 7 Dec 2003 16:09:21 - 1.1 --- command.py 9 Dec 2003 13:28:59 - 1.2 *** *** 15,20 # --- # $Log$ ! # Revision 1.1 2003/12/07 16:09:21 mikeruelle ! # use chidapp for running programs. allow fxd files for things like firebird instead of its own plugin. need implement stop osd. need to be able to get waitpid tuple from childapp. # # Revision 1.3 2003/11/30 14:35:43 dischi --- 15,20 # --- # $Log$ ! # Revision 1.2 2003/12/09 13:28:59 mikeruelle ! # osd stop now almost works. still need waitpid tuple help # # Revision 1.3 2003/11/30 14:35:43 dischi *** *** 88,91 --- 88,92 import config, menu, rc, plugin, util import childapp + import osd from event import * from item import Item *** *** 288,294 def flashpopup(self, arg=None, menuw=None): ! popup_string=_(Running Command...) ! pop = PopupBox(text=popup_string) ! pop.show() workapp = childapp.ChildApp(self.cmd, 'command', 1) --- 289,298 def flashpopup(self, arg=None, menuw=None): ! if self.stoposd: ! osd.stop() ! else: ! popup_string=_(Running Command...) ! pop = PopupBox(text=popup_string) ! pop.show() workapp = childapp.ChildApp(self.cmd, 'command', 1) *** *** 297,301 workapp.kill() ! pop.destroy() CommandOptions().show() --- 301,312 workapp.kill() ! if self.stoposd: ! print we tried to restart OSD ! osd.restart() ! menuw.rebuild_page() ! menuw.refresh() ! time.sleep(0.5) ! else: ! pop.destroy() CommandOptions().show() --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/WIP/Ruelle command.py,1.2,1.3
Update of /cvsroot/freevo/freevo/WIP/Ruelle In directory sc8-pr-cvs1:/tmp/cvs-serv26207 Modified Files: command.py Log Message: osd stop works. no typing in apps tho. still need waitpid tuple help Index: command.py === RCS file: /cvsroot/freevo/freevo/WIP/Ruelle/command.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** command.py 9 Dec 2003 13:28:59 - 1.2 --- command.py 9 Dec 2003 13:38:42 - 1.3 *** *** 15,20 # --- # $Log$ ! # Revision 1.2 2003/12/09 13:28:59 mikeruelle ! # osd stop now almost works. still need waitpid tuple help # # Revision 1.3 2003/11/30 14:35:43 dischi --- 15,20 # --- # $Log$ ! # Revision 1.3 2003/12/09 13:38:42 mikeruelle ! # osd stop works. no typing in apps tho. still need waitpid tuple help # # Revision 1.3 2003/11/30 14:35:43 dischi *** *** 290,293 --- 290,294 def flashpopup(self, arg=None, menuw=None): if self.stoposd: + menuw.hide() osd.stop() else: *** *** 304,309 print we tried to restart OSD osd.restart() ! menuw.rebuild_page() ! menuw.refresh() time.sleep(0.5) else: --- 305,309 print we tried to restart OSD osd.restart() ! menuw.show() time.sleep(0.5) else: *** *** 347,353 if (len(command_items) == 0): command_items += [menu.MenuItem(_('No Commands found'), ! menuw.goto_prev_page, 0)] ! command_menu = menu.Menu(_('Commands'), command_items, ! reload_func=menuw.goto_main_menu) rc.app(None) menuw.pushmenu(command_menu) --- 347,352 if (len(command_items) == 0): command_items += [menu.MenuItem(_('No Commands found'), ! menuw.goto_main_menu, 0)] ! command_menu = menu.Menu(_('Commands'), command_items) rc.app(None) menuw.pushmenu(command_menu) --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-devel] Streaming video question
Hi! I wonder the following; Are there any streaming protocols over UDP that just _push_ data, without any ACK or related stuff whatsoever, or if OOB information is used, is sent over another channel. My current Mad Idea Of The Month is to use freenet for channel announcment/subscription and then UDP/IP with randomized source addresses for sending the actual stream. You can figure it out :-)= Oh, and I meant to plug the freenet-client-administrative interface into freevo, of course. I'm pretty certain that IP source anonymizing can be done with iptables --to-source, and the freenet API's are really simple, you basically either read or write to/from a key. So what I have to do is write a deamon-plugin which reads from a video-source (locally) and sends it over anonymized UDP on demand from another freevo-freenet-watchamacallit-machine. On the client/chooser side one would list all available channels with the number of available feeds for each channel. The only way to be part of the dissemination network would of course be if one had a working feed onself. The weak part is that a server which pushes a TV-channel knows the destination IP, which more or less collapses the anonymity provided by freenet. One solution would be to try to stream *over freenet*, but really, it would be too slow. So.. is any of this feasible? Already done? :) /PS .. What I should be doing is try to fix or work around the Swedish xmltv breakage, but I'm at home sick and it feels to much like work :) --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
SV: [Freevo-devel] Streaming video question
Yes, but you could implement some kind of proxy. Freenet is all data stored under keys, so writing repeatedly to the same key and (from another machine) reading repeatedly from the same key could :-)= be construed as somekiundof horribly bad streaming. Maybe another key thrown in for OOB timing data etc.. /PS -Ursprungligt meddelande- Från: Matthieu Weber Till: '''[EMAIL PROTECTED] ' ' ' Skickat: 2003-12-09 15:25 Ämne: Re: [Freevo-devel] Streaming video question On Tue 09.12.2003 at 02:38:43PM +0100, Peter Svensson wrote: One solution would be to try to stream *over freenet*, but really, it would be too slow. AFAIK, and if the specs have not changed too much since I tried freenet 2 years ago, there is no possible streaming there. The clients disconnect once the have downloaded the file from the source. But as I said, it might have changed a lot. Matthieu -- (~._.~)Matthieu Weber - Université de Jyväskylä (~._.~) ( ? )email : [EMAIL PROTECTED] ( ? ) ()- -() public key id : 452AE0AD ()- -() (_)-(_) Humor ist, wenn man trotzdem lacht (Germain Muller) (_)-(_) --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
[Freevo-cvslog] freevo/WIP/Ruelle command.py,1.3,1.4
Update of /cvsroot/freevo/freevo/WIP/Ruelle In directory sc8-pr-cvs1:/tmp/cvs-serv25578 Modified Files: command.py Log Message: use metacity to get a wm for apps. gets keyboard to work. Index: command.py === RCS file: /cvsroot/freevo/freevo/WIP/Ruelle/command.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** command.py 9 Dec 2003 13:38:42 - 1.3 --- command.py 9 Dec 2003 16:20:29 - 1.4 *** *** 15,20 # --- # $Log$ ! # Revision 1.3 2003/12/09 13:38:42 mikeruelle ! # osd stop works. no typing in apps tho. still need waitpid tuple help # # Revision 1.3 2003/11/30 14:35:43 dischi --- 15,20 # --- # $Log$ ! # Revision 1.4 2003/12/09 16:20:29 mikeruelle ! # use metacity to get a wm for apps. gets keyboard to work. # # Revision 1.3 2003/11/30 14:35:43 dischi *** *** 239,248 self.stoposd = 0 if command and directory: - print using old style self.name = command self.cmd = os.path.join(directory, command) self.image = util.getimage(self.cmd) elif xmlfile: - print using new style #create using xmlfile try: --- 239,246 *** *** 292,295 --- 290,294 menuw.hide() osd.stop() + os.system(metacity ) else: popup_string=_(Running Command...) *** *** 298,301 --- 297,301 workapp = childapp.ChildApp(self.cmd, 'command', 1) + workapp.infile.close() while workapp.isAlive(): time.sleep(0.5) *** *** 303,307 if self.stoposd: ! print we tried to restart OSD osd.restart() menuw.show() --- 303,307 if self.stoposd: ! os.system(killall metacity) osd.restart() menuw.show() *** *** 338,346 continue if os.path.splitext(command)[1] in ('.fxd', '.xml'): - print trying xml myxmlfile=os.path.join(config.COMMANDS_DIR, command) cmd_item = CommandItem(xmlfile=myxmlfile) else: - print trying old stuff cmd_item = CommandItem(command, config.COMMANDS_DIR) command_items += [ cmd_item ] --- 338,344 --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/WIP/Ruelle Mozilla.fxd,NONE,1.1
Update of /cvsroot/freevo/freevo/WIP/Ruelle In directory sc8-pr-cvs1:/tmp/cvs-serv4697 Added Files: Mozilla.fxd Log Message: give an example fxd --- NEW FILE: Mozilla.fxd --- ?xml version=1.0 ? freevo command title=Mozilla cmd/usr/bin/MozillaFirebird/cmd stoposd1/stoposd spawnwmmetacity amp;/spawnwm killwmkillall metacity/killwm info contentIt is just a test/content /info /command /freevo --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/WIP/Ruelle command.py,1.4,1.5
Update of /cvsroot/freevo/freevo/WIP/Ruelle In directory sc8-pr-cvs1:/tmp/cvs-serv5170 Modified Files: command.py Log Message: allow for something other than metacity Index: command.py === RCS file: /cvsroot/freevo/freevo/WIP/Ruelle/command.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** command.py 9 Dec 2003 16:20:29 - 1.4 --- command.py 9 Dec 2003 17:22:09 - 1.5 *** *** 15,20 # --- # $Log$ ! # Revision 1.4 2003/12/09 16:20:29 mikeruelle ! # use metacity to get a wm for apps. gets keyboard to work. # # Revision 1.3 2003/11/30 14:35:43 dischi --- 15,20 # --- # $Log$ ! # Revision 1.5 2003/12/09 17:22:09 mikeruelle ! # allow for something other than metacity # # Revision 1.3 2003/11/30 14:35:43 dischi *** *** 238,241 --- 238,243 Item.__init__(self) self.stoposd = 0 + self.spawnwm = None + self.killwm = None if command and directory: self.name = command *** *** 264,267 --- 266,271 cmd/usr/local/bin/mozilla/cmd stoposd1/stoposd + spawnwmmetacity amp;/spawnwm + killwmkillall metacity/killwm info contentUnleash mozilla on the www/content *** *** 274,277 --- 278,283 self.image = util.getimage(self.cmd) self.stoposd = fxd.childcontent(node, 'stoposd') + self.spawnwm = fxd.childcontent(node, 'spawnwm') + self.killwm = fxd.childcontent(node, 'killwm') # parse info tag *** *** 290,294 menuw.hide() osd.stop() ! os.system(metacity ) else: popup_string=_(Running Command...) --- 296,301 menuw.hide() osd.stop() ! if self.spawnwm: ! os.system(self.spawnwm) else: popup_string=_(Running Command...) *** *** 303,307 if self.stoposd: ! os.system(killall metacity) osd.restart() menuw.show() --- 310,315 if self.stoposd: ! if self.killwm: ! os.system(self.killwm) osd.restart() menuw.show() --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/src/util fileops.py,1.6,1.7
Update of /cvsroot/freevo/freevo/src/util In directory sc8-pr-cvs1:/tmp/cvs-serv3360 Modified Files: fileops.py Log Message: more generic resolve_media_mountdir and arg checking for mount functions Index: fileops.py === RCS file: /cvsroot/freevo/freevo/src/util/fileops.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** fileops.py 22 Nov 2003 20:34:08 - 1.6 --- fileops.py 9 Dec 2003 19:42:23 - 1.7 *** *** 11,14 --- 11,17 # --- # $Log$ + # Revision 1.7 2003/12/09 19:42:23 dischi + # more generic resolve_media_mountdir and arg checking for mount functions + # # Revision 1.6 2003/11/22 20:34:08 dischi # use new vfs *** *** 320,323 --- 323,328 umount a directory + if not dir: + return global mounted_dirs if os.path.ismount(dir): *** *** 331,334 --- 336,341 mount a directory + if not dir: + return global mounted_dirs if not os.path.ismount(dir): *** *** 349,358 ! def resolve_media_mountdir(media_id, file): get the mount point of the media with media_id ! mountdir = None ! full_filename = file # Find on what media it is located for media in config.REMOVABLE_MEDIA: --- 356,373 ! def resolve_media_mountdir(*arg): get the mount point of the media with media_id ! if len(arg) == 1 and isinstance(arg[0], dict): ! media_id = arg[0]['media_id'] ! file = arg[0]['file'] ! elif len(arg) == 2: ! media_id = arg[0] ! file = arg[1] ! else: ! raise KeyError ! ! mountdir = '' # Find on what media it is located for media in config.REMOVABLE_MEDIA: *** *** 360,367 # Then set the filename mountdir = media.mountdir ! full_filename = vfs.join(media.mountdir, file) break ! return mountdir, full_filename --- 375,382 # Then set the filename mountdir = media.mountdir ! file = vfs.join(media.mountdir, file) break ! return mountdir, file --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/src/video/plugins mplayer.py,1.46,1.47
Update of /cvsroot/freevo/freevo/src/video/plugins In directory sc8-pr-cvs1:/tmp/cvs-serv3623 Modified Files: mplayer.py Log Message: subtitle file and audio file support Index: mplayer.py === RCS file: /cvsroot/freevo/freevo/src/video/plugins/mplayer.py,v retrieving revision 1.46 retrieving revision 1.47 diff -C2 -d -r1.46 -r1.47 *** mplayer.py 7 Dec 2003 19:40:30 - 1.46 --- mplayer.py 9 Dec 2003 19:43:22 - 1.47 *** *** 10,13 --- 10,16 # --- # $Log$ + # Revision 1.47 2003/12/09 19:43:22 dischi + # subtitle file and audio file support + # # Revision 1.46 2003/12/07 19:40:30 dischi # convert OVERSCAN variable names *** *** 285,288 --- 288,301 child.wait() + + if item.subtitle_file: + d, f = util.resolve_media_mountdir(item.subtitle_file) + util.mount(d) + command += ['-sub', f] + + if self.audio_file: + d, f = util.resolve_media_mountdir(self.audio_file) + util.mount(d) + command += ['-audiofile', f] self.plugins = plugin.get('mplayer_video') --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/src/video __init__.py,1.18,1.19 fxdhandler.py,1.5,1.6 videoitem.py,1.100,1.101
Update of /cvsroot/freevo/freevo/src/video In directory sc8-pr-cvs1:/tmp/cvs-serv3466 Modified Files: __init__.py fxdhandler.py videoitem.py Log Message: patch from Matthieu Weber Index: __init__.py === RCS file: /cvsroot/freevo/freevo/src/video/__init__.py,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** __init__.py 6 Dec 2003 13:44:11 - 1.18 --- __init__.py 9 Dec 2003 19:43:01 - 1.19 *** *** 10,13 --- 10,16 # --- # $Log$ + # Revision 1.19 2003/12/09 19:43:01 dischi + # patch from Matthieu Weber + # # Revision 1.18 2003/12/06 13:44:11 dischi # move more info to the Mimetype *** *** 162,168 diritem.xml_file = tvinfo[3] - - - def hash_fxd_movie_database(): --- 165,168 *** *** 218,221 --- 218,223 tv_show_informations[k] = (info.image, info.info, info.mplayer_options, info.xml_file) + for fo in info.files_options: + discset_informations[fo['file-id']] = fo['mplayer-options'] _debug_('done',1) Index: fxdhandler.py === RCS file: /cvsroot/freevo/freevo/src/video/fxdhandler.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** fxdhandler.py 7 Dec 2003 12:28:25 - 1.5 --- fxdhandler.py 9 Dec 2003 19:43:01 - 1.6 *** *** 10,13 --- 10,16 # --- # $Log$ + # Revision 1.6 2003/12/09 19:43:01 dischi + # patch from Matthieu Weber + # # Revision 1.5 2003/12/07 12:28:25 dischi # bugfix *** *** 73,80 filename = fxd.gettext(node) mode = node.name id = fxd.getattr(node, 'id') ! media_id = fxd.getattr(node, 'media_id') ! options= fxd.getattr(node, 'mplayer_options') player = fxd.childcontent(node, 'player') playlist = False --- 76,85 filename = fxd.gettext(node) + media_id = fxd.getattr(node, 'media-id') + if media_id == '': + filename = vfs.join(dirname, filename) mode = node.name id = fxd.getattr(node, 'id') ! options= fxd.getattr(node, 'mplayer-options') player = fxd.childcontent(node, 'player') playlist = False *** *** 132,150 for variant in variants: ! audio= fxd.get_children(variant, 'audio') ! subtitle = fxd.get_children(variant, 'subtitle') ! ! if audio: ! audio = { 'media_id': fxd.getattr(audio[0], 'media_id'), ! 'file': fxd.gettext(audio[0]) } ! else: ! audio = {} ! ! if subtitle: ! subtitle = { 'media_id': fxd.getattr(subtitle[0], 'media_id'), ! 'file': fxd.gettext(subtitle[0]) } ! else: ! subtitle = {} ! parts = fxd.get_children(variant, 'part') if len(parts) == 1: --- 137,141 for variant in variants: ! mplayer_options += + fxd.getattr(variant, 'mplayer-options'); parts = fxd.get_children(variant, 'part') if len(parts) == 1: *** *** 158,164 v.is_playlist = True ! v.subtitle_file = subtitle v.audio_file= audio # global video mplayer_options if mplayer_options: --- 149,172 v.is_playlist = True ! audio= fxd.get_children(parts[0], 'audio') ! if audio: ! audio = { 'media_id': fxd.getattr(audio[0], 'media-id'), ! 'file': fxd.gettext(audio[0]) } ! if audio['media_id'] == '': ! audio['file'] = vfs.join(dirname, audio['file']) ! else: ! audio = {} v.audio_file= audio + subtitle = fxd.get_children(parts[0], 'subtitle') + if subtitle: + subtitle = { 'media_id': fxd.getattr(subtitle[0], 'media-id'), + 'file': fxd.gettext(subtitle[0]) } + if subtitle['media_id'] == '': + subtitle['file'] = vfs.join(dirname, subtitle['file']) + else: + subtitle = {} + v.subtitle_file = subtitle + # global video
[Freevo-devel] Re: plugin data
Torben Janssen wrote: Hi, where is the best way to store permanent per item data? No. Some plugins like the bookmark plugin use an extra file. i will try to write a plug-in to tag item as seen/heard/viewed. so i will need to store this info per item permanently. Not so easy. You can't just use an extra file, because it will get huge. We need some way to store such data. Ideas: 1. Create a file for each directory to store that data. This is more or less duplicate work since mmpython does that. 2. You the mmpython cache. This is bad, because a) a cache shouldn't contain data that isn't stored somewhere else. Removing the cache will destroy your meta infos. Any ideas to solve this are welcome. ps: i like the new busy icon. it is great. I don't like the icon itself at all. If someone has a nice icon, please send it. Dischi -- In a world of freedom, why do some people use windows and gates? --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
[Freevo-cvslog] freevo/src/audio player.py,1.13,1.14
Update of /cvsroot/freevo/freevo/src/audio In directory sc8-pr-cvs1:/tmp/cvs-serv12227 Modified Files: player.py Log Message: keep track of current player Index: player.py === RCS file: /cvsroot/freevo/freevo/src/audio/player.py,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** player.py 6 Dec 2003 13:43:34 - 1.13 --- player.py 9 Dec 2003 20:31:58 - 1.14 *** *** 10,13 --- 10,16 # --- # $Log$ + # Revision 1.14 2003/12/09 20:31:58 dischi + # keep track of current player + # # Revision 1.13 2003/12/06 13:43:34 dischi # expand the audio parsing in fxd files *** *** 55,58 --- 58,66 skin.register('player', ('screen', 'title', 'view', 'info', 'plugin')) + _player_ = None + + def get(): + global _player_ + return _player_ class PlayerGUI(GUIObject): *** *** 72,76 --- 80,89 def play(self, player=None): + global _player_ + if _player_ and _player_.player and _player_.player.is_playing(): + _player_.stop() + _player_ = self + if self.player and self.player.is_playing(): self.stop() *** *** 110,113 --- 123,127 self.refresh() + def try_next_player(self): self.stop() *** *** 127,132 --- 141,150 _debug_('no more players found') return 0 + def stop(self): + global _player_ + _player_ = None + self.player.stop() self.running = False --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/src/audio/plugins detach.py,1.8,1.9
Update of /cvsroot/freevo/freevo/src/audio/plugins In directory sc8-pr-cvs1:/tmp/cvs-serv12361 Modified Files: detach.py Log Message: fix plugin to match the new player structure Index: detach.py === RCS file: /cvsroot/freevo/freevo/src/audio/plugins/detach.py,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** detach.py 20 Sep 2003 09:42:32 - 1.8 --- detach.py 9 Dec 2003 20:32:29 - 1.9 *** *** 10,13 --- 10,16 # --- # $Log$ + # Revision 1.9 2003/12/09 20:32:29 dischi + # fix plugin to match the new player structure + # # Revision 1.8 2003/09/20 09:42:32 dischi # cleanup *** *** 49,52 --- 52,57 import plugin import menu + import rc + import audio.player from event import * *** *** 60,68 plugin.MainMenuPlugin.__init__(self) config.EVENTS['audio']['DISPLAY'] = Event(FUNCTION_CALL, arg=self.detach) - self.player = None self.show_item = menu.MenuItem(_('Show player'), action=self.show) ! def detach(self): ! gui = plugin.getbyname(plugin.AUDIO_PLAYER).playerGUI # hide the player and show the menu --- 65,73 plugin.MainMenuPlugin.__init__(self) config.EVENTS['audio']['DISPLAY'] = Event(FUNCTION_CALL, arg=self.detach) self.show_item = menu.MenuItem(_('Show player'), action=self.show) ! ! def detach(self): ! gui = audio.player.get() # hide the player and show the menu *** *** 76,91 if gui.item.parent: gui.item.parent.menuw = None - self.player = gui.player def items(self, parent): ! if self.player and self.player.is_playing(): self.show_item.parent = parent return [ self.show_item ] ! return () def show(self, arg=None, menuw=None): ! gui = self.player.playerGUI # restore the menuw's --- 81,96 if gui.item.parent: gui.item.parent.menuw = None def items(self, parent): ! gui = audio.player.get() ! if gui and gui.player.is_playing(): self.show_item.parent = parent return [ self.show_item ] ! return [] def show(self, arg=None, menuw=None): ! gui = audio.player.get() # restore the menuw's *** *** 101,105 def eventhandler(self, event, menuw=None): ! if self.player and event == AUDIO_PLAY_END: self.player.eventhandler(event=event) return True --- 106,111 def eventhandler(self, event, menuw=None): ! gui = audio.player.get() ! if gui and gui.player.is_playing() and event == AUDIO_PLAY_END: self.player.eventhandler(event=event) return True --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/share/fxd german-news.fxd,1.1,NONE
Update of /cvsroot/freevo/freevo/share/fxd In directory sc8-pr-cvs1:/tmp/cvs-serv12686 Removed Files: german-news.fxd Log Message: remove this here, it is in examples --- german-news.fxd DELETED --- --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-cvslog] freevo/src/skins/main screen.py,1.2,1.3
Update of /cvsroot/freevo/freevo/src/skins/main In directory sc8-pr-cvs1:/tmp/cvs-serv12856 Modified Files: screen.py Log Message: this code will never used for helpers Index: screen.py === RCS file: /cvsroot/freevo/freevo/src/skins/main/screen.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** screen.py 6 Dec 2003 16:45:13 - 1.2 --- screen.py 9 Dec 2003 20:34:36 - 1.3 *** *** 7,10 --- 7,13 # --- # $Log$ + # Revision 1.3 2003/12/09 20:34:36 dischi + # this code will never used for helpers + # # Revision 1.2 2003/12/06 16:45:13 dischi # do not create a screen for helpers *** *** 44,51 def get_singleton(): - # we don't need this for helpers - if config.HELPER: - return - global singleton if not singleton: --- 47,50 --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
[Freevo-devel] Re: Audio detach bug
Peter Svensson wrote: I just finished adding xpdf to the games menu to read som dox in freevo. Not optimal, but actually works OK. I played some nice tune and thought to detach itandlisten to it while I read some pdf. However, freevo crashed; Spoiler; AttributeError: 'list' object has no attribute 'playerGUI' Thanks, fixed in cvs now. Dischi -- Never put off until tomorrow what you can do the day after. --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
[Freevo-cvslog] freevo/src/video/plugins mplayer.py,1.47,1.48
Update of /cvsroot/freevo/freevo/src/video/plugins In directory sc8-pr-cvs1:/tmp/cvs-serv13874 Modified Files: mplayer.py Log Message: fixed copy paste error Index: mplayer.py === RCS file: /cvsroot/freevo/freevo/src/video/plugins/mplayer.py,v retrieving revision 1.47 retrieving revision 1.48 diff -C2 -d -r1.47 -r1.48 *** mplayer.py 9 Dec 2003 19:43:22 - 1.47 --- mplayer.py 9 Dec 2003 20:40:13 - 1.48 *** *** 10,13 --- 10,16 # --- # $Log$ + # Revision 1.48 2003/12/09 20:40:13 dischi + # fixed copy paste error + # # Revision 1.47 2003/12/09 19:43:22 dischi # subtitle file and audio file support *** *** 294,299 command += ['-sub', f] ! if self.audio_file: ! d, f = util.resolve_media_mountdir(self.audio_file) util.mount(d) command += ['-audiofile', f] --- 297,302 command += ['-sub', f] ! if item.audio_file: ! d, f = util.resolve_media_mountdir(item.audio_file) util.mount(d) command += ['-audiofile', f] --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog
Re: [Freevo-devel] Re: plugin data
Hi, I'm curious what are ways of sharing non-permanent data. For instance I get data with plugin that listens to tcp port and would like to have that data in idlebar plugin for instance. How can I do that ? Regards, Robert. --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
[Freevo-devel] Bug with Password-protected Directory
Title: Bug with Password-protected Directory When i tried to access a directory protected by a .password file, the recent anonCVS version gave me the following in the log: password protected dir Traceback (most recent call last): File /usr/lib/python2.2/site-packages/freevo/main.py, line 409, in main_func app.eventhandler(event) File /usr/lib/python2.2/site-packages/freevo/menu.py, line 542, in eventhandler action( arg=arg, menuw=self ) File /usr/lib/python2.2/site-packages/freevo/directory.py, line 407, in cwd self.check_password_and_build(arg=None, menuw=menuw) File /usr/lib/python2.2/site-packages/freevo/directory.py, line 441, in check_password_and_build pb = PasswordInputBox(text=_('Enter Password'), handler=self.pass_cmp_cp) AttributeError: DirItem instance has no attribute 'pass_cmp_cp' It's not urgent or something like that, just FYI ;-) /jan
[Freevo-devel] Manual record displays third field of TV_CHANNELS as channel name.
I can't use xmltv for recordings cause tv_grab_sn is broken. (I know this has nothing to do with you guys.) So I choose manually record in the web interface. The list of channels contain the third field of the TV_CHANNELS variable. I think that the second field would be more convenient for most human users. TV_CHANNELS = [ ('1', 'SVT1', 'E5'), ('2', 'TV4', 'E6'), ('3', 'SVT2', 'E7'), ('4', 'ZTV', 'E8'), ('5', 'Oppna kanalen', 'E9'), ('6', 'Discovery Mix', 'E10'), ('7', 'TV3', 'E11'), ('8', 'Kanal 5', 'SE11'), ('9', 'YLE1', 'SE12'), ('10', 'MTV', 'SE16'), ('11', 'Eurosport', 'SE17'), ('12', 'Comhem','SE19'), ('13', 'TV4+', '57'), ] Is this fixed in CVS? regards alex -- Alex Polite http://plusseven.com/whoami --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-devel
[Freevo-cvslog] freevo/src/plugins shoppingcart.py,NONE,1.1
Update of /cvsroot/freevo/freevo/src/plugins In directory sc8-pr-cvs1:/tmp/cvs-serv14734 Added Files: shoppingcart.py Log Message: make it a little easier to move multiple files around --- NEW FILE: shoppingcart.py --- #if 0 /* # --- # shoppingcart.py - Example item plugin # --- # $Id: shoppingcart.py,v 1.1 2003/12/09 23:29:46 mikeruelle Exp $ # # Notes: This is a plugin to move and copy files # # Activate: # plugin.activate('shoppingcart') # # Todo: # # --- # $Log: shoppingcart.py,v $ # Revision 1.1 2003/12/09 23:29:46 mikeruelle # make it a little easier to move multiple files around # # # --- # Freevo - A Home Theater PC framework # Copyright (C) 2002 Krister Lagerstrom, et al. # Please see the file freevo/Docs/CREDITS for a complete list of authors. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of MER- # CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General # Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; if not, write to the Free Software Foundation, Inc., # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # --- */ #endif import os import plugin import config import shutil import util from gui.PopupBox import PopupBox import rc import event as em class PluginInterface(plugin.ItemPlugin): This plugin copies or moves files to directories. Go to a file hit enter pick 'add to cart' and then go to a directory. Press enter and pick what you want to do. plugin.activate('shoppingcart') def __init__(self): plugin.ItemPlugin.__init__(self) self.item = None self.pfile = os.path.join(config.FREEVO_CACHEDIR, 'cart') def moveHere(self, arg=None, menuw=None): cartfiles = util.read_pickle(self.pfile) popup = PopupBox(text=_('Moving files...')) popup.show() for cartfile in cartfiles: shutil.move(cartfile, self.item.dir) os.unlink(self.pfile) popup.destroy() rc.post_event(em.MENU_BACK_ONE_MENU) def copyHere(self, arg=None, menuw=None): cartfiles = util.read_pickle(self.pfile) popup = PopupBox(text=_('Copying files...')) popup.show() for cartfile in cartfiles: shutil.copy(cartfile, self.item.dir) os.unlink(self.pfile) popup.destroy() rc.post_event(em.MENU_BACK_ONE_MENU) def addToCart(self, arg=None, menuw=None): if (os.path.isfile(self.pfile) == 0): cartfiles = [] else: cartfiles = util.read_pickle(self.pfile) cartfiles.append(self.item.filename) util.save_pickle(cartfiles, self.pfile) rc.post_event(em.MENU_BACK_ONE_MENU) def deleteCart(self, arg=None, menuw=None): if (os.path.isfile(self.pfile) != 0): os.unlink(self.pfile) rc.post_event(em.MENU_BACK_ONE_MENU) def actions(self, item): self.item = item myactions = [] if (os.path.isfile(self.pfile) == 0): cartfiles = [] else: cartfiles = util.read_pickle(self.pfile) if item.type == 'dir' and len(cartfiles) 0: myactions.append((self.moveHere, _('Move Files Here'))) myactions.append((self.copyHere, _('Copy Files Here'))) elif hasattr(item, 'filename'): myactions.append((self.addToCart, _('Add File to Cart'))) if (os.path.isfile(self.pfile) != 0): myactions.append((self.deleteCart, _('Delete Cart'))) return myactions --- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ ___ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog