Author: dmeyer
Date: Sun Oct 16 08:22:49 2005
New Revision: 7709
Modified:
trunk/freevo/src/helpers/recordserver.py
trunk/freevo/src/record/recorder.py
Log:
make recordserver work with freevo-tvdev
Modified: trunk/freevo/src/helpers/recordserver.py
==============================================================================
--- trunk/freevo/src/helpers/recordserver.py (original)
+++ trunk/freevo/src/helpers/recordserver.py Sun Oct 16 08:22:49 2005
@@ -69,7 +69,7 @@
# start recorder for this machine
if config.TV_RECORD_START_RECORDER:
- kaa.notifier.Process([os.environ['FREEVO_SCRIPT'], 'recorder']).start()
+ kaa.notifier.Process('freevo-tvdev').start()
try:
Modified: trunk/freevo/src/record/recorder.py
==============================================================================
--- trunk/freevo/src/record/recorder.py (original)
+++ trunk/freevo/src/record/recorder.py Sun Oct 16 08:22:49 2005
@@ -40,6 +40,10 @@
# kaa imports
from kaa.notifier import OneShotTimer, Callback
+import kaa.epg
+
+# freevo imports
+import config
# record imports
from record_types import *
@@ -52,9 +56,9 @@
IN_PROGRESS = -2
# recording daemon
-DAEMON = {'type': 'home-theatre', 'module': 'record-daemon'}
-
+DAEMON = {'type': 'home-theatre', 'module': 'tvdev'}
+config.detect('channels')
class RecorderList(object):
def __init__(self, server):
@@ -191,7 +195,8 @@
self.livetv = {}
self.entity.call('device.describe', self.describe_cb, device)
self.rating = 0
-
+ self.channel2epg = {}
+ self.epg2channel = {}
def __str__(self):
return '<Recorder for %s>' % (self.name)
@@ -210,7 +215,29 @@
self.handler.remove(self)
return
- self.possible_bouquets = result.arguments[2]
+ self.possible_bouquets = []
+
+ # FIXME: this can take a while
+ # Make this less ugly
+ for bouquet in result.arguments[2]:
+ self.possible_bouquets.append([])
+ for channel in bouquet:
+ for c in kaa.epg.channels:
+ if channel == c.access_id:
+ epgid = c.id
+ break
+ else:
+ normchannel = String(channel.replace('.', '').replace(' ',
''))
+ for c in kaa.epg.channels:
+ if normchannel == String(c.name.replace('.',
'').replace(' ', '')):
+ epgid = c.id
+ break
+ else:
+ epgid = channel
+ self.possible_bouquets[-1].append(epgid)
+ self.epg2channel[epgid] = channel
+ self.channel2epg[channel] = epgid
+
self.rating = result.arguments[1]
self.update()
@@ -303,7 +330,7 @@
if remote.id == UNKNOWN_ID:
# add the recording
rec = remote.recording
- channel = rec.channel
+ channel = self.epg2channel[rec.channel]
filename = self.get_url(rec)
rec.url = filename
log.info('%s: schedule %s' % (self.name, String(rec.name)))
@@ -375,7 +402,7 @@
log.info('start live tv')
self.entity.call('vdr.record', self.start_livetv_cb, self.device,
- channel, 0, 2147483647, url, ())
+ self.epg2channel[channel], 0, 2147483647, url, ())
id = Recorder.next_livetv_id
Recorder.next_livetv_id = id + 1
self.livetv[id] = channel, None
-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog