]> git.parisson.com Git - timeside.git/commitdiff
fix analyzers, add testanalyzing, passing all 72 tests ;) gst-yomguy
authoryomguy <yomguy@parisson.com>
Wed, 26 Sep 2012 23:59:28 +0000 (01:59 +0200)
committeryomguy <yomguy@parisson.com>
Wed, 26 Sep 2012 23:59:28 +0000 (01:59 +0200)
tests/alltests.py
tests/testgraphers.py [deleted file]
tests/testgraphing.py [new file with mode: 0644]
timeside/analyzer/dc.py
timeside/analyzer/duration.py
timeside/analyzer/max_level.py
timeside/analyzer/mean_level.py
timeside/grapher/core.py
timeside/grapher/waveform_simple.py

index 8c76b9bbd5b1ca8dce6b3d297291c35102b3b614..0138755ff8778442e154653671f846996116fd52 100644 (file)
@@ -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/testgraphers.py
deleted file mode 100644 (file)
index 5b7d84f..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-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']
-
-class TestGraphers(TestCase):
-    "Test all graphers with various input media formats"
-
-    def setUp(self):
-        pass
-
-    # WAVEFORMS
-    def testWav2Waveform(self):
-        "Test WAV to Waveform"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.wav")
-        self.image = "/tmp/test_waveform_sweep_wav.png"
-        self.grapher = Waveform(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testFlac2Waveform(self):
-        "Test FLAC to Waveform"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.flac")
-        self.image = "/tmp/test_waveform_sweep_flac.png"
-        self.grapher = Waveform(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testMp32Waveform(self):
-        "Test MP3 to Waveform"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.mp3")
-        self.image = "/tmp/test_waveform_sweep_mp3.png"
-        self.grapher = Waveform(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testOgg2Waveform(self):
-        "Test OGG to Waveform"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.ogg")
-        self.image = "/tmp/test_waveform_sweep_ogg.png"
-        self.grapher = Waveform(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    # WAVEFORMS CONTOUR BLACK
-    def testWav2WaveformContourBlack(self):
-        "Test WAV to WaveformContourBlack"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.wav")
-        self.image = "/tmp/test_waveform_contour_bk_sweep_wav.png"
-        self.grapher = WaveformContourBlack(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testFlac2WaveformContourBlack(self):
-        "Test FLAC to WaveformContourBlack"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.flac")
-        self.image = "/tmp/test_waveform_contour_bk_sweep_flac.png"
-        self.grapher = WaveformContourBlack(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testMp32WaveformContourBlack(self):
-        "Test MP3 to WaveformContourBlack"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.mp3")
-        self.image = "/tmp/test_waveform_contour_bk_sweep_mp3.png"
-        self.grapher = WaveformContourBlack(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testOgg2WaveformContourBlack(self):
-        "Test OGG to WaveformContourBlack"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.ogg")
-        self.image = "/tmp/test_waveform_contour_bk_sweep_ogg.png"
-        self.grapher = WaveformContourBlack(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    # WAVEFORMS CONTOUR WHITE
-    def testWav2WaveformContourWhite(self):
-        "Test WAV to WaveformContourWhite"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.wav")
-        self.image = "/tmp/test_waveform_contour_wh_sweep_wav.png"
-        self.grapher = WaveformContourWhite(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testFlac2WaveformContourWhite(self):
-        "Test FLAC to WaveformContourWhite"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.flac")
-        self.image = "/tmp/test_waveform_contour_wh_sweep_flac.png"
-        self.grapher = WaveformContourWhite(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testMp32WaveformContourWhite(self):
-        "Test MP3 to WaveformContourWhite"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.mp3")
-        self.image = "/tmp/test_waveform_contour_wh_sweep_mp3.png"
-        self.grapher = WaveformContourWhite(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testOggWaveformContourWhite(self):
-        "Test OGG to WaveformContourWhite"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.ogg")
-        self.image = "/tmp/test_waveform_contour_wh_sweep_ogg.png"
-        self.grapher = WaveformContourWhite(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-
-    # SPECTROGRAMS
-    def testWav2Spectrogram(self):
-        "Test WAV to Spectrogram"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.wav")
-        self.image = "/tmp/test_spectrogram_sweep_wav.png"
-        self.grapher = Spectrogram(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testMp32Spectrogram(self):
-        "Test MP3 to Spectrogram"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.mp3")
-        self.image = "/tmp/test_spectrogram_sweep_mp3.png"
-        self.grapher = Spectrogram(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testFlac2Spectrogram(self):
-        "Test FLAC to Spectrogram"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.flac")
-        self.image = "/tmp/test_spectrogram_sweep_flac.png"
-        self.grapher = Spectrogram(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def testOgg2Spectrogram(self):
-        "Test OGG to Spectrogram"
-        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.ogg")
-        self.image = "/tmp/test_spectrogram_sweep_ogg.png"
-        self.grapher = Spectrogram(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
-
-    def tearDown(self):
-        decoder = FileDecoder(self.source)
-        (decoder | self.grapher).run()
-        self.grapher.render(self.image)
-
-if __name__ == '__main__':
-    unittest.main(testRunner=TestRunner())
-
diff --git a/tests/testgraphing.py b/tests/testgraphing.py
new file mode 100644 (file)
index 0000000..b10e82a
--- /dev/null
@@ -0,0 +1,130 @@
+from timeside.decoder import *
+from timeside.grapher import *
+from unit_timeside import *
+
+import os.path
+
+__all__ = ['TestGraphing']
+
+class TestGraphing(TestCase):
+    "Test all graphers with various input media formats"
+
+    def setUp(self):
+        pass
+
+    # WAVEFORMS
+    def testWav2Waveform(self):
+        "Test WAV to Waveform"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.wav")
+        self.image = "/tmp/test_waveform_sweep_wav.png"
+        self.grapher = Waveform(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testFlac2Waveform(self):
+        "Test FLAC to Waveform"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.flac")
+        self.image = "/tmp/test_waveform_sweep_flac.png"
+        self.grapher = Waveform(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testMp32Waveform(self):
+        "Test MP3 to Waveform"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.mp3")
+        self.image = "/tmp/test_waveform_sweep_mp3.png"
+        self.grapher = Waveform(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testOgg2Waveform(self):
+        "Test OGG to Waveform"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.ogg")
+        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"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.wav")
+        self.image = "/tmp/test_waveform_contour_bk_sweep_wav.png"
+        self.grapher = WaveformContourBlack(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testFlac2WaveformContourBlack(self):
+        "Test FLAC to WaveformContourBlack"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.flac")
+        self.image = "/tmp/test_waveform_contour_bk_sweep_flac.png"
+        self.grapher = WaveformContourBlack(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testMp32WaveformContourBlack(self):
+        "Test MP3 to WaveformContourBlack"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.mp3")
+        self.image = "/tmp/test_waveform_contour_bk_sweep_mp3.png"
+        self.grapher = WaveformContourBlack(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testOgg2WaveformContourBlack(self):
+        "Test OGG to WaveformContourBlack"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.ogg")
+        self.image = "/tmp/test_waveform_contour_bk_sweep_ogg.png"
+        self.grapher = WaveformContourBlack(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    # WAVEFORMS CONTOUR WHITE
+    def testWav2WaveformContourWhite(self):
+        "Test WAV to WaveformContourWhite"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.wav")
+        self.image = "/tmp/test_waveform_contour_wh_sweep_wav.png"
+        self.grapher = WaveformContourWhite(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testFlac2WaveformContourWhite(self):
+        "Test FLAC to WaveformContourWhite"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.flac")
+        self.image = "/tmp/test_waveform_contour_wh_sweep_flac.png"
+        self.grapher = WaveformContourWhite(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testMp32WaveformContourWhite(self):
+        "Test MP3 to WaveformContourWhite"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.mp3")
+        self.image = "/tmp/test_waveform_contour_wh_sweep_mp3.png"
+        self.grapher = WaveformContourWhite(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testOggWaveformContourWhite(self):
+        "Test OGG to WaveformContourWhite"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.ogg")
+        self.image = "/tmp/test_waveform_contour_wh_sweep_ogg.png"
+        self.grapher = WaveformContourWhite(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+
+    # SPECTROGRAMS
+    def testWav2Spectrogram(self):
+        "Test WAV to Spectrogram"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.wav")
+        self.image = "/tmp/test_spectrogram_sweep_wav.png"
+        self.grapher = Spectrogram(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testMp32Spectrogram(self):
+        "Test MP3 to Spectrogram"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.mp3")
+        self.image = "/tmp/test_spectrogram_sweep_mp3.png"
+        self.grapher = Spectrogram(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testFlac2Spectrogram(self):
+        "Test FLAC to Spectrogram"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.flac")
+        self.image = "/tmp/test_spectrogram_sweep_flac.png"
+        self.grapher = Spectrogram(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def testOgg2Spectrogram(self):
+        "Test OGG to Spectrogram"
+        self.source = os.path.join (os.path.dirname(__file__),  "samples/sweep.ogg")
+        self.image = "/tmp/test_spectrogram_sweep_ogg.png"
+        self.grapher = Spectrogram(width=1024, height=256, bg_color=(0,0,0), color_scheme='default')
+
+    def tearDown(self):
+        decoder = FileDecoder(self.source)
+        (decoder | self.grapher).run()
+        self.grapher.render(self.image)
+
+if __name__ == '__main__':
+    unittest.main(testRunner=TestRunner())
+
index 50d957581c220b150fcb84f24aab425e5dac3e8b..b10d3f914346b1b1961d15afc799d29fdc40e739 100644 (file)
@@ -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
index 47aa59e3d67ad6535bfdec287c3885272675e857..89d2cf69dbae9b58f139f60d746691bdb1cfcc9e 100644 (file)
@@ -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)
-    
+
index b49ffb12090cb1daf8ee8b4548420916c125aff5..a41f6310ada5c47403b86bcb9dc568efc59c936e 100644 (file)
@@ -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
index 1e3e421c5a14313f4945a05a66ad0a78b5055adc..1b67ee618b31e0f5fc90fa1d94f298de0cba4b87 100644 (file)
@@ -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
index 952091d90c40d60c21ffec6fe0bfd1d6e3d19824..5cb454b19ea1cd788608c3f6a3cd928dee374acc 100644 (file)
@@ -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()
index 9d3cef8b85fa7482f1c12a6a8a35bc0a35646c14..63c88c3694bb7338dd7b3135ed2552641b4c6821 100644 (file)
@@ -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,