From f0b04d8ab6a4083773721d672b591daa81516eb7 Mon Sep 17 00:00:00 2001 From: Guillaume Pellerin Date: Thu, 14 Jul 2011 13:01:20 +0000 Subject: [PATCH] better network disconnexion management --- deefuzzer/tools/player.py | 2 +- deefuzzer/tools/station.py | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/deefuzzer/tools/player.py b/deefuzzer/tools/player.py index dec963e..69b6e15 100644 --- a/deefuzzer/tools/player.py +++ b/deefuzzer/tools/player.py @@ -43,7 +43,7 @@ class Player: def __init__(self): self.main_buffer_size = 0x100000 - self.relay_queue_size = 0x2000 + self.relay_queue_size = 0x100000 self.sub_buffer_size = 0x10000 def set_media(self, media): diff --git a/deefuzzer/tools/station.py b/deefuzzer/tools/station.py index 70d56e3..226617d 100644 --- a/deefuzzer/tools/station.py +++ b/deefuzzer/tools/station.py @@ -522,22 +522,25 @@ class Station(Thread): self.q.task_done() for self.chunk in self.stream: - self.q.get(1) if self.next_media or not self.run_mode: break - try: - if self.record_mode: + if self.record_mode: + try: + self.q.get(1) self.recorder.write(self.chunk) - except: - self.logger.write_error('Station ' + self.channel_url + ' : could not write the buffer to the file') - continue + self.q.task_done() + except: + self.logger.write_error('Station ' + self.channel_url + ' : could not write the buffer to the file') + self.q.task_done() + continue try: + self.q.get(1) self.channel.send(self.chunk) self.channel.sync() + self.q.task_done() except: self.logger.write_error('Station ' + self.channel_url + ' : could not send the buffer') self.q.task_done() - self.ping_server() try: self.q.get(1) self.channel.close() @@ -548,20 +551,17 @@ class Station(Thread): self.q.task_done() continue try: + self.ping_server() self.q.get(1) self.channel_open() self.channel.set_metadata({'song': self.song, 'charset': 'utf8',}) - self.channel.send(self.chunk) - self.channel.sync() self.logger.write_info('Station ' + self.channel_url + ' : channel restarted') + self.q.task_done() except: self.logger.write_error('Station ' + self.channel_url + ' : could not restart the channel') + self.q.task_done() continue continue - self.q.task_done() - - if not self.run_mode: - self.q.task_done() if self.record_mode: self.recorder.close() -- 2.39.5