low quality ptz snapshots

This commit is contained in:
legop3
2026-07-11 04:11:28 -04:00
parent f2d3567978
commit 775dd7b830
2 changed files with 18 additions and 3 deletions
+2 -1
View File
@@ -141,4 +141,5 @@ Input/control implementation:
- use a PTZ-specific client command pipeline that maps existing input intent into PTZ commands
- server must enforce that only the active PTZ operator can send movement/zoom/control commands
- client-side input interception is only for UX; server-side operator checks are the real authority
- all movement controls should send stop commands on key/button release, blur, disconnect, controller close, or turn loss
- all movement controls should send stop commands on key/button release, blur, disconnect, controller close, or turn loss
+16 -2
View File
@@ -16,10 +16,24 @@ esac
mkdir -p "$SNAP_DIR"
FILTER="fps=1"
QUALITY="6"
case "$PATH_NAME" in
ptz-camera)
# PTZ snapshots are shown to non-operators specifically to avoid sending the
# full live video stream. The PTZ publisher is full-resolution 16:9 video,
# so resize the JPEGs at the snapshot writer boundary before Node ever reads
# and fans them out over Socket.IO.
FILTER="fps=1,scale=480:-2"
QUALITY="10"
;;
esac
exec ffmpeg -hide_banner -loglevel warning -nostdin -y \
-i "srt://127.0.0.1:9000?streamid=read:${PATH_NAME}" \
-an \
-vf fps=1 \
-q:v 6 \
-vf "$FILTER" \
-q:v "$QUALITY" \
-update 1 \
"${SNAP_DIR}/${PATH_NAME}.jpg"