Ignore:
Timestamp:
Dec 21, 2016, 12:37:34 PM (4 years ago)
Author:
Paul Brossier <piem@piem.org>
Branches:
feature/autosink, feature/constantq, feature/pitchshift, feature/pydocstrings, feature/timestretch, master, sampler, yinfft+
Children:
1f43c29
Parents:
1f6a9f8
Message:

python/tests/test_notes.py: test results are correct for 44100Hz_44100f_sine441.wav

File:
1 edited

Legend:

Unmodified
Added
Removed
  • python/tests/test_notes.py

    • Property mode changed from 100644 to 100755
    r1f6a9f8 r9e3fc16  
    3939        assert_equal (self.o.get_silence(), val)
    4040
     41from utils import list_all_sounds
     42list_of_sounds = list_all_sounds('sounds')
     43
     44class aubio_notes_sinewave(TestCase):
     45
     46    def analyze_file(self, filepath, samplerate=0):
     47        from aubio import source
     48        import numpy as np
     49        win_s = 512 # fft size
     50        hop_s = 256 # hop size
     51
     52        s = source(filepath, samplerate, hop_s)
     53        samplerate = s.samplerate
     54
     55        tolerance = 0.8
     56
     57        notes_o = notes("default", win_s, hop_s, samplerate)
     58        total_frames = 0
     59
     60        results = []
     61        while True:
     62            samples, read = s()
     63            new_note = notes_o(samples)
     64            if (new_note[0] != 0):
     65                note_str = ' '.join(["%.2f" % i for i in new_note])
     66                results.append( [total_frames, np.copy(new_note)] )
     67            total_frames += read
     68            if read < hop_s: break
     69        return results
     70
     71    def test_sinewave(self):
     72        for filepath in list_of_sounds:
     73            if '44100Hz_44100f_sine441.wav' in filepath:
     74                results = self.analyze_file(filepath)
     75                assert_equal (len(results), 1)
     76                assert_equal (len(results[0]), 2)
     77                assert_equal (results[0][0], 1280)
     78                assert_equal (results[0][1], [69, 123, -1])
     79
    4180if __name__ == '__main__':
    4281    main()
Note: See TracChangeset for help on using the changeset viewer.