#!/bin/bash
+die() { set +x; echo $1; exit 1; }
+
set -e
set -x
NUM=$1
+TOTAL=$2
export NUM
-trap 'kill $STREAMER_PID' EXIT
+[ -z "$NUM" ] && die 'No number specified as $1'
+
+# Use contract broker running at the second computer (glab, eth connection)
+export FCB_ADDR=147.32.86.65
+
+BUILD=`basename $PWD`
+[ "$BUILD" = "build" ] && WRAPPER="sudo -E chrt -f 50"
+
+trap '$WRAPPER kill $STREAMER_PID' EXIT
-$WRAPER ./_compiled/bin/streamer -d /dev/video$NUM -s sdp$NUM.txt \
- -m 192.168.1.10 -p $((20000+2*$NUM)) \
-> /dev/null &
+logapp --logtime=true --logfile=streamer.$TOTAL-$NUM.log \
+ $WRAPPER ./_compiled/bin/streamer -d /dev/video$NUM -s sdp$NUM.txt \
+ -m 192.168.1.10 -p $((20000+2*$NUM)) \
+> /dev/null 2>&1 &
STREAMER_PID=$!
sleep 0.5
-scp sdp$NUM.txt glab:frescor/demo/build
+scp sdp$NUM.txt glab:frescor/demo/$BUILD
-ssh -t glab "cd frescor/demo/build; ./_compiled/bin/recorder -i sdp$NUM.txt -y -vframes 500 stream$NUM.mp4" 2>&1 \
-| perl -ne '$result=$_ if m/interframe interval/; $stat=$_ if m/^frame/;
- END { open FILE, ">", "result-rec-$ENV{q{NUM}}"; print FILE "$result\n$stat"; }'
+ssh -t glab "cd frescor/demo/$BUILD; logapp --logtime=true --logfile=recorder.$TOTAL-$NUM.log sudo ./_compiled/bin/recorder -direct -i sdp$NUM.txt -y -vframes 500 stream$NUM.mp4" 2>&1 \
+| perl -ne '$result=$_ if m/interframe interval/;
+ END { open FILE, ">", "result-rec-$ENV{q{NUM}}"; print FILE "$result\n"; }'