# HG changeset patch # User Chris Cannam # Date 1412173125 -3600 # Node ID 344d5982bbf859a4237adedf76c998610d1afc7f # Parent fae326c22df5b38fff326434cb0cb639486a388c Add simple test for multiple audio file input and playlists diff -r fae326c22df5 -r 344d5982bbf8 tests/audio/playlist.m3u --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/audio/playlist.m3u Wed Oct 01 15:18:45 2014 +0100 @@ -0,0 +1,2 @@ +3clicks8.wav +6clicks8.wav diff -r fae326c22df5 -r 344d5982bbf8 tests/expected/transforms-summaries-percussiononsets-all-files.csv --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/expected/transforms-summaries-percussiononsets-all-files.csv Wed Oct 01 15:18:45 2014 +0100 @@ -0,0 +1,20 @@ +"./audio/20sec-silence.wav",0.000000000,20.062040815,mean,61.6562,"(mean value, continuous-time average)" +,0.000000000,20.062040815,median,0,"(median value, continuous-time average)" +,0.000000000,20.062040815,mode,0,"(modal value, continuous-time average)" +,0.000000000,20.062040815,mean,895.898,"(mean value, continuous-time average)" +"./audio/3clicks.mp3",0.000000000,5.201269840,mean,164.674,"(mean value, continuous-time average)" +,0.000000000,5.201269840,median,169,"(median value, continuous-time average)" +,0.000000000,5.201269840,mode,0,"(modal value, continuous-time average)" +,0.000000000,5.201269840,mean,680.411,"(mean value, continuous-time average)" +"./audio/3clicks.ogg",0.000000000,5.201269840,mean,162.694,"(mean value, continuous-time average)" +,0.000000000,5.201269840,median,169,"(median value, continuous-time average)" +,0.000000000,5.201269840,mode,174,"(modal value, continuous-time average)" +,0.000000000,5.201269840,mean,697.732,"(mean value, continuous-time average)" +"./audio/3clicks8.wav",0.000000000,5.201269840,mean,162.585,"(mean value, continuous-time average)" +,0.000000000,5.201269840,median,168,"(median value, continuous-time average)" +,0.000000000,5.201269840,mode,0,"(modal value, continuous-time average)" +,0.000000000,5.201269840,mean,677.241,"(mean value, continuous-time average)" +"./audio/6clicks8.wav",0.000000000,10.031020407,mean,169.079,"(mean value, continuous-time average)" +,0.000000000,10.031020407,median,169,"(median value, continuous-time average)" +,0.000000000,10.031020407,mode,164,"(modal value, continuous-time average)" +,0.000000000,10.031020407,mean,695.759,"(mean value, continuous-time average)" diff -r fae326c22df5 -r 344d5982bbf8 tests/expected/transforms-summaries-percussiononsets-from-rdf-summaries-only.csv --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/expected/transforms-summaries-percussiononsets-from-rdf-summaries-only.csv Wed Oct 01 15:18:45 2014 +0100 @@ -0,0 +1,4 @@ +"./audio/3clicks8.wav",0.000000000,5.201269840,mean,162.585,"(mean value, continuous-time average)" +,0.000000000,5.201269840,median,168,"(median value, continuous-time average)" +,0.000000000,5.201269840,mode,0,"(modal value, continuous-time average)" +,0.000000000,5.201269840,mean,677.241,"(mean value, continuous-time average)" diff -r fae326c22df5 -r 344d5982bbf8 tests/expected/transforms-summaries-percussiononsets-playlist.csv --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/expected/transforms-summaries-percussiononsets-playlist.csv Wed Oct 01 15:18:45 2014 +0100 @@ -0,0 +1,8 @@ +"3clicks8.wav",0.000000000,5.201269840,mean,162.585,"(mean value, continuous-time average)" +,0.000000000,5.201269840,median,168,"(median value, continuous-time average)" +,0.000000000,5.201269840,mode,0,"(modal value, continuous-time average)" +,0.000000000,5.201269840,mean,677.241,"(mean value, continuous-time average)" +"6clicks8.wav",0.000000000,10.031020407,mean,169.079,"(mean value, continuous-time average)" +,0.000000000,10.031020407,median,169,"(median value, continuous-time average)" +,0.000000000,10.031020407,mode,164,"(modal value, continuous-time average)" +,0.000000000,10.031020407,mean,695.759,"(mean value, continuous-time average)" diff -r fae326c22df5 -r 344d5982bbf8 tests/test-multiple-audio.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-multiple-audio.sh Wed Oct 01 15:18:45 2014 +0100 @@ -0,0 +1,34 @@ +#!/bin/bash + +mypath=`dirname $0` +r=$mypath/../sonic-annotator + +tmpfile=$mypath/tmp_1_$$ + +trap "rm -f $tmpfile" 0 + +. test-include.sh + +transform=$mypath/transforms/transforms-summaries-percussiononsets-detectionfunction.n3 + +# Note, the output here depends on all the audio files present -- we +# would have to regenerate it if we added more test audio files +$r -t $transform -w csv --csv-stdout $mypath -r --summary-only > $tmpfile 2>/dev/null || \ + fail "Fails to run transform $transform with recursive dir option" + +expected=$mypath/expected/transforms-summaries-percussiononsets-all-files +csvcompare $tmpfile $expected.csv || \ + fail "Output mismatch for transform $transform with summaries and recursive dir option" + +# Here we remove any leading path from the audio file in the output, +# because the playlist reader will have resolved files to absolute +# paths and those will differ between systems +$r -t $transform -w csv --csv-stdout $mypath/audio/playlist.m3u --summary-only 2>/dev/null | sed 's,^"\.*/[^"]*/,",' > $tmpfile || \ + fail "Fails to run transform $transform with playlist input" + +expected=$mypath/expected/transforms-summaries-percussiononsets-playlist +csvcompare $tmpfile $expected.csv || \ + fail "Output mismatch for transform $transform with summaries and playlist input" + + + diff -r fae326c22df5 -r 344d5982bbf8 tests/test.sh --- a/tests/test.sh Wed Oct 01 14:55:17 2014 +0100 +++ b/tests/test.sh Wed Oct 01 15:18:45 2014 +0100 @@ -15,6 +15,7 @@ rdf-destinations \ csv-destinations \ summaries \ + multiple-audio \ ; do echo -n "$x: "