diff options
Diffstat (limited to 'example-scripts')
45 files changed, 452 insertions, 0 deletions
diff --git a/example-scripts/audio-play-cam1-mirror.sh b/example-scripts/audio-play-cam1-mirror.sh new file mode 100755 index 0000000..6b60a9b --- /dev/null +++ b/example-scripts/audio-play-cam1-mirror.sh @@ -0,0 +1,5 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=13000 !\ + matroskademux !\ + alsasink diff --git a/example-scripts/audio-play-cam2-mirror.sh b/example-scripts/audio-play-cam2-mirror.sh new file mode 100755 index 0000000..e9f2fb1 --- /dev/null +++ b/example-scripts/audio-play-cam2-mirror.sh @@ -0,0 +1,5 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=13001 !\ + matroskademux !\ + alsasink diff --git a/example-scripts/audio-visualize-cam1-mirror.sh b/example-scripts/audio-visualize-cam1-mirror.sh new file mode 100755 index 0000000..70772c4 --- /dev/null +++ b/example-scripts/audio-visualize-cam1-mirror.sh @@ -0,0 +1,9 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=13000 !\ + matroskademux !\ + audioconvert !\ + wavescope shader=none style=lines !\ + video/x-raw,width=800,height=300 !\ + videoconvert !\ + xvimagesink diff --git a/example-scripts/av-play-cam1-mirror.sh b/example-scripts/av-play-cam1-mirror.sh new file mode 100755 index 0000000..0ec1f2b --- /dev/null +++ b/example-scripts/av-play-cam1-mirror.sh @@ -0,0 +1,12 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=13000 !\ + matroskademux name=demux \ + \ + demux. !\ + queue !\ + xvimagesink ts-offset=300000000 \ + \ + demux. !\ + queue !\ + alsasink provide-clock=false ts-offset=300000000 diff --git a/example-scripts/av-play-output-ffplay.sh b/example-scripts/av-play-output-ffplay.sh new file mode 100755 index 0000000..733c279 --- /dev/null +++ b/example-scripts/av-play-output-ffplay.sh @@ -0,0 +1,2 @@ +#!/bin/sh +ffplay tcp://localhost:11000 diff --git a/example-scripts/av-record-cam1-mirror.sh b/example-scripts/av-record-cam1-mirror.sh new file mode 100755 index 0000000..5726535 --- /dev/null +++ b/example-scripts/av-record-cam1-mirror.sh @@ -0,0 +1,20 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=13000 !\ + matroskademux name=demux \ + \ + demux. !\ + queue !\ + avenc_mpeg2video bitrate=5000000 max-key-interval=0 !\ + queue !\ + mux. \ + \ + demux. !\ + queue !\ + audioconvert !\ + avenc_mp2 bitrate=192000 !\ + queue !\ + mux. \ + \ + mpegtsmux name=mux !\ + filesink location=foo.ts diff --git a/example-scripts/av-record-output-ffmpeg-timestamps.sh b/example-scripts/av-record-output-ffmpeg-timestamps.sh new file mode 100755 index 0000000..86bd1d1 --- /dev/null +++ b/example-scripts/av-record-output-ffmpeg-timestamps.sh @@ -0,0 +1,8 @@ +#!/bin/sh +ffmpeg \ + -i tcp://localhost:11000 \ + -ac 2 -channel_layout 2 -aspect 16:9 \ + -map 0:v -c:v:0 mpeg2video -pix_fmt:v:0 yuv422p -qscale:v:0 2 -qmin:v:0 2 -qmax:v:0 7 -keyint_min 0 -bf:0 0 -g:0 0 -intra:0 -maxrate:0 90M \ + -map 0:a -c:a:0 mp2 -b:a:0 192k -ac:a:0 2 -ar:a:0 48000 \ + -flags +global_header -flags +ilme+ildct \ + -f segment -segment_time 180 -segment_format mpegts segment-%t-%05d.ts.ts diff --git a/example-scripts/av-record-output-ffmpeg.sh b/example-scripts/av-record-output-ffmpeg.sh new file mode 100755 index 0000000..0ea3d25 --- /dev/null +++ b/example-scripts/av-record-output-ffmpeg.sh @@ -0,0 +1,8 @@ +#!/bin/sh +ffmpeg \ + -i tcp://localhost:11000 \ + -ac 2 -channel_layout 2 -aspect 16:9 \ + -map 0:v -c:v:0 mpeg2video -pix_fmt:v:0 yuv422p -qscale:v:0 2 -qmin:v:0 2 -qmax:v:0 7 -keyint_min 0 -bf:0 0 -g:0 0 -intra:0 -maxrate:0 90M \ + -map 0:a -c:a:0 mp2 -b:a:0 192k -ac:a:0 2 -ar:a:0 48000 \ + -flags +global_header -flags +ilme+ildct \ + -f segment -segment_time 180 -segment_format mpegts segment-%d.ts diff --git a/example-scripts/av-record-output.sh b/example-scripts/av-record-output.sh new file mode 100755 index 0000000..ef306ed --- /dev/null +++ b/example-scripts/av-record-output.sh @@ -0,0 +1,20 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=11000 !\ + matroskademux name=demux \ + \ + demux. !\ + queue !\ + avenc_mpeg2video bitrate=5000000 max-key-interval=0 !\ + queue !\ + mux. \ + \ + demux. !\ + queue !\ + audioconvert !\ + avenc_mp2 bitrate=192000 !\ + queue !\ + mux. \ + \ + mpegtsmux name=mux !\ + filesink location=foo.ts diff --git a/example-scripts/av-source-avsync-ffmpeg-noloop.sh b/example-scripts/av-source-avsync-ffmpeg-noloop.sh new file mode 100755 index 0000000..2183f35 --- /dev/null +++ b/example-scripts/av-source-avsync-ffmpeg-noloop.sh @@ -0,0 +1,8 @@ +#!/bin/sh +ffmpeg -y \ + -i $HOME/avsync.ts \ + -vf scale=1920x1080 \ + -c:v rawvideo \ + -c:a pcm_s16le \ + -f matroska \ + tcp://localhost:10000 diff --git a/example-scripts/av-source-avsync-ffmpeg.sh b/example-scripts/av-source-avsync-ffmpeg.sh new file mode 100755 index 0000000..d4e848b --- /dev/null +++ b/example-scripts/av-source-avsync-ffmpeg.sh @@ -0,0 +1,8 @@ +#!/bin/sh +(while true; do cat $HOME/avsync.ts || exit; done) | ffmpeg -y \ + -i - \ + -vf scale=1920x1080 \ + -c:v rawvideo \ + -c:a pcm_s16le \ + -f matroska \ + tcp://localhost:10000 diff --git a/example-scripts/av-source-avsync.sh b/example-scripts/av-source-avsync.sh new file mode 100755 index 0000000..208e9c0 --- /dev/null +++ b/example-scripts/av-source-avsync.sh @@ -0,0 +1,23 @@ +#!/bin/sh +gst-launch-1.0 \ + uridecodebin \ + uri=http://c3voc.mazdermind.de/avsync.mp4 \ + name=src \ + \ + src. !\ + queue !\ + videoconvert !\ + videoscale !\ + video/x-raw,format=I420,width=1280,height=720,framerate=25/1,pixel-aspect-ratio=1/1 ! \ + mux. \ + \ + src. !\ + queue !\ + audioconvert !\ + audioresample !\ + audiorate !\ + audio/x-raw,format=S16LE,channels=2,layout=interleaved,rate=48000 !\ + mux. \ + \ + matroskamux name=mux !\ + tcpclientsink host=localhost port=10001 diff --git a/example-scripts/av-source-background-loop.py b/example-scripts/av-source-background-loop.py new file mode 100755 index 0000000..9f4dc6d --- /dev/null +++ b/example-scripts/av-source-background-loop.py @@ -0,0 +1,63 @@ +#!/usr/bin/python3 +import sys, gi, signal + +gi.require_version('Gst', '1.0') +from gi.repository import Gst, GObject + +# init GObject & Co. before importing local classes +GObject.threads_init() +Gst.init([]) + +class LoopSource(object): + def __init__(self): + pipeline = """ + uridecodebin name=src uri=http://c3voc.mazdermind.de/bg.ts ! + video/x-raw,format=I420,width=1920,height=1080,framerate=25/1,pixel-aspect-ratio=1/1 ! + matroskamux ! + tcpclientsink host=localhost port=16000 + """ + + self.senderPipeline = Gst.parse_launch(pipeline) + self.src = self.senderPipeline.get_by_name('src') + + # Binding End-of-Stream-Signal on Source-Pipeline + self.senderPipeline.bus.add_signal_watch() + self.senderPipeline.bus.connect("message::eos", self.on_eos) + self.senderPipeline.bus.connect("message::error", self.on_error) + + print("playing") + self.senderPipeline.set_state(Gst.State.PLAYING) + + + def on_eos(self, bus, message): + print('Received EOS-Signal, Seeking to start') + self.src.seek( + 1.0, # rate (float) + Gst.Format.TIME, # format (Gst.Format) + Gst.SeekFlags.FLUSH, # flags (Gst.SeekFlags) + Gst.SeekType.SET, # start_type (Gst.SeekType) + 0, # start (int) + Gst.SeekType.NONE, # stop_type (Gst.SeekType) + 0 # stop (int) + ) + + def on_error(self, bus, message): + print('Received Error-Signal') + (error, debug) = message.parse_error() + print('Error-Details: #%u: %s' % (error.code, debug)) + sys.exit(1) + +def main(): + signal.signal(signal.SIGINT, signal.SIG_DFL) + + src = LoopSource() + + mainloop = GObject.MainLoop() + try: + mainloop.run() + except KeyboardInterrupt: + print('Terminated via Ctrl-C') + + +if __name__ == '__main__': + main() diff --git a/example-scripts/av-source-background-loop.sh b/example-scripts/av-source-background-loop.sh new file mode 100755 index 0000000..8b16487 --- /dev/null +++ b/example-scripts/av-source-background-loop.sh @@ -0,0 +1,6 @@ +while true; do cat ~/bg.ts || exit 1; done |\ + ffmpeg -re -i - \ + -map 0:v \ + -c:v rawvideo \ + -f matroska \ + tcp://localhost:16000 diff --git a/example-scripts/av-source-background.sh b/example-scripts/av-source-background.sh new file mode 100755 index 0000000..d978135 --- /dev/null +++ b/example-scripts/av-source-background.sh @@ -0,0 +1,6 @@ +#!/bin/sh +gst-launch-1.0 \ + videotestsrc pattern=ball !\ + video/x-raw,format=I420,width=1280,height=720,framerate=25/1,pixel-aspect-ratio=1/1 !\ + matroskamux !\ + tcpclientsink host=localhost port=16000 diff --git a/example-scripts/av-source-bmd-cam1.sh b/example-scripts/av-source-bmd-cam1.sh new file mode 100755 index 0000000..600a0b7 --- /dev/null +++ b/example-scripts/av-source-bmd-cam1.sh @@ -0,0 +1,8 @@ +#!/bin/sh +ffmpeg -y \ + -f decklink \ + -i 'DeckLink Mini Recorder (1)@11' \ + -c:v rawvideo -c:a pcm_s16le \ + -pix_fmt yuv420p \ + -f matroska \ + tcp://localhost:10000 diff --git a/example-scripts/av-source-bmd-cam2.sh b/example-scripts/av-source-bmd-cam2.sh new file mode 100755 index 0000000..3682663 --- /dev/null +++ b/example-scripts/av-source-bmd-cam2.sh @@ -0,0 +1,8 @@ +#!/bin/sh +ffmpeg -y \ + -f decklink \ + -i 'DeckLink Mini Recorder (2)@11' \ + -c:v rawvideo -c:a pcm_s16le \ + -pix_fmt yuv420p \ + -f matroska \ + tcp://localhost:10001 diff --git a/example-scripts/av-source-cam1.sh b/example-scripts/av-source-cam1.sh new file mode 100755 index 0000000..22b61f5 --- /dev/null +++ b/example-scripts/av-source-cam1.sh @@ -0,0 +1,9 @@ +#!/bin/sh +ffmpeg -y \ + -i "$HOME/31c3-sendezentrum-1013-de-Methodisch_inkorrekt_Die_falsche_42_hd.mp4" \ + -ac 2 \ + -af aresample=48000 \ + -c:v rawvideo \ + -c:a pcm_s16le \ + -f matroska \ + tcp://localhost:10000 diff --git a/example-scripts/av-source-cam2.sh b/example-scripts/av-source-cam2.sh new file mode 100755 index 0000000..6f39fd0 --- /dev/null +++ b/example-scripts/av-source-cam2.sh @@ -0,0 +1,9 @@ +#!/bin/sh +ffmpeg -y \ + -i "$HOME/31c3-sendezentrum-1003-de-Freak_Show_FS147_That_Escalatored_Quickly_hd.mp4" \ + -ac 2 \ + -af aresample=48000 \ + -c:v rawvideo \ + -c:a pcm_s16le \ + -f matroska \ + tcp://localhost:10001 diff --git a/example-scripts/av-source-eevblog-ffmpeg.sh b/example-scripts/av-source-eevblog-ffmpeg.sh new file mode 100755 index 0000000..3c3aab9 --- /dev/null +++ b/example-scripts/av-source-eevblog-ffmpeg.sh @@ -0,0 +1,8 @@ +#!/bin/sh +ffmpeg -y \ + -i $HOME/eevblog.mp4 \ + -c:v rawvideo \ + -c:a pcm_s16le \ + -af aresample=48000 \ + -f matroska \ + tcp://localhost:10000 diff --git a/example-scripts/av-source-eevblog.sh b/example-scripts/av-source-eevblog.sh new file mode 100755 index 0000000..0ed237d --- /dev/null +++ b/example-scripts/av-source-eevblog.sh @@ -0,0 +1,22 @@ +#!/bin/sh +gst-launch-1.0 \ + filesrc location=$HOME/eevblog.mp4 !\ + decodebin name=src \ + \ + src. !\ + queue !\ + videoconvert !\ + videoscale !\ + video/x-raw,format=I420,width=1280,height=720,framerate=25/1,pixel-aspect-ratio=1/1 ! \ + mux. \ + \ + src. !\ + queue !\ + audioconvert !\ + audioresample !\ + audiorate !\ + audio/x-raw,format=S16LE,channels=2,layout=interleaved,rate=48000 !\ + mux. \ + \ + matroskamux name=mux !\ + tcpclientsink host=localhost port=10000 diff --git a/example-scripts/av-source-grabber.sh b/example-scripts/av-source-grabber.sh new file mode 100755 index 0000000..8329dc4 --- /dev/null +++ b/example-scripts/av-source-grabber.sh @@ -0,0 +1,12 @@ +#!/bin/sh +ffmpeg -y \ + -i "http://10.73.5.2:1881/stream.mjpg" \ + -filter_complex "scale=1920:1080,fps=25" \ + -ar 48000 \ + -ac 2 \ + -f s16le \ + -i "/dev/zero" \ + -c:a pcm_s16le \ + -c:v rawvideo \ + -f matroska \ + tcp://localhost:10002 diff --git a/example-scripts/av-stream-hd.sh b/example-scripts/av-stream-hd.sh new file mode 100755 index 0000000..e273a02 --- /dev/null +++ b/example-scripts/av-stream-hd.sh @@ -0,0 +1,12 @@ +#!/bin/sh +ffmpeg -i tcp://localhost:11000 -aspect 16:9 -threads:0 0 \ +-c:v libx264 \ +-filter_complex " + yadif=mode=2, hqdn3d [deinter]; + movie=$HOME/overlay_hd.png [logo]; + [deinter] [logo] overlay=0:0 [out] +" -map '[out]' -maxrate:v:0 3000k -bufsize:v:0 8192k -crf:0 21 -pix_fmt:0 yuv420p -profile:v:0 main -g:v:0 25 -preset:v:0 veryfast \ +-ac 1 -c:a libfdk_aac -b:a 96k -ar 44100 \ +-map 0:a -filter:a:0 pan=mono:c0=FL \ +-ac:a:2 2 \ +-y -f flv rtmp://127.0.0.1:1935/stream/voctomix diff --git a/example-scripts/av-stream-sd.sh b/example-scripts/av-stream-sd.sh new file mode 100755 index 0000000..608c643 --- /dev/null +++ b/example-scripts/av-stream-sd.sh @@ -0,0 +1,10 @@ +#!/bin/sh +ffmpeg -i tcp://localhost:11000 -aspect 16:9 -threads:0 0 \ +-c:v libx264 \ +-filter_complex " + yadif=mode=2, hqdn3d, scale=720:576 [out] +" -map '[out]' -maxrate:v:0 800k -bufsize:v:0 8192k -crf:0 18 -pix_fmt:0 yuv420p -profile:v:0 main -g:v:0 25 -preset:v:0 veryfast \ +-ac 1 -c:a libfdk_aac -b:a 96k -ar 44100 \ +-map 0:a -filter:a:0 pan=mono:c0=FL \ +-ac:a:2 2 \ +-y -f flv rtmp://127.0.0.1:1935/stream/s5_native_sd diff --git a/example-scripts/benchmark.sh b/example-scripts/benchmark.sh new file mode 100755 index 0000000..7b3a72b --- /dev/null +++ b/example-scripts/benchmark.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +../voctocore.py & +PID=$! +echo "PID=$PID" +sleep 1 +./set-composite-side-by-side-equal.sh >/dev/null 2>/dev/null +./av-source-eevblog.sh >/dev/null 2>/dev/null & +./av-source-avsync.sh >/dev/null 2>/dev/null & +pidstat -p $PID 1 & +sleep 10 +kill $PID +wait diff --git a/example-scripts/demo-cube-files.sh b/example-scripts/demo-cube-files.sh new file mode 100755 index 0000000..978c91e --- /dev/null +++ b/example-scripts/demo-cube-files.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +../voctocore.py -vv & +PID=$! +echo "PID=$PID" +sleep 1 +./av-source-cam1.sh & +./av-source-cam2.sh & +./av-source-background-loop.py & +./av-record-output-ffmpeg-timestamps.sh & +./av-stream-hd.sh & +./demo-cycle-modes.sh & +while true; do sleep 1; done +kill $PID +wait diff --git a/example-scripts/demo-cube.sh b/example-scripts/demo-cube.sh new file mode 100755 index 0000000..587f533 --- /dev/null +++ b/example-scripts/demo-cube.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +../voctocore.py -vv & +PID=$! +echo "PID=$PID" +sleep 1 +./av-source-bmd-cam1.sh & +./av-source-bmd-cam2.sh & +./av-source-background-loop.py & +./av-record-output-ffmpeg-timestamps.sh & +./av-stream-hd.sh & +./demo-cycle-modes.sh & +while true; do sleep 1; done +kill $PID +wait diff --git a/example-scripts/demo-cycle-modes.sh b/example-scripts/demo-cycle-modes.sh new file mode 100755 index 0000000..b626b28 --- /dev/null +++ b/example-scripts/demo-cycle-modes.sh @@ -0,0 +1,42 @@ +while true; do + sleep 10 + echo "composite-picture-in-picture" + ./set-composite-picture-in-picture.sh + sleep 10 + echo "audio/video cam2" + ./set-video-cam2.sh + ./set-audio-cam2.sh + sleep 10 + echo "composite-side-by-side-preview" + ./set-composite-side-by-side-preview.sh + sleep 10 + echo "audio/video cam1" + ./set-audio-cam1.sh + ./set-video-cam1.sh + sleep 10 + echo "composite-fullscreen" + ./set-composite-fullscreen.sh + sleep 10 + echo "audio/video cam2" + ./set-audio-cam2.sh + ./set-video-cam2.sh + sleep 10 + echo "audio/video cam1" + ./set-video-cam1.sh + ./set-audio-cam1.sh + sleep 10 + echo "composite-side-by-side-equal" + ./set-composite-side-by-side-equal.sh + sleep 10 + echo "audio/video cam2" + ./set-video-cam2.sh + ./set-audio-cam2.sh + sleep 10 + echo "composite-picture-in-picture" + ./set-composite-picture-in-picture.sh + sleep 10 + echo "audio/video cam1, composite-fullscreen" + ./set-video-cam1.sh + ./set-audio-cam1.sh + ./set-composite-fullscreen.sh +done diff --git a/example-scripts/demo-local.sh b/example-scripts/demo-local.sh new file mode 100755 index 0000000..2fb1f6a --- /dev/null +++ b/example-scripts/demo-local.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +../voctocore.py -vv & +PID=$! +echo "PID=$PID" +sleep 1 +./av-source-cam1.sh & +./av-source-cam2.sh & +./av-source-background-loop.py & +./av-record-output-ffmpeg.sh & +#./av-stream-hd.sh & +./demo-cycle-modes.sh & +ffplay tcp://localhost:11000 +kill $PID +wait diff --git a/example-scripts/perf.sh b/example-scripts/perf.sh new file mode 100755 index 0000000..035ec05 --- /dev/null +++ b/example-scripts/perf.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +../voctocore.py & +PID=$! +echo "PID=$PID" +sleep 1 +./set-composite-side-by-side-equal.sh >/dev/null 2>/dev/null +./av-source-eevblog.sh >/dev/null 2>/dev/null & +./av-source-avsync.sh >/dev/null 2>/dev/null & +sudo perf top -g -p $PID +kill $PID +wait diff --git a/example-scripts/set-audio-cam1.sh b/example-scripts/set-audio-cam1.sh new file mode 100755 index 0000000..19d3b8e --- /dev/null +++ b/example-scripts/set-audio-cam1.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_audio cam1 | nc -q0 localhost 9999 diff --git a/example-scripts/set-audio-cam2.sh b/example-scripts/set-audio-cam2.sh new file mode 100755 index 0000000..9177772 --- /dev/null +++ b/example-scripts/set-audio-cam2.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_audio cam2 | nc -q0 localhost 9999 diff --git a/example-scripts/set-composite-fullscreen.sh b/example-scripts/set-composite-fullscreen.sh new file mode 100755 index 0000000..850e591 --- /dev/null +++ b/example-scripts/set-composite-fullscreen.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_composite_mode fullscreen | nc -q0 localhost 9999 diff --git a/example-scripts/set-composite-picture-in-picture.sh b/example-scripts/set-composite-picture-in-picture.sh new file mode 100755 index 0000000..eae3bea --- /dev/null +++ b/example-scripts/set-composite-picture-in-picture.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_composite_mode picture_in_picture | nc -q0 localhost 9999 diff --git a/example-scripts/set-composite-side-by-side-equal.sh b/example-scripts/set-composite-side-by-side-equal.sh new file mode 100755 index 0000000..37e3357 --- /dev/null +++ b/example-scripts/set-composite-side-by-side-equal.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_composite_mode side_by_side_equal | nc -q0 localhost 9999 diff --git a/example-scripts/set-composite-side-by-side-preview.sh b/example-scripts/set-composite-side-by-side-preview.sh new file mode 100755 index 0000000..dd8a04b --- /dev/null +++ b/example-scripts/set-composite-side-by-side-preview.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_composite_mode side_by_side_preview | nc -q0 localhost 9999 diff --git a/example-scripts/set-stream-blank-nostream.sh b/example-scripts/set-stream-blank-nostream.sh new file mode 100755 index 0000000..abdab4b --- /dev/null +++ b/example-scripts/set-stream-blank-nostream.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_stream_blank nostream | nc -q0 localhost 9999 diff --git a/example-scripts/set-stream-blank-pause.sh b/example-scripts/set-stream-blank-pause.sh new file mode 100755 index 0000000..abf3580 --- /dev/null +++ b/example-scripts/set-stream-blank-pause.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_stream_blank pause | nc -q0 localhost 9999 diff --git a/example-scripts/set-stream-live.sh b/example-scripts/set-stream-live.sh new file mode 100755 index 0000000..e2584c8 --- /dev/null +++ b/example-scripts/set-stream-live.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_stream_live | nc -q0 localhost 9999 diff --git a/example-scripts/set-video-cam1.sh b/example-scripts/set-video-cam1.sh new file mode 100755 index 0000000..d02b385 --- /dev/null +++ b/example-scripts/set-video-cam1.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_video_a cam1 | nc -q0 localhost 9999 diff --git a/example-scripts/set-video-cam2.sh b/example-scripts/set-video-cam2.sh new file mode 100755 index 0000000..c953ade --- /dev/null +++ b/example-scripts/set-video-cam2.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_video_a cam2 | nc -q0 localhost 9999 diff --git a/example-scripts/set-video-grabber.sh b/example-scripts/set-video-grabber.sh new file mode 100755 index 0000000..ee39c3b --- /dev/null +++ b/example-scripts/set-video-grabber.sh @@ -0,0 +1,2 @@ +#!/bin/sh +echo set_video_a grabber | nc -q0 localhost 9999 diff --git a/example-scripts/video-play-cam1-mirror.sh b/example-scripts/video-play-cam1-mirror.sh new file mode 100755 index 0000000..ec3605b --- /dev/null +++ b/example-scripts/video-play-cam1-mirror.sh @@ -0,0 +1,5 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=13000 !\ + matroskademux !\ + xvimagesink diff --git a/example-scripts/video-play-cam2-mirror.sh b/example-scripts/video-play-cam2-mirror.sh new file mode 100755 index 0000000..e42ca6a --- /dev/null +++ b/example-scripts/video-play-cam2-mirror.sh @@ -0,0 +1,5 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=13001 !\ + matroskademux !\ + xvimagesink diff --git a/example-scripts/video-play-mixer-output.sh b/example-scripts/video-play-mixer-output.sh new file mode 100755 index 0000000..abb3174 --- /dev/null +++ b/example-scripts/video-play-mixer-output.sh @@ -0,0 +1,5 @@ +#!/bin/sh +gst-launch-1.0 \ + tcpclientsrc host=localhost port=11000 !\ + matroskademux !\ + xvimagesink |