1#!/bin/bash
2(set -o igncr) 2>/dev/null && set -o igncr; # force bash to ignore \r character????? ?????? 
3if  [ "$1" = "x64" ] || [ "$#" -eq 0 ]
4    then
5    PLATFORM=_X64
6    ISAC=../x64/Release/ReleaseTest-API_2005.exe
7elif [ "$1" = "2005" ]
8	then
9    PLATFORM=_2005
10    ISAC=../win32/Release/ReleaseTest-API_2005.exe
11elif [ "$1" == "LINUX" ]
12	then
13    PLATFORM=_linux
14    ISAC=../ReleaseTest-API/isacswtest
15else
16	echo Unknown Platform
17	exit 2
18fi
19
20LOGFILE=logfault$PLATFORM.txt
21echo "START FAULT TEST" > $LOGFILE
22
23
24INFILES=$(cat InputFiles.txt)
25SUBSET=$(cat InputFilesFew.txt)
26CHANNELFILES=$(cat ChannelFiles.txt)
27CHANNELLIST=($(cat ChannelFiles.txt))
28INDIR=../data/orig
29INDIRSWB=../data/origswb
30OUTDIR=../dataqaft$PLATFORM
31mkdir -p $OUTDIR
32
33#maximum Target rate for different bandwidth
34TARGETRATE=( 32000 32000 44000 56000 )
35SAMPFREQ=( 16 32 32 32 )
36FAULTTEST=(1 2 3 4 5 6 7 9)
37
38index1=0
39
40file_wb=../data/orig/16kHz.pcm
41file_swb=../data/origswb/32kHz.pcm
42
43for idx in 0 1 2 3 
44  do
45# Fault test
46  echo
47  echo "Sampling Frequency " ${SAMPFREQ[idx]} "kHz, Rate " ${TARGETRATE[idx]} "bps."
48  echo "---------------------------------------------------"
49  if [ ${SAMPFREQ[idx]} -eq 16 ]; then
50    file=$file_wb
51  else
52    file=$file_swb
53  fi
54
55  for testnr in ${FAULTTEST[*]}
56    do
57    echo "Running Fault Test " $testnr
58    $ISAC -I -B "${TARGETRATE[idx]}" -F $testnr -FS "${SAMPFREQ[idx]}" "$file" \
59	$OUTDIR/ft"$testnr"_"${TARGETRATE[idx]}"_"${SAMPFREQ[idx]}".pcm >> LOGFILE
60    echo
61    
62  done
63  
64# Fault test number 10, error in bitstream
65  echo "Running Fault Test 10"
66  $ISAC -I -B "${TARGETRATE[idx]}" -F 10        -FS "${SAMPFREQ[idx]}" "$file" \
67    $OUTDIR/ft10_"${TARGETRATE[idx]}"_"${SAMPFREQ[idx]}".pcm >> LOGFILE
68  echo
69  echo "Running Fault Test 10 with packetloss"
70  $ISAC -I -B "${TARGETRATE[idx]}" -F 10 -PL 10 -FS "${SAMPFREQ[idx]}" "$file" \
71    $OUTDIR/ft10plc_"${TARGETRATE[idx]}"_"${SAMPFREQ[idx]}".pcm >> LOGFILE
72  echo
73done
74
75echo 
76echo
77echo DONE!
78  
79
80
81