From 37f2c6a2770a995c6d7a5fda3a79fe76c18845a8 Mon Sep 17 00:00:00 2001 From: Guillaume Pellerin Date: Sat, 26 Feb 2022 23:33:23 +0100 Subject: [PATCH] add a .env environment file with parameters, add more parameters --- .gitignore | 2 +- .../telecaster/.fluxbox/scripts/.env.sample | 17 +++++++ .../scripts/tc_audio_mp3_icecast-gst1.sh | 4 ++ .../tc_video_simple_webm_stream-gst1.sh | 44 +++++++++++-------- 4 files changed, 48 insertions(+), 19 deletions(-) create mode 100644 src/home/telecaster/.fluxbox/scripts/.env.sample diff --git a/.gitignore b/.gitignore index eec5c21..c2f98e6 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,4 @@ build dist *.egg - +.env diff --git a/src/home/telecaster/.fluxbox/scripts/.env.sample b/src/home/telecaster/.fluxbox/scripts/.env.sample new file mode 100644 index 0000000..a61e427 --- /dev/null +++ b/src/home/telecaster/.fluxbox/scripts/.env.sample @@ -0,0 +1,17 @@ +# v4l2 +V4L2_ID=0 +V4L2_ZOOM=140 + +# C920 +#VIDEO_WIDTH=864 +#VIDEO_HEIGHT=480 +#VIDEO_FRAMERATE=24 + +# C922 +VIDEO_WIDTH=848 +VIDEO_HEIGHT=480 +VIDEO_FRAMERATE=24 + +# Audio +AUDIO_CHANNELS=2 +AUDIO_OPUS_BITRATE=96000 diff --git a/src/home/telecaster/.fluxbox/scripts/tc_audio_mp3_icecast-gst1.sh b/src/home/telecaster/.fluxbox/scripts/tc_audio_mp3_icecast-gst1.sh index d77d549..f051590 100755 --- a/src/home/telecaster/.fluxbox/scripts/tc_audio_mp3_icecast-gst1.sh +++ b/src/home/telecaster/.fluxbox/scripts/tc_audio_mp3_icecast-gst1.sh @@ -2,6 +2,10 @@ AUDIO_CHANNELS=2 +if [ -f .env ]; then + source .env +fi + gst-launch-1.0 jackaudiosrc connect=$AUDIO_CHANNELS ! audio/x-raw, format=F32LE, channels=$AUDIO_CHANNELS \ ! queue ! audioconvert \ ! queue ! rgvolume pre-amp=12.0 \ diff --git a/src/home/telecaster/.fluxbox/scripts/tc_video_simple_webm_stream-gst1.sh b/src/home/telecaster/.fluxbox/scripts/tc_video_simple_webm_stream-gst1.sh index ad6b1f4..2784ed9 100755 --- a/src/home/telecaster/.fluxbox/scripts/tc_video_simple_webm_stream-gst1.sh +++ b/src/home/telecaster/.fluxbox/scripts/tc_video_simple_webm_stream-gst1.sh @@ -1,32 +1,40 @@ -#!/bin/sh +#:/usr/bin/env bash -# Start TeleCaster video channel +set -e -VIDEO_ID=0 -AUDIO_CHANNELS=2 +# Default TeleCaster video parameters + +# v4l2 +V4L2_ID=0 +V4L2_ZOOM=140 # C920 -#WIDTH=864 -#HEIGHT=480 +#VIDEO_WIDTH=864 +#VIDEO_HEIGHT=480 +#VIDEO_FRAMERATE=24 # C922 -WIDTH=848 -HEIGHT=480 +VIDEO_WIDTH=848 +VIDEO_HEIGHT=480 +VIDEO_FRAMERATE=24 -#WIDTH=1280 -#HEIGHT=720 +# Audio +AUDIO_CHANNELS=2 +AUDIO_OPUS_BITRATE=96000 -FRAMERATE=24 +if [ -f .env ]; then + source .env +fi -v4l2-ctl -d $VIDEO_ID -c power_line_frequency=1 -v4l2-ctl -d $VIDEO_ID -c zoom_absolute=140 -v4l2-ctl -d $VIDEO_ID -c focus_auto=0 -v4l2-ctl -d $VIDEO_ID -c focus_absolute=1 -v4l2-ctl -d $VIDEO_ID -c sharpness=128 +v4l2-ctl -d $V4L2_ID -c power_line_frequency=1 +v4l2-ctl -d $V4L2_ID -c zoom_absolute=$V4L2_ZOOM +v4l2-ctl -d $V4L2_ID -c focus_auto=0 +v4l2-ctl -d $V4L2_ID -c focus_absolute=1 +v4l2-ctl -d $V4L2_ID -c sharpness=128 # ! queue ! videoflip method=rotate-180 \ -gst-launch-1.0 v4l2src device=/dev/video$VIDEO_ID ! video/x-raw, format=YUY2, width=$WIDTH, height=$HEIGHT, framerate=$FRAMERATE/1 \ +gst-launch-1.0 v4l2src device=/dev/video$V4L2_ID ! video/x-raw, format=YUY2, width=$VIDEO_WIDTH, height=$VIDEO_HEIGHT, framerate=$VIDEO_FRAMERATE/1 \ ! queue ! videoflip method=rotate-180 \ ! queue ! videoconvert \ ! queue ! vp8enc threads=4 deadline=2 \ @@ -38,7 +46,7 @@ gst-launch-1.0 v4l2src device=/dev/video$VIDEO_ID ! video/x-raw, format=YUY2, wi ! queue ! rgvolume pre-amp=12.0 \ ! queue ! rglimiter \ ! queue ! audioconvert \ - ! queue ! opusenc bitrate=96000 \ + ! queue ! opusenc bitrate=$AUDIO_OPUS_BITRATE \ ! queue ! muxout. \ webmmux streamable=true name=muxout \ ! queue ! tcpserversink host=127.0.0.1 port=9000 blocksize=65536 sync-method=1 \ -- 2.39.5