From 96da87bccb577c72623cf9ac7979906e319a5cf0 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Tue, 3 Jul 2012 16:37:40 -0400 Subject: [PATCH 1/4] removed a few line characters --- python_apps/media-monitor/media_monitor.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python_apps/media-monitor/media_monitor.py b/python_apps/media-monitor/media_monitor.py index f9f19a5de..1ff54c4fc 100644 --- a/python_apps/media-monitor/media_monitor.py +++ b/python_apps/media-monitor/media_monitor.py @@ -117,9 +117,9 @@ try: notifier = AirtimeNotifier(wm, pe, read_freq=0, timeout=0, airtime_config=config, api_client=api_client, bootstrap=bootstrap, mmc=mmc) notifier.coalesce_events() - + #create 5 worker threads - wp = MediaMonitorWorkerProcess(config, mmc) + wp = MediaMonitorWorkerProcess(config, mmc) for i in range(5): threadName = "Thread #%d" % i t = Thread(target=wp.process_file_events, name=threadName, args=(multi_queue, notifier)) From 4064512c83631994dda14cad561c53903fd713bc Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Tue, 3 Jul 2012 16:39:11 -0400 Subject: [PATCH 2/4] A couple of stylistic changes --- .../airtimefilemonitor/mediamonitorcommon.py | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/python_apps/media-monitor/airtimefilemonitor/mediamonitorcommon.py b/python_apps/media-monitor/airtimefilemonitor/mediamonitorcommon.py index 92d0d4ceb..0c2f5b68a 100644 --- a/python_apps/media-monitor/airtimefilemonitor/mediamonitorcommon.py +++ b/python_apps/media-monitor/airtimefilemonitor/mediamonitorcommon.py @@ -35,20 +35,13 @@ class MediaMonitorCommon: # if file doesn't have any extension, info[-2] throws exception # Hence, checking length of info before we do anything if(len(info) >= 2): - if(info[-2].lower() in self.supported_file_formats): - return True - else: - return False + return info[-2].lower() in self.supported_file_formats else: return False def is_audio_file(self, filename): info = filename.split(".") - - if(info[-1].lower() in self.supported_file_formats): - return True - else: - return False + return info[-1].lower() in self.supported_file_formats #check if file is readable by "nobody" def is_user_readable(self, filepath, euid='nobody', egid='nogroup'): From f8660ed89d9bdb86574b3648698db37da4489e5c Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Wed, 4 Jul 2012 14:30:28 -0400 Subject: [PATCH 3/4] Fixed bug where exception was thrown and logged when metadata was missing(bitrate, samplerate) --- .../airtimefilemonitor/airtimemetadata.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/python_apps/media-monitor/airtimefilemonitor/airtimemetadata.py b/python_apps/media-monitor/airtimefilemonitor/airtimemetadata.py index 35c1830e6..e7b6ad01d 100644 --- a/python_apps/media-monitor/airtimefilemonitor/airtimemetadata.py +++ b/python_apps/media-monitor/airtimefilemonitor/airtimemetadata.py @@ -221,11 +221,14 @@ class AirtimeMetadata: md['MDATA_KEY_COPYRIGHT'] = self.truncate_to_length(md['MDATA_KEY_COPYRIGHT'], 512) #end of db truncation checks. + md['MDATA_KEY_BITRATE'] = getattr(file_info.info, "bitrate", None) + md['MDATA_KEY_SAMPLERATE'] = getattr(file_info.info, "sample_rate", None) + self.logger.info( "Bitrate: %s , Samplerate: %s", md['MDATA_KEY_BITRATE'], md['MDATA_KEY_SAMPLERATE'] ) + try: md['MDATA_KEY_DURATION'] = self.format_length(file_info.info.length) + except Exception as e: self.logger.warn("File: '%s' raises: %s", filepath, str(e)) - md['MDATA_KEY_BITRATE'] = file_info.info.bitrate - md['MDATA_KEY_SAMPLERATE'] = file_info.info.sample_rate - md['MDATA_KEY_DURATION'] = self.format_length(file_info.info.length) - md['MDATA_KEY_MIME'] = file_info.mime[0] + try: md['MDATA_KEY_MIME'] = file_info.mime[0] + except Exception as e: self.logger.warn("File: '%s' has no mime type", filepath, str(e)) if "mp3" in md['MDATA_KEY_MIME']: md['MDATA_KEY_FTYPE'] = "audioclip" From d73197b89ae8b22cace7069e86f8a66590522bbc Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Wed, 4 Jul 2012 14:31:58 -0400 Subject: [PATCH 4/4] Added traceback log to section where a general exception can be caught --- python_apps/media-monitor/airtimefilemonitor/airtimenotifier.py | 1 + 1 file changed, 1 insertion(+) diff --git a/python_apps/media-monitor/airtimefilemonitor/airtimenotifier.py b/python_apps/media-monitor/airtimefilemonitor/airtimenotifier.py index 2ce2e0c78..274dc26d0 100644 --- a/python_apps/media-monitor/airtimefilemonitor/airtimenotifier.py +++ b/python_apps/media-monitor/airtimefilemonitor/airtimenotifier.py @@ -191,6 +191,7 @@ class AirtimeNotifier(Notifier): except Exception, e: self.logger.error("failed updating filepath: %s ", event['filepath']) self.logger.error('Exception: %s', e) + self.logger.error('Traceback: %s', traceback.format_exc()) #define which directories the pyinotify WatchManager should watch. def watch_directory(self, directory):