Chris@0: #!/bin/bash Chris@0: Chris@0: if [ $# -lt 2 ] ; then Chris@0: echo "Usage: $0 [-s] LISTFILENAME OUTPUTDIR" Chris@0: exit 1 Chris@0: fi Chris@0: Chris@0: retainstructure=0 Chris@0: Chris@0: while [ $# -gt 2 ] ; do Chris@0: case $1 in Chris@0: -d) retainstructure=1 ; shift 1 ; echo here;; Chris@0: *) shift 1 ;; Chris@0: esac Chris@0: done Chris@0: Chris@0: listfile="$1" Chris@0: echo listfile "$listfile" Chris@0: outputdir="$2" Chris@0: Chris@0: Chris@0: while read infile; do Chris@0: if [ "$infile" -a -f "$infile" ]; then Chris@0: before="$(date +%s)" Chris@0: echo "_____________________________________________________" Chris@0: echo " " Chris@0: echo Processing file "$infile" Chris@0: echo " " Chris@0: if [ $retainstructure -eq 0 ]; then Chris@0: pathandfile=`basename "$infile"` Chris@0: else Chris@0: pathandfile="`echo "$infile" | egrep -o '[^/]*/[^/]*/[^/]*$'`" Chris@0: echo pathandfile "$pathandfile" Chris@0: fi Chris@0: outfile="$outputdir"/"$pathandfile".txt Chris@0: Chris@0: logfile=_logfiles/"$pathandfile".log Chris@0: chromafile=_chromadata/"$pathandfile".csv Chris@0: Chris@0: mkdir -p "`dirname "$outfile"`" Chris@0: Chris@0: echo "[sonic annotator] ..." Chris@0: VAMP_PATH=. ./sonic-annotator -d vamp:matthiasm:nnls_chroma:bothchroma -w csv --csv-stdout "$infile" 2> "$logfile" | cut -d ',' -f 2- > "$chromafile" Chris@0: infile="`echo "$infile" | sed "s/'/''/g"`" Chris@0: outfile="`echo "$outfile" | sed "s/'/''/g"`" Chris@0: chromafile="`echo "$chromafile" | sed "s/'/''/g"`" Chris@0: matlab -nodisplay -nojvm -r run_segmentation\(\'"$infile"\',\'"$outfile"\'\,\'"$chromafile"\'\) >> "$logfile" Chris@0: after="$(date +%s)" Chris@0: elapsed_seconds="$(expr $after - $before)" Chris@0: echo " -->" time elapsed: $elapsed_seconds seconds Chris@0: echo " " Chris@0: else if [ ! "$infile" ]; then echo ...; fi Chris@0: fi Chris@0: done < "$listfile"