aboutsummaryrefslogtreecommitdiff
path: root/.local/share/bin/ccpreview
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2025-01-23 12:42:59 +0100
committerLoek Le Blansch <loek@pipeframe.xyz>2025-01-23 12:42:59 +0100
commit6479dbb2ddd5782747d2cf8c18260de1971ae99f (patch)
tree981125b040674ba6d68f88c42e1acf41b17fe48c /.local/share/bin/ccpreview
parentc7faac3480d2c52db7e952f638f7f162fb98eeec (diff)
scripts update
Diffstat (limited to '.local/share/bin/ccpreview')
-rwxr-xr-x.local/share/bin/ccpreview44
1 files changed, 30 insertions, 14 deletions
diff --git a/.local/share/bin/ccpreview b/.local/share/bin/ccpreview
index a835ab4..914a6ad 100755
--- a/.local/share/bin/ccpreview
+++ b/.local/share/bin/ccpreview
@@ -24,33 +24,49 @@ VIDEO_URL="av://v4l2:$VIDEO_DEVICE"
RESOLUTION="${WIDTH}x${HEIGHT}"
+fork() {
+ JOBS="$JOBS $(
+ "$@" > /dev/null 2> /dev/null &
+ echo $!
+ )"
+}
+
# set capture card v4l parameters
v4l2-ctl --silent --device "$VIDEO_DEVICE" \
--set-parm "$FRAMERATE" \
--set-fmt-video "width=$WIDTH,height=$HEIGHT,pixelformat=MJPG" \
--set-ctrl "brightness=0,contrast=128,saturation=128,hue=0"
-# preview window
-mpv \
- --msg-level=input=no --no-config --input-conf=/dev/null \
- --no-osc --no-input-default-bindings --pause=no --force-seekable=no \
- \
- --no-cache --untimed --no-correct-pts \
+_mpv() {
+ fork mpv \
+ --quiet --msg-level=input=no \
+ --no-config --input-conf=/dev/null \
+ --no-osc --no-border \
+ --no-input-default-bindings --pause=no --force-seekable=no \
+ --cache=no \
+ "$@"
+}
+
+# audio preview
+_mpv \
--no-demuxer-thread \
- --video-sync=audio \
--audio-buffer=0 \
- --vd-lavc-threads=1 \
--cache-pause=no \
--interpolation=no \
- --video-latency-hacks=yes \
--stream-buffer-size=4k \
- \
- --demuxer-lavf-o-add=fflags=+nobuffer \
- --demuxer-lavf-analyzeduration=0 \
+ --profile=low-latency \
+ "$AUDIO_URL"
+
+# video preview
+_mpv \
+ --untimed --no-correct-pts --no-demuxer-thread \
+ --profile=low-latency \
--demuxer-lavf-o-add=input_format=mjpeg \
--demuxer-lavf-o-add=framerate="$FRAMERATE" \
--demuxer-lavf-o-add=resolution="$RESOLUTION" \
--demuxer-lavf-o-add=rw_timeout=30000000 \
- \
- "$VIDEO_URL" --audio-file="$AUDIO_URL"
+ "$VIDEO_URL"
+
+sleep infinity
+kill -9 -- $JOBS