]> git.parisson.com Git - timeside.git/commitdiff
analyzers : fix max_level and mean_level (renamed rms_level), change unit to dBFS
authoryomguy <yomguy@parisson.com>
Sun, 29 May 2011 19:32:24 +0000 (19:32 +0000)
committeryomguy <yomguy@parisson.com>
Sun, 29 May 2011 19:32:24 +0000 (19:32 +0000)
timeside/analyzer/dc.py
timeside/analyzer/max_level.py
timeside/analyzer/mean_level.py

index 5b4ef04dcff38d7e5723f267987534c4a6a33407..50d957581c220b150fcb84f24aab425e5dac3e8b 100644 (file)
@@ -56,4 +56,3 @@ class MeanDCShift(Processor):
 
     def result(self):
         return numpy.round(100*numpy.mean(self.values),3)
-
index cc1b848c79f976b379c752389b4b0f8b0f505b41..b49ffb12090cb1daf8ee8b4548420916c125aff5 100644 (file)
@@ -32,7 +32,7 @@ class MaxLevel(Processor):
     @interfacedoc
     def setup(self, channels=None, samplerate=None, nframes=None):
         super(MaxLevel, self).setup(channels, samplerate, nframes)
-        self.value = -140
+        self.value = 0
 
     @staticmethod
     @interfacedoc
@@ -47,13 +47,13 @@ class MaxLevel(Processor):
     @staticmethod
     @interfacedoc
     def unit():
-        return "dB"
+        return "dBFS"
 
     def process(self, frames, eod=False):
-        max = numpy.round(20*numpy.log(frames.max()), 2)
+        max = frames.max()
         if max > self.value:
             self.value = max
         return frames, eod
 
     def result(self):
-        return self.value
+        return numpy.round(20*numpy.log10(self.value), 3)
index 4cdd0d687826889b97e54ba3fc128dcdb2452d8d..1e3e421c5a14313f4945a05a66ad0a78b5055adc 100644 (file)
@@ -31,29 +31,29 @@ class MeanLevel(Processor):
     @interfacedoc
     def setup(self, channels=None, samplerate=None, nframes=None):
         super(MeanLevel, self).setup(channels, samplerate, nframes)
-        self.values = numpy.array([0])
+        self.values = numpy.array([])
 
     @staticmethod
     @interfacedoc
     def id():
-        return "meanlevel"
+        return "rmslevel"
 
     @staticmethod
     @interfacedoc
     def name():
-        return "Mean RMS level"
+        return "RMS level"
 
     @staticmethod
     @interfacedoc
     def unit():
-        return "dB"
+        return "dBFS"
 
     def __str__(self):
         return "%s %s" % (str(self.value), unit())
 
     def process(self, frames, eod=False):
-        self.values = numpy.append(self.values, numpy.mean(numpy.sqrt(numpy.square(frames))))
+        self.values = numpy.append(self.values, numpy.mean(numpy.square(frames)))
         return frames, eod
 
     def result(self):
-        return numpy.round(20*numpy.log10(numpy.mean(self.values)), 2)
+        return numpy.round(20*numpy.log10(numpy.sqrt(numpy.mean(self.values))), 3)