From: Paul Brossier Date: Fri, 2 Nov 2007 11:23:34 +0000 (+0100) Subject: added test for aubiopitch, using TwoCows.wav from freesound X-Git-Tag: bzr2git~494 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=d6f515d5cbeb49bc4d0830fbdeaa64997220bd2f;p=aubio.git added test for aubiopitch, using TwoCows.wav from freesound --- diff --git a/tests/python/examples/aubiopitch.py b/tests/python/examples/aubiopitch.py new file mode 100644 index 00000000..356daa22 --- /dev/null +++ b/tests/python/examples/aubiopitch.py @@ -0,0 +1,58 @@ +from template import * + +import os.path + +class aubiopitch_test_case(program_test_case): + + import os.path + filename = os.path.join('..','..','sounds','woodblock.aiff') + progname = "PYTHONPATH=../../python:../../python/aubio/.libs " + \ + os.path.join('..','..','python','aubiopitch') + + def test_aubiopitch(self): + """ test aubiopitch with default parameters """ + self.getOutput() + # FIXME: useless check + self.assertEqual(len(self.output.split('\n')), 1) + #self.assertEqual(float(self.output.strip()), 0.) + + def test_aubiopitch_verbose(self): + """ test aubiopitch with -v parameter """ + self.command += " -v " + self.getOutput() + # FIXME: loose checking: make sure at least 8 lines are printed + assert len(self.output) >= 8 + + def test_aubiopitch_devnull(self): + """ test aubiopitch on /dev/null """ + self.filename = "/dev/null" + # exit status should not be 0 + self.getOutput(expected_status = 256) + # and there should be an error message + assert len(self.output) > 0 + # that looks like this + output_lines = self.output.split('\n') + #assert output_lines[0] == "Unable to open input file /dev/null." + #assert output_lines[1] == "Supported file format but file is malformed." + #assert output_lines[2] == "Could not open input file /dev/null." + +mode_names = ["yinfft", "yin", "fcomb", "mcomb", "schmitt"] +for name in mode_names: + exec("class aubiopitch_test_case_" + name + "(aubiopitch_test_case):\n\ + options = \" -m " + name + " \"") + +class aubiopitch_test_yinfft(program_test_case): + + filename = os.path.join('..','..','sounds','16568_acclivity_TwoCows.wav') + progname = "PYTHONPATH=../../python:../../python/aubio/.libs " + \ + os.path.join('..','..','python','aubiopitch') + options = " -m yinfft -t 0.75 " + + def test_aubiopitch(self): + """ test aubiopitch with default parameters """ + self.getOutput() + expected_output = open(os.path.join('examples','aubiopitch','yinfft'+'.'+os.path.basename(self.filename)+'.txt')).read() + for line_out, line_exp in zip(self.output.split('\n'), expected_output.split('\n')): + assert line_out == line_exp, line_exp + " vs. " + line_out + +if __name__ == '__main__': unittest.main() diff --git a/tests/python/examples/aubiopitch/yinfft.16568_acclivity_TwoCows.wav.txt b/tests/python/examples/aubiopitch/yinfft.16568_acclivity_TwoCows.wav.txt new file mode 100644 index 00000000..dcdd52b0 --- /dev/null +++ b/tests/python/examples/aubiopitch/yinfft.16568_acclivity_TwoCows.wav.txt @@ -0,0 +1,566 @@ +0.0232199546485 -1.0 +0.0464399092971 -1.0 +0.0696598639456 -1.0 +0.0928798185941 -1.0 +0.116099773243 -1.0 +0.139319727891 -1.0 +0.16253968254 -1.0 +0.185759637188 -1.0 +0.208979591837 -1.0 +0.232199546485 -1.0 +0.255419501134 -1.0 +0.278639455782 -1.0 +0.301859410431 -1.0 +0.325079365079 -1.0 +0.348299319728 -1.0 +0.371519274376 -1.0 +0.394739229025 -1.0 +0.417959183673 -1.0 +0.441179138322 -1.0 +0.464399092971 -1.0 +0.487619047619 -1.0 +0.510839002268 -1.0 +0.534058956916 -1.0 +0.557278911565 -1.0 +0.580498866213 -1.0 +0.603718820862 -1.0 +0.62693877551 -1.0 +0.650158730159 -1.0 +0.673378684807 -1.0 +0.696598639456 -1.0 +0.719818594104 -1.0 +0.743038548753 -1.0 +0.766258503401 -1.0 +0.78947845805 -1.0 +0.812698412698 -1.0 +0.835918367347 -1.0 +0.859138321995 -1.0 +0.882358276644 -1.0 +0.905578231293 -1.0 +0.928798185941 -1.0 +0.95201814059 -1.0 +0.975238095238 -1.0 +0.998458049887 -1.0 +1.02167800454 -1.0 +1.04489795918 -1.0 +1.06811791383 392.768096924 +1.09133786848 115.522140503 +1.11455782313 116.574150085 +1.13777777778 117.720863342 +1.16099773243 120.00163269 +1.18421768707 123.633300781 +1.20743764172 426.787963867 +1.23065759637 141.312179565 +1.25387755102 144.336975098 +1.27709750567 148.604934692 +1.30031746032 150.864654541 +1.32353741497 154.889007568 +1.34675736961 156.505081177 +1.36997732426 158.878829956 +1.39319727891 160.931289673 +1.41641723356 163.155059814 +1.43963718821 324.814025879 +1.46285714286 167.016983032 +1.48607709751 168.871704102 +1.50929705215 170.665634155 +1.5325170068 172.353149414 +1.55573696145 174.764205933 +1.5789569161 176.318893433 +1.60217687075 178.282669067 +1.6253968254 179.82383728 +1.64861678005 181.488952637 +1.67183673469 183.1927948 +1.69505668934 184.449371338 +1.71827664399 185.715484619 +1.74149659864 186.702224731 +1.76471655329 187.907455444 +1.78793650794 188.703475952 +1.81115646259 189.502182007 +1.83437641723 190.250213623 +1.85759637188 190.834747314 +1.88081632653 190.98348999 +1.90403628118 190.847137451 +1.92725623583 190.805847168 +1.95047619048 191.00831604 +1.97369614512 191.377182007 +1.99691609977 191.935241699 +2.02013605442 192.395782471 +2.04335600907 192.534378052 +2.06657596372 192.404174805 +2.08979591837 192.085708618 +2.11301587302 191.410400391 +2.13623582766 191.070388794 +2.15945578231 190.677963257 +2.18267573696 190.020675659 +2.20589569161 189.669265747 +2.22911564626 189.298828125 +2.25233560091 188.546142578 +2.27555555556 186.856491089 +2.2987755102 184.917297363 +2.32199546485 183.044509888 +2.3452154195 181.399368286 +2.36843537415 179.126312256 +2.3916553288 175.22946167 +2.41487528345 171.139190674 +2.4380952381 338.55368042 +2.46131519274 162.799713135 +2.48453514739 320.075500488 +2.50775510204 148.602432251 +2.53097505669 139.503982544 +2.55419501134 340.922271729 +2.57741496599 326.436950684 +2.60063492063 333.484558105 +2.62385487528 -1.0 +2.64707482993 -1.0 +2.67029478458 -1.0 +2.69351473923 -1.0 +2.71673469388 -1.0 +2.73995464853 -1.0 +2.76317460317 -1.0 +2.78639455782 -1.0 +2.80961451247 -1.0 +2.83283446712 -1.0 +2.85605442177 -1.0 +2.87927437642 -1.0 +2.90249433107 -1.0 +2.92571428571 -1.0 +2.94893424036 -1.0 +2.97215419501 -1.0 +2.99537414966 -1.0 +3.01859410431 -1.0 +3.04181405896 -1.0 +3.06503401361 -1.0 +3.08825396825 -1.0 +3.1114739229 -1.0 +3.13469387755 -1.0 +3.1579138322 -1.0 +3.18113378685 -1.0 +3.2043537415 -1.0 +3.22757369615 -1.0 +3.25079365079 -1.0 +3.27401360544 -1.0 +3.29723356009 -1.0 +3.32045351474 -1.0 +3.34367346939 -1.0 +3.36689342404 -1.0 +3.39011337868 -1.0 +3.41333333333 -1.0 +3.43655328798 -1.0 +3.45977324263 -1.0 +3.48299319728 -1.0 +3.50621315193 -1.0 +3.52943310658 -1.0 +3.55265306122 -1.0 +3.57587301587 -1.0 +3.59909297052 -1.0 +3.62231292517 -1.0 +3.64553287982 -1.0 +3.66875283447 -1.0 +3.69197278912 -1.0 +3.71519274376 -1.0 +3.73841269841 -1.0 +3.76163265306 -1.0 +3.78485260771 -1.0 +3.80807256236 -1.0 +3.83129251701 -1.0 +3.85451247166 -1.0 +3.8777324263 -1.0 +3.90095238095 -1.0 +3.9241723356 -1.0 +3.94739229025 -1.0 +3.9706122449 -1.0 +3.99383219955 -1.0 +4.0170521542 -1.0 +4.04027210884 -1.0 +4.06349206349 -1.0 +4.08671201814 -1.0 +4.10993197279 -1.0 +4.13315192744 -1.0 +4.15637188209 -1.0 +4.17959183673 -1.0 +4.20281179138 -1.0 +4.22603174603 -1.0 +4.24925170068 -1.0 +4.27247165533 -1.0 +4.29569160998 -1.0 +4.31891156463 -1.0 +4.34213151927 -1.0 +4.36535147392 -1.0 +4.38857142857 -1.0 +4.41179138322 -1.0 +4.43501133787 -1.0 +4.45823129252 -1.0 +4.48145124717 -1.0 +4.50467120181 -1.0 +4.52789115646 -1.0 +4.55111111111 -1.0 +4.57433106576 -1.0 +4.59755102041 -1.0 +4.62077097506 -1.0 +4.64399092971 -1.0 +4.66721088435 -1.0 +4.690430839 -1.0 +4.71365079365 -1.0 +4.7368707483 -1.0 +4.76009070295 -1.0 +4.7833106576 -1.0 +4.80653061224 -1.0 +4.82975056689 -1.0 +4.85297052154 -1.0 +4.87619047619 -1.0 +4.89941043084 -1.0 +4.92263038549 -1.0 +4.94585034014 -1.0 +4.96907029478 -1.0 +4.99229024943 -1.0 +5.01551020408 -1.0 +5.03873015873 -1.0 +5.06195011338 -1.0 +5.08517006803 -1.0 +5.10839002268 -1.0 +5.13160997732 -1.0 +5.15482993197 -1.0 +5.17804988662 -1.0 +5.20126984127 -1.0 +5.22448979592 -1.0 +5.24770975057 -1.0 +5.27092970522 -1.0 +5.29414965986 -1.0 +5.31736961451 -1.0 +5.34058956916 -1.0 +5.36380952381 -1.0 +5.38702947846 -1.0 +5.41024943311 -1.0 +5.43346938776 -1.0 +5.4566893424 -1.0 +5.47990929705 -1.0 +5.5031292517 -1.0 +5.52634920635 -1.0 +5.549569161 -1.0 +5.57278911565 -1.0 +5.59600907029 -1.0 +5.61922902494 -1.0 +5.64244897959 -1.0 +5.66566893424 -1.0 +5.68888888889 -1.0 +5.71210884354 -1.0 +5.73532879819 -1.0 +5.75854875283 -1.0 +5.78176870748 -1.0 +5.80498866213 -1.0 +5.82820861678 -1.0 +5.85142857143 -1.0 +5.87464852608 -1.0 +5.89786848073 -1.0 +5.92108843537 -1.0 +5.94430839002 -1.0 +5.96752834467 -1.0 +5.99074829932 -1.0 +6.01396825397 -1.0 +6.03718820862 -1.0 +6.06040816327 -1.0 +6.08362811791 -1.0 +6.10684807256 -1.0 +6.13006802721 -1.0 +6.15328798186 -1.0 +6.17650793651 -1.0 +6.19972789116 -1.0 +6.2229478458 -1.0 +6.24616780045 -1.0 +6.2693877551 -1.0 +6.29260770975 -1.0 +6.3158276644 -1.0 +6.33904761905 -1.0 +6.3622675737 -1.0 +6.38548752834 -1.0 +6.40870748299 -1.0 +6.43192743764 -1.0 +6.45514739229 -1.0 +6.47836734694 -1.0 +6.50158730159 187.887435913 +6.52480725624 143.988250732 +6.54802721088 147.904678345 +6.57124716553 151.674087524 +6.59446712018 3221.32983398 +6.61768707483 3159.02587891 +6.64090702948 160.395706177 +6.66412698413 162.535690308 +6.68734693878 164.282516479 +6.71056689342 166.054779053 +6.73378684807 167.578659058 +6.75700680272 169.234619141 +6.78022675737 171.029663086 +6.80344671202 173.257110596 +6.82666666667 174.64654541 +6.84988662132 175.149429321 +6.87310657596 175.456039429 +6.89632653061 176.283660889 +6.91954648526 177.318511963 +6.94276643991 178.066696167 +6.96598639456 178.517211914 +6.98920634921 179.053573608 +7.01242630385 179.549285889 +7.0356462585 180.029403687 +7.05886621315 180.64515686 +7.0820861678 180.8934021 +7.10530612245 180.952774048 +7.1285260771 181.48147583 +7.15174603175 182.092208862 +7.17496598639 183.082504272 +7.19818594104 183.907089233 +7.22140589569 184.607666016 +7.24462585034 185.0181427 +7.26784580499 185.282440186 +7.29106575964 185.946502686 +7.31428571429 186.74571228 +7.33750566893 187.205505371 +7.36072562358 187.595703125 +7.38394557823 187.939483643 +7.40716553288 188.01159668 +7.43038548753 187.807418823 +7.45360544218 187.751464844 +7.47682539683 187.811416626 +7.50004535147 187.951507568 +7.52326530612 188.168029785 +7.54648526077 188.630828857 +7.56970521542 188.946014404 +7.59292517007 189.095901489 +7.61614512472 189.302886963 +7.63936507937 189.673339844 +7.66258503401 189.881591797 +7.68580498866 189.865234375 +7.70902494331 189.865234375 +7.73224489796 189.595870972 +7.75546485261 188.954116821 +7.77868480726 188.192108154 +7.8019047619 187.352645874 +7.82512471655 186.524551392 +7.8483446712 184.967712402 +7.87156462585 183.589355469 +7.8947845805 182.828231812 +7.91800453515 181.968215942 +7.9412244898 180.796981812 +7.96444444444 180.0 +7.98766439909 179.184524536 +8.01088435374 178.799484253 +8.03410430839 178.29347229 +8.05732426304 178.088272095 +8.08054421769 177.894317627 +8.10376417234 177.693618774 +8.12698412698 177.905075073 +8.15020408163 178.041549683 +8.17342403628 178.045135498 +8.19664399093 177.650650024 +8.21986394558 177.32208252 +8.24308390023 176.611938477 +8.26630385488 175.525878906 +8.28952380952 172.121078491 +8.31274376417 584.997009277 +8.33596371882 575.042358398 +8.35918367347 465.681121826 +8.38240362812 447.307037354 +8.40562358277 -1.0 +8.42884353741 -1.0 +8.45206349206 -1.0 +8.47528344671 -1.0 +8.49850340136 -1.0 +8.52172335601 -1.0 +8.54494331066 -1.0 +8.56816326531 -1.0 +8.59138321995 -1.0 +8.6146031746 -1.0 +8.63782312925 -1.0 +8.6610430839 -1.0 +8.68426303855 -1.0 +8.7074829932 -1.0 +8.73070294785 -1.0 +8.75392290249 -1.0 +8.77714285714 -1.0 +8.80036281179 -1.0 +8.82358276644 -1.0 +8.84680272109 -1.0 +8.87002267574 -1.0 +8.89324263039 -1.0 +8.91646258503 -1.0 +8.93968253968 -1.0 +8.96290249433 -1.0 +8.98612244898 -1.0 +9.00934240363 -1.0 +9.03256235828 -1.0 +9.05578231293 -1.0 +9.07900226757 -1.0 +9.10222222222 -1.0 +9.12544217687 -1.0 +9.14866213152 -1.0 +9.17188208617 -1.0 +9.19510204082 -1.0 +9.21832199546 -1.0 +9.24154195011 -1.0 +9.26476190476 -1.0 +9.28798185941 -1.0 +9.31120181406 -1.0 +9.33442176871 -1.0 +9.35764172336 -1.0 +9.380861678 -1.0 +9.40408163265 -1.0 +9.4273015873 -1.0 +9.45052154195 -1.0 +9.4737414966 -1.0 +9.49696145125 -1.0 +9.5201814059 -1.0 +9.54340136054 -1.0 +9.56662131519 -1.0 +9.58984126984 -1.0 +9.61306122449 -1.0 +9.63628117914 -1.0 +9.65950113379 -1.0 +9.68272108844 -1.0 +9.70594104308 -1.0 +9.72916099773 -1.0 +9.75238095238 -1.0 +9.77560090703 -1.0 +9.79882086168 -1.0 +9.82204081633 -1.0 +9.84526077098 -1.0 +9.86848072562 -1.0 +9.89170068027 -1.0 +9.91492063492 -1.0 +9.93814058957 -1.0 +9.96136054422 -1.0 +9.98458049887 -1.0 +10.0078004535 -1.0 +10.0310204082 -1.0 +10.0542403628 -1.0 +10.0774603175 -1.0 +10.1006802721 -1.0 +10.1239002268 -1.0 +10.1471201814 -1.0 +10.1703401361 -1.0 +10.1935600907 -1.0 +10.2167800454 -1.0 +10.24 -1.0 +10.2632199546 -1.0 +10.2864399093 100.193115234 +10.3096598639 -1.0 +10.3328798186 326.038757324 +10.3560997732 104.222053528 +10.3793197279 105.370048523 +10.4025396825 106.595123291 +10.4257596372 107.893875122 +10.4489795918 108.992500305 +10.4721995465 109.93119812 +10.4954195011 110.819335938 +10.5186394558 112.031303406 +10.5418594104 113.389472961 +10.5650793651 114.239830017 +10.5882993197 116.827377319 +10.6115192744 119.250427246 +10.634739229 122.184356689 +10.6579591837 148.222839355 +10.6811791383 150.104660034 +10.704399093 153.361968994 +10.7276190476 155.115112305 +10.7508390023 158.433624268 +10.7740589569 161.372955322 +10.7972789116 163.421096802 +10.8204988662 167.165771484 +10.8437188209 170.329452515 +10.8669387755 173.311584473 +10.8901587302 175.445571899 +10.9133786848 177.304244995 +10.9365986395 179.024490356 +10.9598185941 180.073501587 +10.9830385488 180.826629639 +11.0062585034 181.559936523 +11.029478458 182.487792969 +11.0526984127 183.303192139 +11.0759183673 183.976135254 +11.099138322 184.650161743 +11.1223582766 185.613876343 +11.1455782313 186.123062134 +11.1687981859 186.852523804 +11.1920181406 187.531890869 +11.2152380952 188.232284546 +11.2384580499 189.20135498 +11.2616780045 189.485900879 +11.2848979592 190.094390869 +11.3081179138 190.636749268 +11.3313378685 191.252670288 +11.3545578231 191.647476196 +11.3777777778 192.673187256 +11.4009977324 193.018920898 +11.4242176871 193.641860962 +11.4474376417 194.307373047 +11.4706575964 194.234619141 +11.493877551 194.290252686 +11.5170975057 194.641845703 +11.5403174603 194.663314819 +11.563537415 194.719177246 +11.5867573696 194.149108887 +11.6099773243 194.166213989 +11.6331972789 194.136291504 +11.6564172336 193.786529541 +11.6796371882 192.605865479 +11.7028571429 190.785202026 +11.7260770975 188.578399658 +11.7492970522 182.544433594 +11.7725170068 173.676742554 +11.7957369615 415.019744873 +11.8189569161 417.989685059 +11.8421768707 333.699066162 +11.8653968254 415.058837891 +11.88861678 352.025543213 +11.9118367347 -1.0 +11.9350566893 -1.0 +11.958276644 -1.0 +11.9814965986 -1.0 +12.0047165533 -1.0 +12.0279365079 -1.0 +12.0511564626 -1.0 +12.0743764172 -1.0 +12.0975963719 -1.0 +12.1208163265 -1.0 +12.1440362812 -1.0 +12.1672562358 -1.0 +12.1904761905 -1.0 +12.2136961451 -1.0 +12.2369160998 -1.0 +12.2601360544 -1.0 +12.2833560091 -1.0 +12.3065759637 -1.0 +12.3297959184 -1.0 +12.353015873 -1.0 +12.3762358277 -1.0 +12.3994557823 -1.0 +12.422675737 -1.0 +12.4458956916 -1.0 +12.4691156463 -1.0 +12.4923356009 -1.0 +12.5155555556 -1.0 +12.5387755102 -1.0 +12.5619954649 -1.0 +12.5852154195 -1.0 +12.6084353741 -1.0 +12.6316553288 -1.0 +12.6548752834 -1.0 +12.6780952381 -1.0 +12.7013151927 -1.0 +12.7245351474 -1.0 +12.747755102 -1.0 +12.7709750567 -1.0 +12.7941950113 -1.0 +12.817414966 -1.0 +12.8406349206 -1.0 +12.8638548753 -1.0 +12.8870748299 -1.0 +12.9102947846 -1.0 +12.9335147392 -1.0 +12.9567346939 -1.0 +12.9799546485 -1.0 +13.0031746032 -1.0 +13.0263945578 -1.0 +13.0496145125 -1.0 +13.0728344671 -1.0 +13.0960544218 -1.0 +13.1192743764 -1.0 +13.1424943311 -1.0