From 37891eee86c6f522016738d5736953ad32f6d812 Mon Sep 17 00:00:00 2001 From: Holger Schmidt Date: Sat, 30 Jan 2021 13:25:32 +0000 Subject: [PATCH] add record.sh --- convert.sh | 31 +++++++++++++++++++------------ locktest.sh | 34 ---------------------------------- record.sh | 7 +++++++ simulate.sh | 5 +++-- sumsel.conf | 14 ++++++++++---- sumsel_functions.incl | 36 ++++++++++++++++++++++++++++++++++++ 6 files changed, 75 insertions(+), 52 deletions(-) delete mode 100755 locktest.sh create mode 100755 record.sh create mode 100644 sumsel_functions.incl diff --git a/convert.sh b/convert.sh index 8f1dcf0..2db81b7 100755 --- a/convert.sh +++ b/convert.sh @@ -1,19 +1,26 @@ #!/bin/bash . ./sumsel.conf +. ./sumsel_functions.incl -#Alle WAV Files ausser das letzte File. -#Das letzte File wird gerade recorded und wird beim naechsten Durchlauf verarbeitet -FILES=$(ls -tr ${REC_DIR} |head -n -1) +if set_lockfile; +then + #Alle WAV Files ausser das letzte File. + #Das letzte File wird gerade recorded und wird beim naechsten Durchlauf verarbeitet + FILES=$(ls -tr ${REC_DIR} |head -n -1) -for F in ${FILES} -do - #echo ${F} - #Ermittle ctime des WAV Files - CTIME=$(date -r "${REC_DIR}/${F}" +"%Y%m%d%H%M%S") - ffmpeg -i "${REC_DIR}/${F}" -acodec mp3 "${UPL_DIR}/${CTIME}_${UP_SUFFIX}.mp3" - rm "${REC_DIR}/${F}" -done + for F in ${FILES} + do + #echo ${F} + #Ermittle ctime des WAV Files + CTIME=$(date -r "${REC_DIR}/${F}" +"%Y%m%d%H%M%S") + ffmpeg -i "${REC_DIR}/${F}" -acodec mp3 "${UPL_DIR}/${CTIME}_${UPL_SUFFIX}.mp3" + rm "${REC_DIR}/${F}" + done -rsync -avzh --remove-source-files ${UPL_DIR} ${REMOTE_DIR} + rsync -avzh --remove-source-files ${UPL_DIR} ${REMOTE_DIR} + del_lockfile +else + echo "LOCK error" +fi diff --git a/locktest.sh b/locktest.sh deleted file mode 100755 index 75800f9..0000000 --- a/locktest.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/bash - -LOCK_DIR=/var/lock -LOCK_DIR=/tmp/sumsel - -#BASENAME=$(basename "$0") -#LOCK_FILE="${LOCK_DIR}/${BASENAME}" - -function set_lockfile { - BASENAME=$(basename "$0") - LOCK_FILE="${LOCK_DIR}/${BASENAME}" - RANDOM_FILE=$(mktemp --tmpdir=${LOCK_DIR}) - echo ${RANDOM_FILE} - echo $$ > ${RANDOM_FILE} - mv -n ${RANDOM_FILE} ${LOCK_FILE} - - if [ -e ${RANDOM_FILE} ] ; then - #rm ${RANDOM_FILE} - echo "Failed to acquired lock" - OTHER_PID=$(cat ${LOCK_FILE}) - - else - echo "Acquired lock" - fi -} - -function del_lockfile { - LOCK_FILE="${LOCK_DIR}/${BASENAME}" - rm ${LOCK_FILE} -} - -set_lockfile -del_lockfile - diff --git a/record.sh b/record.sh new file mode 100755 index 0000000..d0bde51 --- /dev/null +++ b/record.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +. ./sumsel.conf +. ./sumsel_functions.incl + +arecord --format=cd --device=${REC_DEVICE} --max-file-time ${REC_FILE_TIME} ${REC_DIR}/${REC_PREFIX}.wav + diff --git a/simulate.sh b/simulate.sh index cce15ce..468efc6 100755 --- a/simulate.sh +++ b/simulate.sh @@ -1,7 +1,8 @@ #!/bin/bash . ./sumsel.conf - +. ./sumsel_functions.incl + COUNTER=0 #SIM_EXAMPLE_FILE=./res/test.wav #SIM_PREFIX=sums @@ -13,6 +14,6 @@ while : do sleep 1 COUNTER=$[$COUNTER +1] - dst_fn="${REC_DIR}/${SIM_PREFIX}_${COUNTER}.wav" + dst_fn="${REC_DIR}/${REC_PREFIX}-${COUNTER}.wav" cp ${SIM_EXAMPLE_FILE} ${dst_fn} done diff --git a/sumsel.conf b/sumsel.conf index b862336..99f20eb 100644 --- a/sumsel.conf +++ b/sumsel.conf @@ -1,9 +1,15 @@ -SIM_EXAMPLE_FILE=./res/test.wav -SIM_PREFIX=sums +LOCK_DIR=/var/lock -WAV_PREFIX=sums +SIM_EXAMPLE_FILE=./res/test.wav + +REC_DEVICE=plughw:1,0 +REC_FILE_TIME=360 +REC_PREFIX=sums REC_DIR=./recordings + +#WAV_PREFIX=sums + UPL_DIR=./upqueue -UP_SUFFIX=sumsi +UPL_SUFFIX=sumsi REMOTE_DIR=hs@192.168.42.118:/home/hs/sumsel diff --git a/sumsel_functions.incl b/sumsel_functions.incl new file mode 100644 index 0000000..62c3876 --- /dev/null +++ b/sumsel_functions.incl @@ -0,0 +1,36 @@ +LOCK_DIR=/var/lock +LOCK_DIR=/tmp/sumsel + +#BASENAME=$(basename "$0") +#LOCK_FILE="${LOCK_DIR}/${BASENAME}" + +function set_lockfile { + local BASENAME=$(basename "$0") + local LOCK_FILE="${LOCK_DIR}/${BASENAME}" + local RANDOM_FILE=$(mktemp --tmpdir=${LOCK_DIR}) + #echo ${RANDOM_FILE} + echo $$ > ${RANDOM_FILE} + mv -n ${RANDOM_FILE} ${LOCK_FILE} + + if [ -e ${RANDOM_FILE} ] ; then + #rm ${RANDOM_FILE} + #echo "Failed to acquired lock" + OTHER_PID=$(cat ${LOCK_FILE}) + false + else + #echo "Acquired lock" + true + fi +} + +function del_lockfile { + local BASENAME=$(basename "$0") + local LOCK_FILE="${LOCK_DIR}/${BASENAME}" + #echo ${LOCK_FILE} + + rm ${LOCK_FILE} +} + +mkdir -p ${REC_DIR} +mkdir -p ${UPL_DIR} +