From 0df30e18e688c1f2871b4ccda3502ea8e1f6cc7b Mon Sep 17 00:00:00 2001 From: root Date: Thu, 29 Mar 2012 18:09:23 +0200 Subject: [PATCH] =?UTF-8?q?Aufnahmedateien=20=C3=BCberlappen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dump.sh | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/Dump.sh b/Dump.sh index 7cf40ed..e594b6b 100755 --- a/Dump.sh +++ b/Dump.sh @@ -6,7 +6,9 @@ PORT=8080 USERNAME=admin PASSWORD="123456" CAMERAS="0 1 2 3 4 5 6 7 8" +# the real values _will_ differ depending on the machine running the script !!! SECONDS_PER_FILE=60 +OVERLAP_PER_FILE=2 PIDFILE_BASE=/tmp/wget_script.$RANDOM.pids if [ -z "$NAME" ]; then @@ -37,7 +39,7 @@ do_record() { ( EXACT_START_TIME=$(date +%s.%N) outfile_close_trap() { - echo trap + echo "finishing capture file for camera $i" EXACT_END_TIME=$(date +%s.%N) if [ -f $OUTFILE_START ]; then mv $OUTFILE_START dump_cam_${i}_${EXACT_START_TIME}_${EXACT_END_TIME}.mjpg @@ -59,15 +61,27 @@ while true; do echo "starting group A" do_record A & PIDS_B="$(cat ${PIDFILE_BASE}_B 2>/dev/null)" - if [ ! -z "$PIDS_B" ]; then echo "killing group B"; kill $PIDS_B 2>/dev/null; fi - sleep $SECONDS_PER_FILE + if [ ! -z "$PIDS_B" ]; then + $OVERLAP_PER_FILE + echo "killing group B" + kill $PIDS_B 2>/dev/null + sleep $(($SECONDS_PER_FILE - $OVERLAP_PER_FILE)) + else + sleep $SECONDS_PER_FILE + fi if [ ! -z "$PIDS_B" ]; then kill -9 $PIDS_B 2>/dev/null; fi echo "starting group B" do_record B & PIDS_A="$(cat ${PIDFILE_BASE}_A 2>/dev/null)" - if [ ! -z "$PIDS_A" ]; then echo "killing group A"; kill $PIDS_A 2>/dev/null; fi - sleep $SECONDS_PER_FILE + if [ ! -z "$PIDS_A" ]; then + sleep $OVERLAP_PER_FILE + echo "killing group A" + kill $PIDS_A 2>/dev/null + sleep $(($SECONDS_PER_FILE - $OVERLAP_PER_FILE)) + else + sleep $SECONDS_PER_FILE + fi done quit 1