Author: duncan
Date: Fri Oct 6 20:11:44 2006
New Revision: 8326
Modified:
branches/rel-1-5/freevo/src/helpers/recordserver.py
branches/rel-1-5/freevo/src/plugins/idlebar/__init__.py
branches/rel-1-5/freevo/src/tv/tvguide.py
Log:
Some changes in preparation for multi-tuner support
Modified: branches/rel-1-5/freevo/src/helpers/recordserver.py
==============================================================================
--- branches/rel-1-5/freevo/src/helpers/recordserver.py (original)
+++ branches/rel-1-5/freevo/src/helpers/recordserver.py Fri Oct 6 20:11:44 2006
@@ -60,6 +60,7 @@
import util.tv_util as tv_util
import plugin
import util.popen3
+from tv.channels import FreevoChannels
from util.videothumb import snapshot
from event import *
@@ -80,9 +81,6 @@
plugin.init_special_plugin(config.plugin_record)
-# XXX: In the future we should have one lock per VideoGroup.
-tv_lock_file = config.FREEVO_CACHEDIR + '/record'
-
if config.TV_RECORD_PADDING_PRE == None:
config.TV_RECORD_PADDING_PRE = config.TV_RECORD_PADDING
if config.TV_RECORD_PADDING_POST == None:
@@ -104,6 +102,13 @@
class RecordServer(xmlrpc.XMLRPC):
+ def __init__(self):
+ self.fc = FreevoChannels()
+ # XXX: In the future we should have one lock per VideoGroup.
+ self.tv_lock_file = None
+ self.vg = None
+
+
def progsTimeCompare(self, first, second):
t1 = first.split(':')[-1]
t2 = second.split(':')[-1]
@@ -392,7 +397,6 @@
def checkToRecord(self):
- _debug_('in checkToRecord')
rec_cmd = None
rec_prog = None
cleaned = None
@@ -502,6 +506,9 @@
self.removeScheduledRecording(rec_prog)
return
+ self.vg = self.fc.getVideoGroup(rec_prog.channel_id)
+ suffix=self.vg.vdev.split('/')[-1]
+ self.tv_lock_file = config.FREEVO_CACHEDIR + '/record.'+suffix
self.record_app.Record(rec_prog)
@@ -998,14 +1005,14 @@
elif event == RECORD_START:
#print 'Handling event RECORD_START'
prog = event.arg
- open(tv_lock_file, 'w').close()
+ open(self.tv_lock_file, 'w').close()
self.create_fxd(prog)
if config.VCR_PRE_REC:
util.popen3.Popen3(config.VCR_PRE_REC)
elif event == RECORD_STOP:
#print 'Handling event RECORD_STOP'
- os.remove(tv_lock_file)
+ os.remove(self.tv_lock_file)
prog = event.arg
try:
snapshot(prog.filename)
Modified: branches/rel-1-5/freevo/src/plugins/idlebar/__init__.py
==============================================================================
--- branches/rel-1-5/freevo/src/plugins/idlebar/__init__.py (original)
+++ branches/rel-1-5/freevo/src/plugins/idlebar/__init__.py Fri Oct 6
20:11:44 2006
@@ -16,17 +16,6 @@
# idlebar.holidays
#
# -----------------------------------------------------------------------
-# $Log$
-# Revision 1.19 2004/07/10 12:33:41 dischi
-# header cleanup
-#
-# Revision 1.18 2004/06/24 08:37:20 dischi
-# add speed warning
-#
-# Revision 1.17 2004/05/31 10:43:20 dischi
-# redraw not only in main, redraw when skin is active
-#
-# -----------------------------------------------------------------------
# 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.
@@ -56,6 +45,7 @@
import mailbox
import re
import locale
+import glob
import config
import plugin
@@ -287,7 +277,7 @@
self.listings_threshold = listings_threshold
self.next_guide_check = 0
self.listings_expire = 0
- self.tvlockfile = config.FREEVO_CACHEDIR + '/record'
+ self.tvlockfile = config.FREEVO_CACHEDIR + '/record*'
icondir = os.path.join(config.ICON_DIR, 'status')
self.TVLOCKED = os.path.join(icondir, 'television_active.png')
self.TVFREE = os.path.join(icondir, 'television_inactive.png')
@@ -295,7 +285,7 @@
self.EXPIRED = os.path.join(icondir, 'television_expired.png')
def checktv(self):
- if os.path.exists(self.tvlockfile):
+ if len(glob.glob(self.tvlockfile)) > 0:
return 1
return 0
Modified: branches/rel-1-5/freevo/src/tv/tvguide.py
==============================================================================
--- branches/rel-1-5/freevo/src/tv/tvguide.py (original)
+++ branches/rel-1-5/freevo/src/tv/tvguide.py Fri Oct 6 20:11:44 2006
@@ -8,29 +8,6 @@
# Todo:
#
# -----------------------------------------------------------------------
-# $Log$
-# Revision 1.37 2004/07/11 13:53:52 dischi
-# do not change menu start/stop times for CHAN_NO_DATA
-#
-# Revision 1.36 2004/07/11 11:46:03 dischi
-# decrease record server calling
-#
-# Revision 1.35 2004/07/10 12:33:41 dischi
-# header cleanup
-#
-# Revision 1.34 2004/06/28 15:56:42 dischi
-# fix off by one error on scrolling down
-#
-# Revision 1.33 2004/06/20 14:07:58 dischi
-# remove upsoon on changes
-#
-# Revision 1.32 2004/06/20 12:40:07 dischi
-# better handling of very long programs
-#
-# Revision 1.31 2004/06/13 00:28:19 outlyer
-# Fix a crash.
-#
-# -----------------------------------------------------------------------
# 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.
@@ -70,6 +47,7 @@
from item import Item
from program_display import ProgramItem
+from tv.channels import FreevoChannels
import record_client as ri
skin = skin.get_singleton()
@@ -107,6 +85,7 @@
self.last_update = 0
self.update_schedules(force=True)
+ self.fc = FreevoChannels()
self.rebuild(start_time, stop_time, guide.chan_list[0].id, selected)
self.event_context = 'tvmenu'
@@ -211,15 +190,15 @@
self.menuw.refresh()
elif event == MENU_SELECT or event == PLAY:
- tvlockfile = config.FREEVO_CACHEDIR + '/record'
- # jlaska -- START
+ suffix =
self.fc.getVideoGroup(self.selected.channel_id).vdev.split('/')[-1]
+ tvlockfile = config.FREEVO_CACHEDIR + '/record.'+suffix
+
# Check if the selected program is >7 min in the future
# if so, bring up the record dialog
now = time.time() + (7*60)
if self.selected.start > now:
self.event_RECORD()
- # jlaska -- END
elif os.path.exists(tvlockfile):
# XXX: In the future add the options to watch what we are
# recording or cencel it and watch TV.
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog