#!/bin/bash set -euo pipefail IFS=$'\n\t' gst-launch-1.0 -vm \ udpsrc port=15001 name=s1 ! application/x-rtp,media=video,encoding-name=H264,clock-rate=90000 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! \ video/x-raw,width=640,height=840,format=I420,framerate=25/1 ! \ textoverlay text='s1' valignment=bottom halignment=center font-desc="Sans, 50" ! mix.sink_0 \ \ udpsrc port=15002 name=s2 ! application/x-rtp,media=video,encoding-name=H264,clock-rate=90000 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! \ video/x-raw,width=640,height=840,format=I420,framerate=25/1 ! \ textoverlay text='s2' valignment=bottom halignment=center font-desc="Sans, 50" ! mix.sink_1 \ \ udpsrc port=15003 name=s3 ! application/x-rtp,media=video,encoding-name=H264,clock-rate=90000 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! \ video/x-raw,width=640,height=840,format=I420,framerate=25/1 ! \ textoverlay text='s3' valignment=bottom halignment=center font-desc="Sans, 50" ! mix.sink_2 \ \ udpsrc port=15004 name=s4 ! application/x-rtp,media=video,encoding-name=H264,clock-rate=90000 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! \ video/x-raw,width=640,height=840,format=I420,framerate=25/1 ! \ textoverlay text='s4' valignment=bottom halignment=center font-desc="Sans, 50" ! mix.sink_3 \ \ udpsrc port=15005 name=s5 ! application/x-rtp,media=video,encoding-name=H264,clock-rate=90000 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! \ video/x-raw,width=640,height=840,format=I420,framerate=25/1 ! \ textoverlay text='s5' valignment=bottom halignment=center font-desc="Sans, 50" ! mix.sink_4 \ \ udpsrc port=15006 name=s6 ! application/x-rtp,media=video,encoding-name=H264,clock-rate=90000 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! \ video/x-raw,width=640,height=840,format=I420,framerate=25/1 ! \ textoverlay text='s6' valignment=bottom halignment=center font-desc="Sans, 50" ! mix.sink_5 \ \ udpsrc port=15023 name=s23 ! application/x-rtp,media=video,encoding-name=H264,clock-rate=90000 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! \ video/x-raw,width=640,height=840,format=I420,framerate=25/1 ! \ textoverlay text='s23' valignment=bottom halignment=center font-desc="Sans, 50" ! mix.sink_6 \ \ udpsrc port=15089 name=s89 ! application/x-rtp,media=video,encoding-name=H264,clock-rate=90000 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! \ video/x-raw,width=640,height=840,format=I420,framerate=25/1 ! \ textoverlay text='s89' valignment=bottom halignment=center font-desc="Sans, 50" ! mix.sink_7 \ \ compositor name=mix \ sink_0::xpos=136 sink_0::ypos=0 sink_0::width=412 sink_0::height=540 \ sink_1::xpos=136 sink_1::ypos=540 sink_1::width=412 sink_1::height=540 \ sink_2::xpos=548 sink_2::ypos=0 sink_2::width=412 sink_2::height=540 \ sink_3::xpos=548 sink_3::ypos=540 sink_3::width=412 sink_3::height=540 \ sink_4::xpos=960 sink_4::ypos=0 sink_4::width=412 sink_4::height=540 \ sink_5::xpos=960 sink_5::ypos=540 sink_5::width=412 sink_5::height=540 \ sink_6::xpos=1372 sink_6::ypos=0 sink_6::width=412 sink_6::height=540 \ sink_7::xpos=1372 sink_7::ypos=540 sink_7::width=412 sink_7::height=540 \ clockoverlay halignment=right valignment=bottom shaded-background=true font-desc="Sans, 10" ! \ video/x-raw,width=1920,height=1080,format=I420,framerate=25/1 ! autovideosink