From c74db0a79c5803f560b8dbd734fee98db283ae7b Mon Sep 17 00:00:00 2001 From: yomguy Date: Thu, 27 Sep 2012 01:59:28 +0200 Subject: [PATCH] fix analyzers, add testanalyzing, passing all 72 tests ;) --- tests/alltests.py | 4 ++-- tests/{testgraphers.py => testgraphing.py} | 14 +++++++++----- timeside/analyzer/dc.py | 4 ++-- timeside/analyzer/duration.py | 12 ++++++------ timeside/analyzer/max_level.py | 4 ++-- timeside/analyzer/mean_level.py | 4 ++-- timeside/grapher/core.py | 1 - timeside/grapher/waveform_simple.py | 4 ++-- 8 files changed, 25 insertions(+), 22 deletions(-) rename tests/{testgraphers.py => testgraphing.py} (93%) diff --git a/tests/alltests.py b/tests/alltests.py index 8c76b9b..0138755 100644 --- a/tests/alltests.py +++ b/tests/alltests.py @@ -1,8 +1,8 @@ from testcomponent import * from testinputadapter import * -from testgraphers import * from testdecoding import * -from testtranscoding import * +from testgraphing import * +from testanalyzing import * from testencoding import * from unit_timeside import * diff --git a/tests/testgraphers.py b/tests/testgraphing.py similarity index 93% rename from tests/testgraphers.py rename to tests/testgraphing.py index 5b7d84f..b10e82a 100644 --- a/tests/testgraphers.py +++ b/tests/testgraphing.py @@ -1,15 +1,12 @@ -from timeside.core import * from timeside.decoder import * from timeside.grapher import * -from timeside.api import * -from timeside.component import * from unit_timeside import * import os.path -__all__ = ['TestGraphers'] +__all__ = ['TestGraphing'] -class TestGraphers(TestCase): +class TestGraphing(TestCase): "Test all graphers with various input media formats" def setUp(self): @@ -40,6 +37,13 @@ class TestGraphers(TestCase): self.image = "/tmp/test_waveform_sweep_ogg.png" self.grapher = Waveform(width=1024, height=256, bg_color=(0,0,0), color_scheme='default') + # WAVEFORM SIMPLE + def testWav2WaveformSimple(self): + "Test WAV to WaveformSimple" + self.source = os.path.join (os.path.dirname(__file__), "samples/sweep.wav") + self.image = "/tmp/test_waveform_simple_sweep_wav.png" + self.grapher = WaveformSimple(width=1024, height=256, bg_color=(0,0,0), color_scheme='default') + # WAVEFORMS CONTOUR BLACK def testWav2WaveformContourBlack(self): "Test WAV to WaveformContourBlack" diff --git a/timeside/analyzer/dc.py b/timeside/analyzer/dc.py index 50d9575..b10d3f9 100644 --- a/timeside/analyzer/dc.py +++ b/timeside/analyzer/dc.py @@ -28,8 +28,8 @@ class MeanDCShift(Processor): implements(IValueAnalyzer) @interfacedoc - def setup(self, channels=None, samplerate=None, nframes=None): - super(MeanDCShift, self).setup(channels, samplerate, nframes) + def setup(self, channels=None, samplerate=None, blocksize=None, totalframes=None): + super(MeanDCShift, self).setup(channels, samplerate, blocksize, totalframes) self.values = numpy.array([0]) @staticmethod diff --git a/timeside/analyzer/duration.py b/timeside/analyzer/duration.py index 47aa59e..89d2cf6 100644 --- a/timeside/analyzer/duration.py +++ b/timeside/analyzer/duration.py @@ -30,10 +30,10 @@ class Duration(Processor): implements(IValueAnalyzer) @interfacedoc - def setup(self, channels, samplerate, nframes): - if not nframes: + def setup(self, channels, samplerate, blocksize=None, totalframes=None): + super(Duration, self).setup(channels, samplerate, blocksize, totalframes) + if not totalframes: raise Exception("nframes argument required") - super(Duration, self).setup(channels, samplerate, nframes) @staticmethod @interfacedoc @@ -49,13 +49,13 @@ class Duration(Processor): @interfacedoc def unit(): return "seconds" - + def __str__(self): return "%s %s" % (str(self.value), unit()) def process(self, frames, eod=False): return frames, eod - + def result(self): return self.input_nframes / float(self.input_samplerate) - + diff --git a/timeside/analyzer/max_level.py b/timeside/analyzer/max_level.py index b49ffb1..a41f631 100644 --- a/timeside/analyzer/max_level.py +++ b/timeside/analyzer/max_level.py @@ -30,8 +30,8 @@ class MaxLevel(Processor): implements(IValueAnalyzer) @interfacedoc - def setup(self, channels=None, samplerate=None, nframes=None): - super(MaxLevel, self).setup(channels, samplerate, nframes) + def setup(self, channels=None, samplerate=None, blocksize=None, totalframes=None): + super(MaxLevel, self).setup(channels, samplerate, blocksize, totalframes) self.value = 0 @staticmethod diff --git a/timeside/analyzer/mean_level.py b/timeside/analyzer/mean_level.py index 1e3e421..1b67ee6 100644 --- a/timeside/analyzer/mean_level.py +++ b/timeside/analyzer/mean_level.py @@ -29,8 +29,8 @@ class MeanLevel(Processor): implements(IValueAnalyzer) @interfacedoc - def setup(self, channels=None, samplerate=None, nframes=None): - super(MeanLevel, self).setup(channels, samplerate, nframes) + def setup(self, channels=None, samplerate=None, blocksize=None, totalframes=None): + super(MeanLevel, self).setup(channels, samplerate, blocksize, totalframes) self.values = numpy.array([]) @staticmethod diff --git a/timeside/grapher/core.py b/timeside/grapher/core.py index 952091d..5cb454b 100644 --- a/timeside/grapher/core.py +++ b/timeside/grapher/core.py @@ -403,7 +403,6 @@ class WaveformImageSimple(object): self.buffer_size = int(round(self.samples_per_pixel, 0)) self.pixels_adapter = FixedSizeInputAdapter(self.buffer_size, 1, pad=False) self.pixels_adapter_nframes = self.pixels_adapter.blocksize(self.nframes) - print self.pixels_adapter_nframes self.image = Image.new("RGBA", (self.image_width, self.image_height)) self.pixel = self.image.load() diff --git a/timeside/grapher/waveform_simple.py b/timeside/grapher/waveform_simple.py index 9d3cef8..63c88c3 100644 --- a/timeside/grapher/waveform_simple.py +++ b/timeside/grapher/waveform_simple.py @@ -24,7 +24,7 @@ from timeside.api import IGrapher from timeside.grapher.core import * -class WaveformAwdio(Processor): +class WaveformSimple(Processor): implements(IGrapher) FFT_SIZE = 0x400 @@ -53,7 +53,7 @@ class WaveformAwdio(Processor): @interfacedoc def setup(self, channels=None, samplerate=None, blocksize=None, totalframes=None): - super(WaveformAwdio, self).setup(channels, samplerate, blocksize, totalframes) + super(WaveformSimple, self).setup(channels, samplerate, blocksize, totalframes) self.graph = WaveformImageSimple(self.width, self.height, self.totalframes(), self.samplerate(), self.FFT_SIZE, bg_color=self.bg_color, -- 2.39.5