41 lines
802 B
Bash
41 lines
802 B
Bash
#!/bin/bash
|
||
# Livewire Recorder with integrateted Folderkeeper for ffmpeg
|
||
# copyright kaibrenner 2025–2029
|
||
|
||
set -euo pipefail
|
||
export TZ=UTC
|
||
|
||
BASE="/loggerdata/logs"
|
||
|
||
# --- Folderkeeper (in background) ---
|
||
folderkeeper() {
|
||
while true; do
|
||
mkdir -p "$BASE/$(date -u +%Y/%m/%d)"
|
||
mkdir -p "$BASE/$(date -u -d '+1 day' +%Y/%m/%d)"
|
||
sleep 300
|
||
done
|
||
}
|
||
|
||
folderkeeper &
|
||
KEEPER_PID=$!
|
||
|
||
# clean stop
|
||
trap "kill $KEEPER_PID" EXIT INT TERM
|
||
|
||
# --- Recorder (Foreground for systemd) ---
|
||
exec /usr/bin/ffmpeg \
|
||
-loglevel warning \
|
||
-nostdin \
|
||
-i rtsp://localhost:8554/logger \
|
||
-vn \
|
||
-f segment \
|
||
-segment_time 3600 \
|
||
-segment_atclocktime 1 \
|
||
-segment_format wav \
|
||
-c:a pcm_s24le \
|
||
-ar 48000 \
|
||
-ac 2 \
|
||
-reset_timestamps 1 \
|
||
-strftime 1 \
|
||
"$BASE/%Y/%m/%d/%Y-%m-%d_%H-%M-%S.wav"
|