lesavka/scripts/manual/video-frame-fetch.sh

26 lines
850 B
Bash
Raw Normal View History

2025-06-28 00:44:12 -05:00
#!/usr/bin/env bash
# scripts/manual/video-frame-fetch.sh
#
# Manual: fetch recent H.264 eye samples and render first frames for inspection.
# Not part of CI; requires SSH access to a live server.
set -euo pipefail
2025-06-28 15:45:35 -05:00
PI_HOST="nikto@192.168.42.253" # user@IP-of lesavka
2025-06-28 00:44:12 -05:00
REMOTE_DIR="/tmp" # where eye*-idr.h264 are written
2025-06-28 15:45:35 -05:00
FIRST_FEW=10
2025-06-28 00:44:12 -05:00
WORKDIR="$(mktemp -d)"
2025-06-28 03:34:48 -05:00
echo "⏬ pulling h264 samples from $PI_HOST ..."
scp "${PI_HOST}:${REMOTE_DIR}/eye*.h264" "$WORKDIR/"
2025-06-28 00:44:12 -05:00
echo "🎞️ converting to PNG ..."
2025-06-28 03:34:48 -05:00
for h264 in "$WORKDIR"/eye*.h264; do
2025-06-28 15:45:35 -05:00
(( FIRST_FEW == 0 )) && break
2025-06-28 00:44:12 -05:00
png="${h264%.h264}.png"
ffmpeg -loglevel error -y -f h264 -i "$h264" -frames:v 1 "$png"
echo "🖼️ $(basename "$png") ready"
xdg-open "$png" >/dev/null 2>&1 &
2025-06-28 15:45:35 -05:00
(( FIRST_FEW-- ))
2025-06-28 00:44:12 -05:00
done
2025-06-28 03:34:48 -05:00
echo "✅ done - images are opening (directory: $WORKDIR)"