self.artist = self.artist.replace('_', ' ')
self.song = self.artist + ' : ' + self.title
if self.type == 'stream-m':
- relay = RelayReader(self.relay_url)
+ relay = URLReader(self.relay_url)
self.channel.set_callback(relay.read_callback)
if self.record_mode:
relay.set_recorder(self.recorder)
return self.fp.read(size)
-class RelayReader:
+class URLReader:
def __init__(self, relay):
self.relay = urllib.urlopen(relay)
self.rec_mode = 0
self.recorder = recorder
def read_callback(self, size):
- chunk = self.relay.read(size)
+ try:
+ chunk = self.relay.read(size)
+ except:
+ while True:
+ try:
+ self.relay = urllib.urlopen(relay)
+ chunk = self.relay.read(size)
+ break
+ except:
+ time.sleep(1)
+ continue
+
if self.rec_mode == 1 and chunk:
self.recorder.write(chunk)
return chunk