Chris@0: #!/bin/bash Chris@0: Chris@119: . ../include.sh Chris@0: Chris@119: infile=$audiopath/3clicks8.wav Chris@0: tmpttl=$mypath/tmp_1_$$.ttl Chris@0: Chris@0: trap "rm -f $tmpttl" 0 Chris@0: Chris@119: transformdir=$mypath/transforms Chris@0: Chris@0: for rdfarg in "" "--rdf-plain" ; do Chris@0: Chris@0: note="" Chris@0: [ -n "$rdfarg" ] && note=" with $rdfarg" Chris@0: Chris@0: rm -f $tmpttl Chris@0: Chris@119: $r -t $transformdir/onsets.n3 -w rdf $infile $rdfarg --rdf-one-file $tmpttl 2>/dev/null || \ Chris@0: fail "Fails to run with onsets transform and RDF writer$note" Chris@0: Chris@0: rapper -i turtle $tmpttl >/dev/null 2>&1 || \ Chris@0: fail "Fails to produce parseable RDF/TTL for onsets transform$note" Chris@0: Chris@0: rapper -i turtle -c $tmpttl 2>&1 | egrep -q 'Parsing returned [1-9][0-9]+ triples' || Chris@0: fail "RDF output contains no triples (?) for onsets transform$note" Chris@0: Chris@0: rm -f $tmpttl Chris@0: Chris@119: $r -t $transformdir/detectionfunction.n3 -w rdf $infile $rdfarg --rdf-one-file $tmpttl 2>/dev/null || \ Chris@0: fail "Fails to run with detectionfunction transform and RDF writer$note" Chris@0: Chris@0: rapper -i turtle $tmpttl >/dev/null 2>&1 || \ Chris@0: fail "Fails to produce parseable RDF/TTL for detectionfunction transform$note" Chris@0: Chris@0: rapper -i turtle -c $tmpttl 2>&1 | egrep -q 'Parsing returned [1-9][0-9]+ triples' || Chris@0: fail "RDF output contains no triples (?) for detectionfunction transform$note" Chris@0: Chris@0: rm -f $tmpttl Chris@0: Chris@119: $r -t $transformdir/onsets.n3 -t $transformdir/detectionfunction.n3 -w rdf $infile $rdfarg --rdf-one-file $tmpttl 2>/dev/null || \ Chris@0: fail "Fails to run with detectionfunction and onsets transforms together and RDF writer$note" Chris@0: Chris@0: rapper -i turtle $tmpttl >/dev/null 2>&1 || \ Chris@0: fail "Fails to produce parseable RDF/TTL for detectionfunction and onsets transforms together$note" Chris@0: Chris@0: rapper -i turtle -c $tmpttl 2>&1 | egrep -q 'Parsing returned [1-9][0-9]+ triples' || Chris@0: fail "RDF output contains no triples (?) for detectionfunction and onsets transforms together$note" Chris@0: Chris@0: done Chris@0: Chris@188: # Check the output encoding -- should be valid UTF-8 always Chris@188: Chris@188: for code in ucs-2 iso-8859-1; do Chris@188: $r -t $transformdir/onsets.n3 -w rdf --rdf-stdout $audiopath/id3v2-$code.mp3 2>/dev/null | uconv --from-code utf-8 --to-code utf-8 --from-callback stop >/dev/null || Chris@188: fail "RDF/Turtle output from $code input is not valid utf-8 according to uconv" Chris@188: done Chris@188: Chris@0: exit 0