From d452d44736c2a5271f6924f915e2282105170c3f Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Wed, 8 Oct 2014 19:52:54 +0200 Subject: moved control room scripts to separate dir --- .gitignore | 13 +++-- scripts/ctrlroom/include.sh | 46 +++++++++++++++++ scripts/ctrlroom/supervisord.conf | 65 +++++++++++++++++++++++ scripts/ctrlroom/sydra-ctl.sh | 12 +++++ scripts/ctrlroom/sydra-manager.sh | 70 +++++++++++++++++++++++++ scripts/ctrlroom/sydra-receiver.sh | 103 +++++++++++++++++++++++++++++++++++++ scripts/ctrlroom/sydra-sender.sh | 45 ++++++++++++++++ scripts/include.sh | 46 ----------------- scripts/supervisord.conf | 65 ----------------------- scripts/sydra-ctl.sh | 12 ----- scripts/sydra-manager.sh | 70 ------------------------- scripts/sydra-receiver.sh | 103 ------------------------------------- scripts/sydra-sender.sh | 45 ---------------- 13 files changed, 350 insertions(+), 345 deletions(-) create mode 100644 scripts/ctrlroom/include.sh create mode 100644 scripts/ctrlroom/supervisord.conf create mode 100755 scripts/ctrlroom/sydra-ctl.sh create mode 100755 scripts/ctrlroom/sydra-manager.sh create mode 100755 scripts/ctrlroom/sydra-receiver.sh create mode 100755 scripts/ctrlroom/sydra-sender.sh delete mode 100644 scripts/include.sh delete mode 100644 scripts/supervisord.conf delete mode 100755 scripts/sydra-ctl.sh delete mode 100755 scripts/sydra-manager.sh delete mode 100755 scripts/sydra-receiver.sh delete mode 100755 scripts/sydra-sender.sh diff --git a/.gitignore b/.gitignore index bff9132..53b6385 100644 --- a/.gitignore +++ b/.gitignore @@ -6,7 +6,12 @@ src/*.d src/*.d.* src/config*.h src/recordings/ -scripts/logs/ -scripts/recordings/ -scripts/sydra-receiver.main -scripts/supervisord.pid +scripts/ctrlroom/logs/ +scripts/ctrlroom/recordings/ +scripts/ctrlroom/supervisord.pid +scripts/ctrlroom/supervisord.sock +scripts/ctrlroom/sydra-receiver.main +scripts/ctrlroom/sydra-manager.sock +scripts/client/logs/ +scripts/client/recordings/ +scripts/client/supervisord.pid diff --git a/scripts/ctrlroom/include.sh b/scripts/ctrlroom/include.sh new file mode 100644 index 0000000..3a809e9 --- /dev/null +++ b/scripts/ctrlroom/include.sh @@ -0,0 +1,46 @@ +get_id_title_and_port() { + case "$1" in + 00) + TITLE='ESC: Ministry of Hacking' + PORT_BASE=5010 + ID='esc' + ;; + 01) + TITLE='Gemeinschaftsprojekt Attemsgarten' + PORT_BASE=5020 + ID='gag' + ;; + 02) + TITLE='rathaus der herzen' + PORT_BASE=5030 + ID='rdh' + ;; + 03) + TITLE='realraum' + PORT_BASE=5040 + ID='r3' + ;; + 04) + TITLE='<rotor> Zentrum für zetgenössische Kunst' + PORT_BASE=5050 + ID='rot' + ;; + 05) + TITLE='Spektral' + PORT_BASE=5060 + ID='spe' + ;; + esac +} + +get_num() { + case "$1" in + 'esc') NUM=00 ;; + 'gag') NUM=01 ;; + 'rdh') NUM=02 ;; + 'r3') NUM=03 ;; + 'rot') NUM=04 ;; + 'spe') NUM=05 ;; + esac +} + diff --git a/scripts/ctrlroom/supervisord.conf b/scripts/ctrlroom/supervisord.conf new file mode 100644 index 0000000..f505b4e --- /dev/null +++ b/scripts/ctrlroom/supervisord.conf @@ -0,0 +1,65 @@ +[unix_http_server] +file=%(here)s/supervisor.sock +chmod=0700 + +[inet_http_server] +port=127.0.0.1:9001 + +[supervisord] +logfile=%(here)s/logs/supervisord.log +loglevel=info +pidfile=%(here)s/supervisord.pid +nodaemon=false +identifier=sydra +childlogdir=%(here)s/logs +;environment=SYDRA_TEST=1 + +[rpcinterface:supervisor] +supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface + +[supervisorctl] +serverurl=unix://%(here)s/supervisor.sock +prompt=sydractl + +[program:manager] +command=%(here)s/sydra-manager.sh %(here)s %(group_name)s +process_name=manager +numprocs=1 +priority=10 +autostart=true +autorestart=true +startsecs=0 +startretries=10 + +[program:overview] +command=%(here)s/sydra-receiver.sh %(here)s %(program_name)s %(process_num)02d +process_name=%(process_num)02d +numprocs=6 +priority=20 +autostart=true +autorestart=true +startsecs=0 +startretries=10 + +[program:main] +command=%(here)s/sydra-receiver.sh %(here)s %(program_name)s +process_name=main +numprocs=1 +priority=30 +autostart=true +autorestart=true +startsecs=0 +startretries=10 + +[program:sender] +command=%(here)s/sydra-sender.sh %(here)s +process_name=sender +numprocs=1 +priority=20 +autostart=true +autorestart=true +startsecs=0 +startretries=10 + +[group:e14] +programs=manager,overview,main,sender diff --git a/scripts/ctrlroom/sydra-ctl.sh b/scripts/ctrlroom/sydra-ctl.sh new file mode 100755 index 0000000..2a2cb45 --- /dev/null +++ b/scripts/ctrlroom/sydra-ctl.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +PIPE=./sydra-manager.sock + +while true +do + if read line; then + echo $line > $PIPE + fi +done + +exit 0 diff --git a/scripts/ctrlroom/sydra-manager.sh b/scripts/ctrlroom/sydra-manager.sh new file mode 100755 index 0000000..bd6c24b --- /dev/null +++ b/scripts/ctrlroom/sydra-manager.sh @@ -0,0 +1,70 @@ +#!/bin/bash + +############################ + +ROOT_D="$1" +GROUP_NAME="$2" + +############################ + +printUsage() { + echo "Usage: $0 " +} + +if [ -z "$ROOT_D" ] || [ -z "$GROUP_NAME" ]; then + printUsage + exit 1 +fi +if [ ! -d "$ROOT_D" ]; then + echo "ERROR: can't change to non-existent directory: $ROOT_D" + exit 2 +fi + +. ./include.sh + +PIPE="$ROOT_D/sydra-manager.sock" +trap "rm -f $PIPE" EXIT +if [[ ! -p $PIPE ]]; then + mkfifo $PIPE +fi + +cd "$ROOT_D" +MAIN_STAT_FILE="sydra-receiver.main" +echo "00" > $MAIN_STAT_FILE + +while true +do + if read line <$PIPE; then + cmd=${line%% *} + arg=${line##* } + case $cmd in + restart) + get_num $arg + if [ -z "$NUM" ]; then NUM=$arg; fi + supervisorctl restart "$GROUP_NAME:$NUM" + NUM='' + ;; + select) + get_num $arg + if [ -n "$NUM" ]; then + echo "$NUM" > $MAIN_STAT_FILE + supervisorctl restart "$GROUP_NAME:main" + else + echo "unkown client: $arg" >&2 + fi + NUM='' + ;; + reloadconfig) + kill -SIGHUP `cat supervisord.pid` + ;; + killall) + kill `cat supervisord.pid` + ;; + *) + echo "unkown command: $cmd" >&2 + ;; + esac + fi +done + +exit 0 diff --git a/scripts/ctrlroom/sydra-receiver.sh b/scripts/ctrlroom/sydra-receiver.sh new file mode 100755 index 0000000..7d2a3e6 --- /dev/null +++ b/scripts/ctrlroom/sydra-receiver.sh @@ -0,0 +1,103 @@ +#!/bin/bash +############################ + +ROOT_D="$1" +TAG="$2" +NUM="$3" + +SYDRA_RTP="/home/equinox/spreadspace/sydra/src/sydra-rtp" +SYDRA_LAUNCH="/home/equinox/spreadspace/sydra/src/sydra-launch" +MAIN_STAT_FILE="sydra-receiver.main" + +############################ + +printUsage() { + echo "Usage: $0 (overview|main )" +} + +if [ -z "$ROOT_D" ] || [ -z "$TAG" ]; then + printUsage + exit 1 +fi +if [ ! -d "$ROOT_D" ]; then + echo "ERROR: can't change to non-existent directory: $ROOT_D" + exit 2 +fi + +. ./include.sh + +start_rtp_overview() { + ID="$1" + TITLE="$2" + PORT_BASE="$3" + REF_PORT_BASE=$((PORT_BASE + 1000)) + RECORD_D="$ROOT_D/recordings/$ID" + mkdir -p "$RECORD_D" + + herbstclient rule once title="overview-$ID" tag="overview" + exec $SYDRA_RTP -n "overview-$ID" -D --log stdout:3 --mode receiver -O $PORT_BASE --rtp-host-reflector localhost --rtp-port-base-reflector $REF_PORT_BASE \ + --sink "videoconvert name=videosink ! textoverlay text=\"$TITLE\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink fakesink name=audiosink" \ + --rec-mux matroskamux --rec-name-format "$RECORD_D/%Y-%m-%d_%H-%M-%S.mkv" --rec-video-encoder jpegenc \ + --rec-audio-encoder "audioconvert ! vorbisenc" +} + +start_test_overview() { + ID="$1" + TITLE="$2" + + herbstclient rule once title="overview-$ID" tag="overview" + exec $SYDRA_LAUNCH -n "overview-$ID" -D --log stdout:3 -p "videotestsrc ! video/x-raw,width=864,height=480,framerate=25/1 ! textoverlay text=\"$TITLE\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink" +} + +start_rtp_main() { + ID="$1" + TITLE="$2" + PORT_BASE="$3" + + herbstclient rule once title="main-$ID" tag="main" + exec $SYDRA_RTP -n "main-$ID" -D --log stdout:3 --mode receiver -A localhost -O $PORT_BASE \ + --sink "videoconvert name=videosink ! videoscale add-borders=true ! xvimagesink audioconvert name=audiosink ! audioresample ! autoaudiosink" +} + +start_test_main() { + ID="$1" + TITLE="$2" + + herbstclient rule once title="main-$ID" tag="main" + exec $SYDRA_LAUNCH -n "main-$ID" -D --log stdout:3 -p "videotestsrc ! video/x-raw,width=864,height=480,framerate=25/1 ! textoverlay text=\"$TITLE\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink" +} + +cd $ROOT_D +case "$TAG" in + overview) + if [ -z "$NUM" ]; then + printUsage + exit 1 + fi + + get_id_title_and_port "$NUM" + if [ -z "$ID" ]; then + echo "invalid process number: $NUM" + exit 3 + fi + [ -n "$SYDRA_TEST" ] || start_rtp_overview "$ID" "$TITLE" $PORT_BASE + [ -n "$SYDRA_TEST" ] && start_test_overview "$ID" "$TITLE" $PORT_BASE + ;; + main) + read NUM < "$MAIN_STAT_FILE" + get_id_title_and_port "$NUM" + if [ -z "$ID" ]; then + echo "$ROOT_D/show-stream.current contains an invalid process number: $NUM" + exit 3 + fi + [ -n "$SYDRA_TEST" ] || start_rtp_main "$ID" "$TITLE" $((PORT_BASE + 1000)) + [ -n "$SYDRA_TEST" ] && start_test_main "$ID" "$TITLE" $((PORT_BASE + 1000)) + ;; + *) + printUsage + exit 1 + ;; +esac + +############################ +exit 3 diff --git a/scripts/ctrlroom/sydra-sender.sh b/scripts/ctrlroom/sydra-sender.sh new file mode 100755 index 0000000..bf6a5dd --- /dev/null +++ b/scripts/ctrlroom/sydra-sender.sh @@ -0,0 +1,45 @@ +#!/bin/bash +############################ + +ROOT_D="$1" + +SYDRA_RTP="/home/equinox/spreadspace/sydra/src/sydra-rtp" +SYDRA_LAUNCH="/home/equinox/spreadspace/sydra/src/sydra-launch" + +############################ + +printUsage() { + echo "Usage: $0 " +} + +if [ -z "$ROOT_D" ]; then + printUsage + exit 1 +fi +if [ ! -d "$ROOT_D" ]; then + echo "ERROR: can't change to non-existent directory: $ROOT_D" + exit 2 +fi + +. ./include.sh + +start_rtp() { + PORT_BASE=8000 + RECORD_D="$ROOT_D/recordings/sender" + mkdir -p "$RECORD_D" + + herbstclient rule once title="sender" tag="control" + exec $SYDRA_RTP -n "sender" -D --log stdout:3 --mode sender -O $PORT_BASE \ + --previewsink "textoverlay text=\"local\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink" \ + --rec-mux matroskamux --rec-name-format "$RECORD_D/%Y-%m-%d_%H-%M-%S.mkv" --rec-video-encoder jpegenc \ + --rec-audio-encoder "audioconvert ! vorbisenc" +} + +start_test() { + herbstclient rule once title="sender" tag="control" + exec $SYDRA_LAUNCH -n "sender" -D --log stdout:3 -p "videotestsrc ! video/x-raw,width=864,height=480,framerate=25/1 ! textoverlay text=\"local\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink" +} + +cd $ROOT_D +[ -n "$SYDRA_TEST" ] || start_rtp +[ -n "$SYDRA_TEST" ] && start_test diff --git a/scripts/include.sh b/scripts/include.sh deleted file mode 100644 index 3a809e9..0000000 --- a/scripts/include.sh +++ /dev/null @@ -1,46 +0,0 @@ -get_id_title_and_port() { - case "$1" in - 00) - TITLE='ESC: Ministry of Hacking' - PORT_BASE=5010 - ID='esc' - ;; - 01) - TITLE='Gemeinschaftsprojekt Attemsgarten' - PORT_BASE=5020 - ID='gag' - ;; - 02) - TITLE='rathaus der herzen' - PORT_BASE=5030 - ID='rdh' - ;; - 03) - TITLE='realraum' - PORT_BASE=5040 - ID='r3' - ;; - 04) - TITLE='<rotor> Zentrum für zetgenössische Kunst' - PORT_BASE=5050 - ID='rot' - ;; - 05) - TITLE='Spektral' - PORT_BASE=5060 - ID='spe' - ;; - esac -} - -get_num() { - case "$1" in - 'esc') NUM=00 ;; - 'gag') NUM=01 ;; - 'rdh') NUM=02 ;; - 'r3') NUM=03 ;; - 'rot') NUM=04 ;; - 'spe') NUM=05 ;; - esac -} - diff --git a/scripts/supervisord.conf b/scripts/supervisord.conf deleted file mode 100644 index 860b547..0000000 --- a/scripts/supervisord.conf +++ /dev/null @@ -1,65 +0,0 @@ -[unix_http_server] -file=%(here)s/supervisor.sock -chmod=0700 - -[inet_http_server] -port=127.0.0.1:9001 - -[supervisord] -logfile=%(here)s/logs/supervisord.log -loglevel=info -pidfile=%(here)s/supervisord.pid -nodaemon=false -identifier=sydra -childlogdir=%(here)s/logs -;environment=SYDRA_TEST=1 - -[rpcinterface:supervisor] -supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface - -[supervisorctl] -serverurl=unix://%(here)s/supervisor.sock -prompt=sydractl - -[program:manager] -command=/home/equinox/spreadspace/sydra/scripts/sydra-manager.sh %(here)s %(group_name)s -process_name=manager -numprocs=1 -priority=10 -autostart=true -autorestart=true -startsecs=0 -startretries=10 - -[program:overview] -command=/home/equinox/spreadspace/sydra/scripts/sydra-receiver.sh %(here)s %(program_name)s %(process_num)02d -process_name=%(process_num)02d -numprocs=6 -priority=20 -autostart=true -autorestart=true -startsecs=0 -startretries=10 - -[program:main] -command=/home/equinox/spreadspace/sydra/scripts/sydra-receiver.sh %(here)s %(program_name)s -process_name=main -numprocs=1 -priority=30 -autostart=true -autorestart=true -startsecs=0 -startretries=10 - -[program:sender] -command=/home/equinox/spreadspace/sydra/scripts/sydra-sender.sh %(here)s -process_name=sender -numprocs=1 -priority=20 -autostart=true -autorestart=true -startsecs=0 -startretries=10 - -[group:e14] -programs=manager,overview,main,sender diff --git a/scripts/sydra-ctl.sh b/scripts/sydra-ctl.sh deleted file mode 100755 index 2a2cb45..0000000 --- a/scripts/sydra-ctl.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -PIPE=./sydra-manager.sock - -while true -do - if read line; then - echo $line > $PIPE - fi -done - -exit 0 diff --git a/scripts/sydra-manager.sh b/scripts/sydra-manager.sh deleted file mode 100755 index bd6c24b..0000000 --- a/scripts/sydra-manager.sh +++ /dev/null @@ -1,70 +0,0 @@ -#!/bin/bash - -############################ - -ROOT_D="$1" -GROUP_NAME="$2" - -############################ - -printUsage() { - echo "Usage: $0 " -} - -if [ -z "$ROOT_D" ] || [ -z "$GROUP_NAME" ]; then - printUsage - exit 1 -fi -if [ ! -d "$ROOT_D" ]; then - echo "ERROR: can't change to non-existent directory: $ROOT_D" - exit 2 -fi - -. ./include.sh - -PIPE="$ROOT_D/sydra-manager.sock" -trap "rm -f $PIPE" EXIT -if [[ ! -p $PIPE ]]; then - mkfifo $PIPE -fi - -cd "$ROOT_D" -MAIN_STAT_FILE="sydra-receiver.main" -echo "00" > $MAIN_STAT_FILE - -while true -do - if read line <$PIPE; then - cmd=${line%% *} - arg=${line##* } - case $cmd in - restart) - get_num $arg - if [ -z "$NUM" ]; then NUM=$arg; fi - supervisorctl restart "$GROUP_NAME:$NUM" - NUM='' - ;; - select) - get_num $arg - if [ -n "$NUM" ]; then - echo "$NUM" > $MAIN_STAT_FILE - supervisorctl restart "$GROUP_NAME:main" - else - echo "unkown client: $arg" >&2 - fi - NUM='' - ;; - reloadconfig) - kill -SIGHUP `cat supervisord.pid` - ;; - killall) - kill `cat supervisord.pid` - ;; - *) - echo "unkown command: $cmd" >&2 - ;; - esac - fi -done - -exit 0 diff --git a/scripts/sydra-receiver.sh b/scripts/sydra-receiver.sh deleted file mode 100755 index 7d2a3e6..0000000 --- a/scripts/sydra-receiver.sh +++ /dev/null @@ -1,103 +0,0 @@ -#!/bin/bash -############################ - -ROOT_D="$1" -TAG="$2" -NUM="$3" - -SYDRA_RTP="/home/equinox/spreadspace/sydra/src/sydra-rtp" -SYDRA_LAUNCH="/home/equinox/spreadspace/sydra/src/sydra-launch" -MAIN_STAT_FILE="sydra-receiver.main" - -############################ - -printUsage() { - echo "Usage: $0 (overview|main )" -} - -if [ -z "$ROOT_D" ] || [ -z "$TAG" ]; then - printUsage - exit 1 -fi -if [ ! -d "$ROOT_D" ]; then - echo "ERROR: can't change to non-existent directory: $ROOT_D" - exit 2 -fi - -. ./include.sh - -start_rtp_overview() { - ID="$1" - TITLE="$2" - PORT_BASE="$3" - REF_PORT_BASE=$((PORT_BASE + 1000)) - RECORD_D="$ROOT_D/recordings/$ID" - mkdir -p "$RECORD_D" - - herbstclient rule once title="overview-$ID" tag="overview" - exec $SYDRA_RTP -n "overview-$ID" -D --log stdout:3 --mode receiver -O $PORT_BASE --rtp-host-reflector localhost --rtp-port-base-reflector $REF_PORT_BASE \ - --sink "videoconvert name=videosink ! textoverlay text=\"$TITLE\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink fakesink name=audiosink" \ - --rec-mux matroskamux --rec-name-format "$RECORD_D/%Y-%m-%d_%H-%M-%S.mkv" --rec-video-encoder jpegenc \ - --rec-audio-encoder "audioconvert ! vorbisenc" -} - -start_test_overview() { - ID="$1" - TITLE="$2" - - herbstclient rule once title="overview-$ID" tag="overview" - exec $SYDRA_LAUNCH -n "overview-$ID" -D --log stdout:3 -p "videotestsrc ! video/x-raw,width=864,height=480,framerate=25/1 ! textoverlay text=\"$TITLE\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink" -} - -start_rtp_main() { - ID="$1" - TITLE="$2" - PORT_BASE="$3" - - herbstclient rule once title="main-$ID" tag="main" - exec $SYDRA_RTP -n "main-$ID" -D --log stdout:3 --mode receiver -A localhost -O $PORT_BASE \ - --sink "videoconvert name=videosink ! videoscale add-borders=true ! xvimagesink audioconvert name=audiosink ! audioresample ! autoaudiosink" -} - -start_test_main() { - ID="$1" - TITLE="$2" - - herbstclient rule once title="main-$ID" tag="main" - exec $SYDRA_LAUNCH -n "main-$ID" -D --log stdout:3 -p "videotestsrc ! video/x-raw,width=864,height=480,framerate=25/1 ! textoverlay text=\"$TITLE\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink" -} - -cd $ROOT_D -case "$TAG" in - overview) - if [ -z "$NUM" ]; then - printUsage - exit 1 - fi - - get_id_title_and_port "$NUM" - if [ -z "$ID" ]; then - echo "invalid process number: $NUM" - exit 3 - fi - [ -n "$SYDRA_TEST" ] || start_rtp_overview "$ID" "$TITLE" $PORT_BASE - [ -n "$SYDRA_TEST" ] && start_test_overview "$ID" "$TITLE" $PORT_BASE - ;; - main) - read NUM < "$MAIN_STAT_FILE" - get_id_title_and_port "$NUM" - if [ -z "$ID" ]; then - echo "$ROOT_D/show-stream.current contains an invalid process number: $NUM" - exit 3 - fi - [ -n "$SYDRA_TEST" ] || start_rtp_main "$ID" "$TITLE" $((PORT_BASE + 1000)) - [ -n "$SYDRA_TEST" ] && start_test_main "$ID" "$TITLE" $((PORT_BASE + 1000)) - ;; - *) - printUsage - exit 1 - ;; -esac - -############################ -exit 3 diff --git a/scripts/sydra-sender.sh b/scripts/sydra-sender.sh deleted file mode 100755 index bf6a5dd..0000000 --- a/scripts/sydra-sender.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/bash -############################ - -ROOT_D="$1" - -SYDRA_RTP="/home/equinox/spreadspace/sydra/src/sydra-rtp" -SYDRA_LAUNCH="/home/equinox/spreadspace/sydra/src/sydra-launch" - -############################ - -printUsage() { - echo "Usage: $0 " -} - -if [ -z "$ROOT_D" ]; then - printUsage - exit 1 -fi -if [ ! -d "$ROOT_D" ]; then - echo "ERROR: can't change to non-existent directory: $ROOT_D" - exit 2 -fi - -. ./include.sh - -start_rtp() { - PORT_BASE=8000 - RECORD_D="$ROOT_D/recordings/sender" - mkdir -p "$RECORD_D" - - herbstclient rule once title="sender" tag="control" - exec $SYDRA_RTP -n "sender" -D --log stdout:3 --mode sender -O $PORT_BASE \ - --previewsink "textoverlay text=\"local\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink" \ - --rec-mux matroskamux --rec-name-format "$RECORD_D/%Y-%m-%d_%H-%M-%S.mkv" --rec-video-encoder jpegenc \ - --rec-audio-encoder "audioconvert ! vorbisenc" -} - -start_test() { - herbstclient rule once title="sender" tag="control" - exec $SYDRA_LAUNCH -n "sender" -D --log stdout:3 -p "videotestsrc ! video/x-raw,width=864,height=480,framerate=25/1 ! textoverlay text=\"local\" shaded-background=true font-desc=\"Sans 18\" ! videoscale add-borders=true ! xvimagesink" -} - -cd $ROOT_D -[ -n "$SYDRA_TEST" ] || start_rtp -[ -n "$SYDRA_TEST" ] && start_test -- cgit v1.2.3