Changeset a0e0f56
- Timestamp:
- Sep 21, 2016, 1:32:57 AM (8 years ago)
- Branches:
- feature/cnn, feature/crepe, feature/pitchshift, feature/timestretch, fix/ffmpeg5, master, pitchshift, sampler, timestretch
- Children:
- 04fc360
- Parents:
- b3f79ca
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
python/tests/test_pitchshift.py
rb3f79ca ra0e0f56 2 2 3 3 from numpy.testing import TestCase 4 from nose2.tools import params 5 import numpy as np 4 6 import aubio 5 7 … … 8 10 def setUp(self): 9 11 try: 10 self.o = aubio.pitchshift( )12 self.o = aubio.pitchshift(hop_size = 128) 11 13 except RuntimeError as e: 12 14 self.skipTest("creating aubio.pitchshift failed (recompile with rubberband?)") … … 17 19 18 20 def test_on_zeros(self): 19 test_length = 2000021 test_length = self.o.hop_size * 100 20 22 read = 0 21 23 # test on zeros 22 vec = aubio.fvec( 512)24 vec = aubio.fvec(self.o.hop_size) 23 25 transpose_range = 24 24 26 while read < test_length: … … 26 28 out = self.o(vec) 27 29 self.assertTrue((out == 0).all()) 30 # position in the file (between 0. and 1.) 31 percent_read = read / float(test_length) 32 # variable transpose rate (in semitones) 33 transpose = 2 * transpose_range * percent_read - transpose_range 34 # set transpose rate 35 self.o.set_transpose(transpose) 36 read += len(vec) 37 38 def test_on_ones(self): 39 test_length = self.o.hop_size * 100 40 read = 0 41 # test on zeros 42 vec = aubio.fvec(self.o.hop_size) + 1 43 transpose_range = 1.24 44 while read < test_length: 45 # transpose the samples 46 out = self.o(vec) 28 47 # position in the file (between 0. and 1.) 29 48 percent_read = read / float(test_length) … … 42 61 self.o.set_transpose(-24.3) 43 62 63 64 class aubio_pitchshift_testruns(TestCase): 65 66 @params( 67 ("default", 1.2, 128, 44100), 68 ("crispness:0", 0.43, 64, 8000), 69 ("crispness:3", 0.53, 256, 8000), 70 ("crispness:3", 1.53, 512, 8000), 71 ("crispness:6", 2.3, 4096, 192000), 72 ) 73 def test_run_with_params(self, mode, pitchscale, hop_size, samplerate): 74 self.o = aubio.pitchshift(mode, pitchscale, hop_size, samplerate) 75 test_length = self.o.hop_size * 50 76 read = 0 77 # test on random 78 vec = np.random.rand(self.o.hop_size).astype(aubio.float_type) 79 transpose_range = self.o.get_transpose() 80 while read < test_length: 81 # transpose the samples 82 out = self.o(vec) 83 # position in the file (between 0. and 1.) 84 percent_read = read / float(test_length) 85 # variable transpose rate (in semitones) 86 transpose = transpose_range - 2 * transpose_range * percent_read 87 # set transpose rate 88 self.o.set_transpose(transpose) 89 read += len(vec) 90 44 91 if __name__ == '__main__': 45 92 from nose2 import main
Note: See TracChangeset
for help on using the changeset viewer.