From 6e0e39b98a16047445678788473fae17f5606d15 Mon Sep 17 00:00:00 2001 From: Paul Brossier Date: Sun, 14 Apr 2013 10:44:09 -0500 Subject: [PATCH] timeside/analyzer/aubio_temporal.py: only get bpm if more than 2 beats found, factorize --- timeside/analyzer/aubio_temporal.py | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/timeside/analyzer/aubio_temporal.py b/timeside/analyzer/aubio_temporal.py index 5893fdd..5d7edc1 100644 --- a/timeside/analyzer/aubio_temporal.py +++ b/timeside/analyzer/aubio_temporal.py @@ -75,23 +75,20 @@ class AubioTemporal(Processor): onsets.value = self.onsets onsetrate_mean = AnalyzerResult(id = "aubio_onset_rate_mean", name = "onset rate (aubio)", unit = "bpm") + onsetrate_median = AnalyzerResult(id = "aubio_onset_rate_median", name = "onset rate (median) (aubio)", unit = "bpm") if len(self.onsets) > 1: periods = [60./(b - a) for a,b in zip(self.onsets[:-1],self.onsets[1:])] onsetrate_mean.value = mean (periods) + onsetrate_median.value = median (periods) else: - onserate_mean.value = 0 - - onsetrate_median = AnalyzerResult(id = "aubio_onset_rate_median", name = "onset rate (median) (aubio)", unit = "bpm") - if len(self.onsets): - onsetrate_median.value = mean (periods) - else: + onsetrate_mean.value = 0 onsetrate_median.value = 0 beats = AnalyzerResult(id = "aubio_beat", name = "beats (aubio)", unit = "s") beats.value = self.beats bpm = AnalyzerResult(id = "aubio_bpm", name = "bpm (aubio)", unit = "bpm") - if len(self.beats) > 1: + if len(self.beats) > 2: periods = [60./(b - a) for a,b in zip(self.beats[:-1],self.beats[1:])] bpm.value = median (periods) else: -- 2.39.5