Chris@0
|
1 #!/bin/bash
|
Chris@0
|
2
|
Chris@0
|
3 if [ $# -lt 2 ] ; then
|
Chris@0
|
4 echo "Usage: $0 [-s] LISTFILENAME OUTPUTDIR"
|
Chris@0
|
5 exit 1
|
Chris@0
|
6 fi
|
Chris@0
|
7
|
Chris@0
|
8 retainstructure=0
|
Chris@0
|
9
|
Chris@0
|
10 while [ $# -gt 2 ] ; do
|
Chris@0
|
11 case $1 in
|
Chris@0
|
12 -d) retainstructure=1 ; shift 1 ; echo here;;
|
Chris@0
|
13 *) shift 1 ;;
|
Chris@0
|
14 esac
|
Chris@0
|
15 done
|
Chris@0
|
16
|
Chris@0
|
17 listfile="$1"
|
Chris@0
|
18 echo listfile "$listfile"
|
Chris@0
|
19 outputdir="$2"
|
Chris@0
|
20
|
Chris@0
|
21
|
Chris@0
|
22 while read infile; do
|
Chris@0
|
23 if [ "$infile" -a -f "$infile" ]; then
|
Chris@0
|
24 before="$(date +%s)"
|
Chris@0
|
25 echo "_____________________________________________________"
|
Chris@0
|
26 echo " "
|
Chris@0
|
27 echo Processing file "$infile"
|
Chris@0
|
28 echo " "
|
Chris@0
|
29 if [ $retainstructure -eq 0 ]; then
|
Chris@0
|
30 pathandfile=`basename "$infile"`
|
Chris@0
|
31 else
|
Chris@0
|
32 pathandfile="`echo "$infile" | egrep -o '[^/]*/[^/]*/[^/]*$'`"
|
Chris@0
|
33 echo pathandfile "$pathandfile"
|
Chris@0
|
34 fi
|
Chris@0
|
35 outfile="$outputdir"/"$pathandfile".txt
|
Chris@0
|
36
|
Chris@0
|
37 logfile=_logfiles/"$pathandfile".log
|
Chris@0
|
38 chromafile=_chromadata/"$pathandfile".csv
|
Chris@0
|
39
|
Chris@0
|
40 mkdir -p "`dirname "$outfile"`"
|
Chris@0
|
41
|
Chris@0
|
42 echo "[sonic annotator] ..."
|
Chris@0
|
43 helper=n
|
matthiasm@6
|
44 echo VAMP_PATH=. ./sonic-annotator -d vamp:matthiasm:nnls_chroma:simplechord -w csv --csv-stdout "$infile"
|
Chris@0
|
45 VAMP_PATH=. ./sonic-annotator -d vamp:matthiasm:nnls_chroma:simplechord -w csv --csv-stdout "$infile" | cut -d ',' -f 2- |
|
Chris@0
|
46 while read line; do
|
Chris@0
|
47 # echo "$line"
|
Chris@0
|
48 if [ $helper = y ]; then
|
Chris@0
|
49 echo "$oldstart" `echo "$line" | cut -d ',' -f 1` "$oldchord"
|
Chris@0
|
50 fi
|
Chris@0
|
51 oldstart=`echo "$line" | cut -d ',' -f 1`
|
Chris@0
|
52 oldchord=`echo "$line" | cut -d ',' -f 2 | sed 's/"//g'`
|
Chris@0
|
53 helper=y
|
Chris@0
|
54 done > "$outfile"
|
Chris@0
|
55 after="$(date +%s)"
|
Chris@0
|
56 elapsed_seconds="$(expr $after - $before)"
|
Chris@0
|
57 echo " -->" time elapsed: $elapsed_seconds seconds
|
Chris@0
|
58 echo " "
|
Chris@0
|
59 else if [ ! "$infile" ]; then echo ...; fi
|
Chris@0
|
60 fi
|
Chris@0
|
61 done < "$listfile"
|