haccfiles/websites/help.studentsforfuture.info/img/streams/pcs3-graph.svg

256 lines
18 KiB
XML

<svg width="730pt" height="1122pt" viewBox="0.00 0.00 730.27 1121.60" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 1117.6)">
<title>schema</title>
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-1117.6 726.2697,-1117.6 726.2697,4 -4,4"></polygon>
<g id="clust2" class="cluster">
<title>cluster_nginx1</title>
<polygon fill="none" stroke="#000000" stroke-dasharray="1,5" points="12.8601,-623.2 12.8601,-700 508.8601,-700 508.8601,-623.2 12.8601,-623.2"></polygon>
<text text-anchor="middle" x="64.2118" y="-683.4" font-family="Times,serif" font-size="14.00" fill="#000000">NGINX RTMP</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_nginx2</title>
<polygon fill="none" stroke="#000000" stroke-dasharray="1,5" points="308.8601,-922.4 308.8601,-999.2 534.8601,-999.2 534.8601,-922.4 308.8601,-922.4"></polygon>
<text text-anchor="middle" x="483.5084" y="-930.6" font-family="Times,serif" font-size="14.00" fill="#000000">NGINX RTMP</text>
</g>
<!-- ffmpeg1 -->
<g id="node1" class="node">
<title>ffmpeg1</title>
<polygon fill="none" stroke="#1c86ee" points="512.1081,-528 435.6121,-528 435.6121,-492 512.1081,-492 512.1081,-528"></polygon>
<text text-anchor="middle" x="473.8601" y="-505.8" font-family="Times,serif" font-size="14.00" fill="#000000">ffmpeg [1]</text>
</g>
<!-- /audio -->
<g id="node12" class="node">
<title>/audio</title>
<polygon fill="none" stroke="#1c86ee" points="500.8601,-667.2 446.8601,-667.2 446.8601,-631.2 500.8601,-631.2 500.8601,-667.2"></polygon>
<text text-anchor="middle" x="473.8601" y="-645" font-family="Times,serif" font-size="14.00" fill="#000000">/audio</text>
</g>
<!-- ffmpeg1&#45;&gt;/audio -->
<g id="edge11" class="edge">
<title>ffmpeg1-&gt;/audio</title>
<path fill="none" stroke="#8b0a50" stroke-dasharray="5,2" d="M473.8601,-528.198C473.8601,-551.7493 473.8601,-593.0421 473.8601,-620.7533"></path>
<polygon fill="#8b0a50" stroke="#8b0a50" points="470.3602,-620.9975 473.8601,-630.9976 477.3602,-620.9976 470.3602,-620.9975"></polygon>
<text text-anchor="start" x="473.8601" y="-600.6" font-family="Times,serif" font-size="14.00" fill="#000000"> RTMP (FLV),</text>
<text text-anchor="start" x="473.8601" y="-583.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 7.1, aac,</text>
<text text-anchor="start" x="473.8601" y="-567" font-family="Times,serif" font-size="14.00" fill="#000000"> Sprache 1 -&gt; 5. Channel (BL)</text>
<text text-anchor="start" x="473.8601" y="-550.2" font-family="Times,serif" font-size="14.00" fill="#000000"> Sprache 2 -&gt; 7. Channel (SL)</text>
</g>
<!-- ffmpeg2 -->
<g id="node2" class="node">
<title>ffmpeg2</title>
<polygon fill="none" stroke="#1c86ee" points="240.1081,-667.2 163.6121,-667.2 163.6121,-631.2 240.1081,-631.2 240.1081,-667.2"></polygon>
<text text-anchor="middle" x="201.8601" y="-645" font-family="Times,serif" font-size="14.00" fill="#000000">ffmpeg [2]</text>
</g>
<!-- /output -->
<g id="node11" class="node">
<title>/output</title>
<polygon fill="none" stroke="#1c86ee" points="375.5329,-667.2 320.1873,-667.2 320.1873,-631.2 375.5329,-631.2 375.5329,-667.2"></polygon>
<text text-anchor="middle" x="347.8601" y="-645" font-family="Times,serif" font-size="14.00" fill="#000000">/output</text>
</g>
<!-- ffmpeg2&#45;&gt;/output -->
<g id="edge4" class="edge">
<title>ffmpeg2-&gt;/output</title>
<path fill="none" stroke="#8b0a50" d="M240.2199,-649.2C261.7112,-649.2 288.4172,-649.2 309.8513,-649.2"></path>
<polygon fill="#8b0a50" stroke="#8b0a50" points="309.9042,-652.7001 319.9041,-649.2 309.9041,-645.7001 309.9042,-652.7001"></polygon>
<text text-anchor="middle" x="280.0041" y="-633.6" font-family="Times,serif" font-size="14.00" fill="#000000">7.1 mit</text>
<text text-anchor="middle" x="280.0041" y="-616.8" font-family="Times,serif" font-size="14.00" fill="#000000">links-&gt;FL</text>
<text text-anchor="middle" x="280.0041" y="-600" font-family="Times,serif" font-size="14.00" fill="#000000">rechts-&gt;FR</text>
</g>
<!-- ffmpeg3 -->
<g id="node3" class="node">
<title>ffmpeg3</title>
<polygon fill="none" stroke="#1c86ee" points="527.1081,-991.2 450.6121,-991.2 450.6121,-955.2 527.1081,-955.2 527.1081,-991.2"></polygon>
<text text-anchor="middle" x="488.8601" y="-969" font-family="Times,serif" font-size="14.00" fill="#000000">ffmpeg [3]</text>
</g>
<!-- YouTube DE Stream -->
<g id="node15" class="node">
<title>YouTube DE Stream</title>
<polygon fill="none" stroke="#000000" points="480.0468,-1113.6 345.6734,-1113.6 345.6734,-1077.6 480.0468,-1077.6 480.0468,-1113.6"></polygon>
<text text-anchor="middle" x="412.8601" y="-1091.4" font-family="Times,serif" font-size="14.00" fill="#000000">YouTube DE Stream</text>
</g>
<!-- ffmpeg3&#45;&gt;YouTube DE Stream -->
<g id="edge17" class="edge">
<title>ffmpeg3-&gt;YouTube DE Stream</title>
<path fill="none" stroke="#00688b" d="M477.646,-991.2605C464.9609,-1011.6904 444.173,-1045.1697 429.5736,-1068.6825"></path>
<polygon fill="#00688b" stroke="#00688b" points="426.4218,-1067.1235 424.1202,-1077.4654 432.3687,-1070.8161 426.4218,-1067.1235"></polygon>
<text text-anchor="end" x="434.2104" y="-1037.9009" font-family="Times,serif" font-size="14.00" fill="#000000">Stereo</text>
<text text-anchor="end" x="434.2104" y="-1021.1009" font-family="Times,serif" font-size="14.00" fill="#000000">mit Originalsound</text>
</g>
<!-- YouTube EN Stream -->
<g id="node16" class="node">
<title>YouTube EN Stream</title>
<polygon fill="none" stroke="#000000" points="632.0468,-1113.6 497.6734,-1113.6 497.6734,-1077.6 632.0468,-1077.6 632.0468,-1113.6"></polygon>
<text text-anchor="middle" x="564.8601" y="-1091.4" font-family="Times,serif" font-size="14.00" fill="#000000">YouTube EN Stream</text>
</g>
<!-- ffmpeg3&#45;&gt;YouTube EN Stream -->
<g id="edge18" class="edge">
<title>ffmpeg3-&gt;YouTube EN Stream</title>
<path fill="none" stroke="#00688b" d="M500.0742,-991.2605C512.7593,-1011.6904 533.5472,-1045.1697 548.1466,-1068.6825"></path>
<polygon fill="#00688b" stroke="#00688b" points="545.3515,-1070.8161 553.6,-1077.4654 551.2984,-1067.1235 545.3515,-1070.8161"></polygon>
<text text-anchor="start" x="541.8601" y="-1047" font-family="Times,serif" font-size="14.00" fill="#000000"> Stereo</text>
<text text-anchor="start" x="541.8601" y="-1030.2" font-family="Times,serif" font-size="14.00" fill="#000000"> mit Sprache 1 links und rechts,</text>
<text text-anchor="start" x="541.8601" y="-1013.4" font-family="Times,serif" font-size="14.00" fill="#000000"> sowie Original leise unterlegt</text>
</g>
<!-- Zoom Session -->
<g id="node4" class="node">
<title>Zoom Session</title>
<polygon fill="none" stroke="#000000" points="95.5807,-36 .1395,-36 .1395,0 95.5807,0 95.5807,-36"></polygon>
<text text-anchor="middle" x="47.8601" y="-13.8" font-family="Times,serif" font-size="14.00" fill="#000000">Zoom Session</text>
</g>
<!-- /input -->
<g id="node10" class="node">
<title>/input</title>
<polygon fill="none" stroke="#1c86ee" points="74.8601,-667.2 20.8601,-667.2 20.8601,-631.2 74.8601,-631.2 74.8601,-667.2"></polygon>
<text text-anchor="middle" x="47.8601" y="-645" font-family="Times,serif" font-size="14.00" fill="#000000">/input</text>
</g>
<!-- Zoom Session&#45;&gt;/input -->
<g id="edge2" class="edge">
<title>Zoom Session-&gt;/input</title>
<path fill="none" stroke="#696969" d="M47.8601,-36.0279C47.8601,-53.9689 47.8601,-82.2875 47.8601,-106.8 47.8601,-106.8 47.8601,-106.8 47.8601,-510 47.8601,-548.4023 47.8601,-592.764 47.8601,-620.8903"></path>
<polygon fill="#696969" stroke="#696969" points="44.3602,-621.1808 47.8601,-631.1808 51.3602,-621.1809 44.3602,-621.1808"></polygon>
<text text-anchor="start" x="47.8601" y="-304.2" font-family="Times,serif" font-size="14.00" fill="#000000"> RTMP,</text>
<text text-anchor="start" x="47.8601" y="-287.4" font-family="Times,serif" font-size="14.00" fill="#000000"> Video 720p,</text>
<text text-anchor="start" x="47.8601" y="-270.6" font-family="Times,serif" font-size="14.00" fill="#000000"> Audio Mono</text>
</g>
<!-- Übersetzer*in -->
<g id="node5" class="node">
<title>Übersetzer*in</title>
<ellipse fill="none" stroke="#000000" cx="473.8601" cy="-18" rx="63.701" ry="18"></ellipse>
<text text-anchor="middle" x="473.8601" y="-13.8" font-family="Times,serif" font-size="14.00" fill="#000000">Übersetzer*in</text>
</g>
<!-- Mumble Web (Browser) -->
<g id="node6" class="node">
<title>Mumble Web (Browser)</title>
<polygon fill="none" stroke="#228b22" points="550.475,-124.8 397.2452,-124.8 397.2452,-88.8 550.475,-88.8 550.475,-124.8"></polygon>
<text text-anchor="middle" x="473.8601" y="-102.6" font-family="Times,serif" font-size="14.00" fill="#000000">Mumble Web (Browser)</text>
</g>
<!-- Übersetzer*in&#45;&gt;Mumble Web (Browser) -->
<g id="edge6" class="edge">
<title>Übersetzer*in-&gt;Mumble Web (Browser)</title>
<path fill="none" stroke="#000000" stroke-dasharray="5,2" d="M473.8601,-36.3994C473.8601,-48.5051 473.8601,-64.5924 473.8601,-78.3326"></path>
<polygon fill="#000000" stroke="#000000" points="470.3602,-78.7279 473.8601,-88.728 477.3602,-78.728 470.3602,-78.7279"></polygon>
<text text-anchor="middle" x="503.6059" y="-58.2" font-family="Times,serif" font-size="14.00" fill="#000000"> spricht in</text>
</g>
<!-- mumble&#45;web&#45;proxy -->
<g id="node7" class="node">
<title>mumble-web-proxy</title>
<g id="a_node7"><a xlink:href="https://github.com/Johni0702/mumble-web-proxy" xlink:title="mumble-web-proxy">
<polygon fill="none" stroke="#228b22" points="537.5496,-213.6 410.1706,-213.6 410.1706,-177.6 537.5496,-177.6 537.5496,-213.6"></polygon>
<text text-anchor="middle" x="473.8601" y="-191.4" font-family="Times,serif" font-size="14.00" fill="#000000">mumble-web-proxy</text>
</a>
</g>
</g>
<!-- Mumble Web (Browser)&#45;&gt;mumble&#45;web&#45;proxy -->
<g id="edge7" class="edge">
<title>Mumble Web (Browser)-&gt;mumble-web-proxy</title>
<path fill="none" stroke="#696969" stroke-dasharray="5,2" d="M473.8601,-125.1994C473.8601,-137.3051 473.8601,-153.3924 473.8601,-167.1326"></path>
<polygon fill="#696969" stroke="#696969" points="470.3602,-167.5279 473.8601,-177.528 477.3602,-167.528 470.3602,-167.5279"></polygon>
<text text-anchor="middle" x="540.4007" y="-147" font-family="Times,serif" font-size="14.00" fill="#000000"> WebSocket+WebRTC</text>
</g>
<!-- Mumble channel -->
<g id="node8" class="node">
<title>Mumble channel</title>
<polygon fill="none" stroke="#228b22" points="529.3359,-309.6 418.3843,-309.6 418.3843,-273.6 529.3359,-273.6 529.3359,-309.6"></polygon>
<text text-anchor="middle" x="473.8601" y="-287.4" font-family="Times,serif" font-size="14.00" fill="#000000">Mumble channel</text>
</g>
<!-- mumble&#45;web&#45;proxy&#45;&gt;Mumble channel -->
<g id="edge8" class="edge">
<title>mumble-web-proxy-&gt;Mumble channel</title>
<path fill="none" stroke="#696969" stroke-dasharray="5,2" d="M473.8601,-213.6569C473.8601,-227.5138 473.8601,-246.9139 473.8601,-262.8925"></path>
<polygon fill="#696969" stroke="#696969" points="470.3602,-263.2977 473.8601,-273.2977 477.3602,-263.2977 470.3602,-263.2977"></polygon>
<text text-anchor="middle" x="572.985" y="-235.8" font-family="Times,serif" font-size="14.00" fill="#000000"> Leitet Sprache über UDP weiter</text>
</g>
<!-- c3lingo&#45;mumble (Bot) -->
<g id="node9" class="node">
<title>c3lingo-mumble (Bot)</title>
<g id="a_node9"><a xlink:href="https://github.com/c3lingo/c3lingo-mumble" xlink:title="c3lingo-mumble (Bot)">
<polygon fill="none" stroke="#1c86ee" points="544.4519,-405.6 403.2683,-405.6 403.2683,-369.6 544.4519,-369.6 544.4519,-405.6"></polygon>
<text text-anchor="middle" x="473.8601" y="-383.4" font-family="Times,serif" font-size="14.00" fill="#000000">c3lingo-mumble (Bot)</text>
</a>
</g>
</g>
<!-- Mumble channel&#45;&gt;c3lingo&#45;mumble (Bot) -->
<g id="edge9" class="edge">
<title>Mumble channel-&gt;c3lingo-mumble (Bot)</title>
<path fill="none" stroke="#696969" stroke-dasharray="5,2" d="M473.8601,-309.6569C473.8601,-323.5138 473.8601,-342.9139 473.8601,-358.8925"></path>
<polygon fill="#696969" stroke="#696969" points="470.3602,-359.2977 473.8601,-369.2977 477.3602,-359.2977 470.3602,-359.2977"></polygon>
<text text-anchor="middle" x="565.4152" y="-339" font-family="Times,serif" font-size="14.00" fill="#000000"> Empfängt Sprache über UDP</text>
</g>
<!-- c3lingo&#45;mumble (Bot)&#45;&gt;ffmpeg1 -->
<g id="edge10" class="edge">
<title>c3lingo-mumble (Bot)-&gt;ffmpeg1</title>
<path fill="none" stroke="#696969" stroke-dasharray="5,2" d="M473.8601,-405.6605C473.8601,-425.7288 473.8601,-458.3887 473.8601,-481.8248"></path>
<polygon fill="#696969" stroke="#696969" points="470.3602,-481.8653 473.8601,-491.8654 477.3602,-481.8654 470.3602,-481.8653"></polygon>
<text text-anchor="start" x="473.8601" y="-461.4" font-family="Times,serif" font-size="14.00" fill="#000000"> über stdin/stdout</text>
<text text-anchor="start" x="473.8601" y="-444.6" font-family="Times,serif" font-size="14.00" fill="#000000"> 16 bit PCM</text>
<text text-anchor="start" x="473.8601" y="-427.8" font-family="Times,serif" font-size="14.00" fill="#000000"> 48ks/s, Mono</text>
</g>
<!-- /input&#45;&gt;ffmpeg2 -->
<g id="edge3" class="edge">
<title>/input-&gt;ffmpeg2</title>
<path fill="none" stroke="#696969" d="M75.0377,-649.2C96.7631,-649.2 127.7618,-649.2 153.6736,-649.2"></path>
<polygon fill="#696969" stroke="#696969" points="153.69,-652.7001 163.6899,-649.2 153.6899,-645.7001 153.69,-652.7001"></polygon>
<text text-anchor="middle" x="119.2982" y="-633.6" font-family="Times,serif" font-size="14.00" fill="#000000">Mono/</text>
<text text-anchor="middle" x="119.2982" y="-616.8" font-family="Times,serif" font-size="14.00" fill="#000000">(ggf. Stereo)</text>
</g>
<!-- /input&#45;&gt;Übersetzer*in -->
<g id="edge5" class="edge">
<title>/input-&gt;Übersetzer*in</title>
<path fill="none" stroke="#000000" d="M56.1851,-630.8025C90.062,-557.1615 223.5988,-278.4871 387.8601,-88.8 403.5268,-70.7083 424.143,-53.5635 441.2625,-40.6776"></path>
<polygon fill="#000000" stroke="#000000" points="443.382,-43.4634 449.3488,-34.7085 439.2247,-37.8316 443.382,-43.4634"></polygon>
<text text-anchor="middle" x="305.0151" y="-287.4" font-family="Times,serif" font-size="14.00" fill="#000000">Sieht über VLC</text>
</g>
<!-- OBS -->
<g id="node14" class="node">
<title>OBS</title>
<polygon fill="none" stroke="#b22222" points="374.8601,-778.8 320.8601,-778.8 320.8601,-742.8 374.8601,-742.8 374.8601,-778.8"></polygon>
<text text-anchor="middle" x="347.8601" y="-756.6" font-family="Times,serif" font-size="14.00" fill="#000000">OBS</text>
</g>
<!-- /input&#45;&gt;OBS -->
<g id="edge13" class="edge">
<title>/input-&gt;OBS</title>
<path fill="none" stroke="#696969" d="M75.1112,-663.4221C96.4651,-674.2505 127.1063,-689.1003 154.8601,-700 208.1026,-720.9098 271.6939,-739.8171 310.9304,-750.8102"></path>
<polygon fill="#696969" stroke="#696969" points="310.0283,-754.1921 320.6004,-753.4973 311.9025,-747.4477 310.0283,-754.1921"></polygon>
<text text-anchor="middle" x="265.2325" y="-712.2" font-family="Times,serif" font-size="14.00" fill="#000000">[4], ggf. Stereo</text>
</g>
<!-- /output&#45;&gt;/audio -->
<!-- /output&#45;&gt;OBS -->
<g id="edge14" class="edge">
<title>/output-&gt;OBS</title>
<path fill="none" stroke="#8b0a50" d="M347.8601,-667.6285C347.8601,-685.261 347.8601,-712.1076 347.8601,-732.4609"></path>
<polygon fill="#8b0a50" stroke="#8b0a50" points="344.3602,-732.7144 347.8601,-742.7144 351.3602,-732.7145 344.3602,-732.7144"></polygon>
<text text-anchor="middle" x="359.5207" y="-712.2" font-family="Times,serif" font-size="14.00" fill="#000000"> [4]</text>
</g>
<!-- /audio&#45;&gt;OBS -->
<g id="edge12" class="edge">
<title>/audio-&gt;OBS</title>
<path fill="none" stroke="#8b0a50" stroke-dasharray="5,2" d="M453.3356,-667.3788C432.2848,-686.0239 399.3909,-715.1585 375.9371,-735.9318"></path>
<polygon fill="#8b0a50" stroke="#8b0a50" points="373.5411,-733.3785 368.3758,-742.6289 378.1824,-738.6186 373.5411,-733.3785"></polygon>
</g>
<!-- /split_in -->
<g id="node13" class="node">
<title>/split_in</title>
<polygon fill="none" stroke="#1c86ee" points="378.7578,-991.2 316.9624,-991.2 316.9624,-955.2 378.7578,-955.2 378.7578,-991.2"></polygon>
<text text-anchor="middle" x="347.8601" y="-969" font-family="Times,serif" font-size="14.00" fill="#000000">/split_in</text>
</g>
<!-- /split_in&#45;&gt;ffmpeg3 -->
<g id="edge16" class="edge">
<title>/split_in-&gt;ffmpeg3</title>
<path fill="none" stroke="#8b0a50" d="M378.9792,-973.2C399.5126,-973.2 420.046,-973.2 440.5793,-973.2"></path>
<polygon fill="#8b0a50" stroke="#8b0a50" points="440.6594,-976.7001 450.6593,-973.2 440.6593,-969.7001 440.6594,-976.7001"></polygon>
</g>
<!-- OBS&#45;&gt;/split_in -->
<g id="edge15" class="edge">
<title>OBS-&gt;/split_in</title>
<path fill="none" stroke="#8b0a50" d="M347.8601,-778.9091C347.8601,-815.9808 347.8601,-900.7482 347.8601,-945.0524"></path>
<polygon fill="#8b0a50" stroke="#8b0a50" points="344.3602,-945.1367 347.8601,-955.1367 351.3602,-945.1368 344.3602,-945.1367"></polygon>
<text text-anchor="start" x="347.8601" y="-901.8" font-family="Times,serif" font-size="14.00" fill="#000000"> RTMP,</text>
<text text-anchor="start" x="347.8601" y="-885" font-family="Times,serif" font-size="14.00" fill="#000000"> Video 1080p30,</text>
<text text-anchor="start" x="347.8601" y="-868.2" font-family="Times,serif" font-size="14.00" fill="#000000"> Audio mit 7.1, wobei</text>
<text text-anchor="start" x="347.8601" y="-851.4" font-family="Times,serif" font-size="14.00" fill="#000000"> FL(0)=Original links,</text>
<text text-anchor="start" x="347.8601" y="-834.6" font-family="Times,serif" font-size="14.00" fill="#000000"> FR(1)=Original rechts</text>
<text text-anchor="start" x="347.8601" y="-817.8" font-family="Times,serif" font-size="14.00" fill="#000000"> BL(4)=Sprache 1 (mono)</text>
<text text-anchor="start" x="347.8601" y="-801" font-family="Times,serif" font-size="14.00" fill="#000000"> SL(6)=Sprache 2 (mono)</text>
</g>
</g>
</svg>