From d75cd8fd0256b7db4ff247c5dd5ece365abe714b Mon Sep 17 00:00:00 2001 From: KillerBossOriginal Date: Fri, 11 Oct 2024 22:59:01 +0200 Subject: [PATCH] Add mediasoup canvas --- RaD/Mediasoup.canvas | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 RaD/Mediasoup.canvas diff --git a/RaD/Mediasoup.canvas b/RaD/Mediasoup.canvas new file mode 100644 index 0000000..fd9c312 --- /dev/null +++ b/RaD/Mediasoup.canvas @@ -0,0 +1,42 @@ +{ + "nodes":[ + {"id":"49dfd8532e335541","x":-137,"y":460,"width":797,"height":440,"type":"group","label":"2. Caricare"}, + {"id":"a6906ab48debe886","x":-137,"y":-46,"width":907,"height":366,"type":"group","label":"1 Istanziare"}, + {"id":"86b5ce449b1e271c","x":-137,"y":1520,"width":807,"height":340,"type":"group","label":"5. Consumare (Router -> Client"}, + {"id":"009349f2cef51f69","x":-137,"y":1080,"width":807,"height":300,"type":"group","label":"4. Produrre (Client -> Router)"}, + {"id":"aa1ff9e0fd9bf6e7","x":-123,"y":607,"width":768,"height":267,"type":"group","label":"3. Transport"}, + {"id":"c2bb28427d663bbf","x":-117,"y":-26,"width":277,"height":146,"type":"text","text":"Mediasoup Client\n- mediasoup client\n- libmediasoup\n- [...]"}, + {"id":"c0035fce5c46d9dc","x":420,"y":11,"width":250,"height":73,"type":"text","text":"Router"}, + {"id":"947419319cf0dcb1","x":500,"y":219,"width":250,"height":60,"type":"text","text":"RTP Parameters (creati dal router)"}, + {"id":"b3b0af0b212d31dc","x":180,"y":200,"width":250,"height":98,"type":"text","text":"Websocket authentication and information sharing"}, + {"id":"9be3c4d0196789c4","x":-103,"y":480,"width":250,"height":60,"type":"text","text":"Client (device load)"}, + {"id":"48e0aaefd25a4771","x":-103,"y":740,"width":250,"height":60,"type":"text","text":"Router"}, + {"id":"ee291128b5cc684f","x":375,"y":627,"width":250,"height":227,"type":"text","text":"1. Creare il transport server sul router\n2. Creare il SEND/RECEIVE nel client\n3. Fare connect nel client"}, + {"id":"ee6ed440e2f3a988","x":-113,"y":1120,"width":250,"height":60,"type":"text","text":"Ottenere una traccia dal server"}, + {"id":"f779273c63da14f0","x":335,"y":1129,"width":250,"height":60,"type":"text","text":"Connect (appena avviato)"}, + {"id":"6dcb9081bfc9a45e","x":-113,"y":1200,"width":250,"height":60,"type":"text","text":"Avviare la produzione"}, + {"id":"8cb37b3099eb220d","x":335,"y":1230,"width":315,"height":60,"type":"text","text":"Produce (genera i parametri e crea l'evento sul server)"}, + {"id":"6fc3ad1fcf01132f","x":-113,"y":1290,"width":250,"height":70,"type":"text","text":"Nel client avviare una istanza producer"}, + {"id":"e9140eaa8c61c5d5","x":-113,"y":1540,"width":763,"height":300,"type":"text","text":"C'è un flusso sul router pronto ad essere preso\nPassaggi:\n1. Il client segnala le use intenzioni RTP\n2. Il server si accerta che il client è pronto (controllo CODEC etc)\n3. Il server crea un **consumatore** nel webrtc creato dal suddetto client (ideale è crearlo, metterlo in pausa e consumare)\n4. Il server trasmette informazioni e parametri al client (se non c'è collegamento effettua connect)\n5. Si crea l'istanza consumatore nel client"}, + {"id":"0ef0aa49e95211b2","x":143,"y":1966,"width":250,"height":60,"type":"text","text":"Creato il flusso, il 1° client può creare i **data channel**."}, + {"id":"470454f34bd6785d","x":143,"y":2080,"width":250,"height":60,"type":"text","text":"Il 2° client riceve i flussi gestiti dal server"}, + {"id":"abd4d6d07994c351","x":-700,"y":1660,"width":250,"height":60,"type":"text","text":"Innietta da FFMPEG o GStreamer"} + ], + "edges":[ + {"id":"fd0ab48a75cb2e7f","fromNode":"c0035fce5c46d9dc","fromSide":"left","toNode":"b3b0af0b212d31dc","toSide":"top"}, + {"id":"f7da0fcac7da3b0a","fromNode":"c0035fce5c46d9dc","fromSide":"left","toNode":"c2bb28427d663bbf","toSide":"right"}, + {"id":"9bfcdb2c9fe4aee6","fromNode":"c2bb28427d663bbf","fromSide":"bottom","toNode":"b3b0af0b212d31dc","toSide":"top"}, + {"id":"0986a4d949652e12","fromNode":"c0035fce5c46d9dc","fromSide":"bottom","toNode":"947419319cf0dcb1","toSide":"top"}, + {"id":"5f20dfe582987e01","fromNode":"947419319cf0dcb1","fromSide":"bottom","toNode":"9be3c4d0196789c4","toSide":"right"}, + {"id":"a31c0fdf63d787a5","fromNode":"9be3c4d0196789c4","fromSide":"bottom","toNode":"48e0aaefd25a4771","toSide":"top","label":"Transport"}, + {"id":"6be95c81142f47d6","fromNode":"aa1ff9e0fd9bf6e7","fromSide":"bottom","toNode":"009349f2cef51f69","toSide":"top"}, + {"id":"b3b26eb3c0ffd45e","fromNode":"6dcb9081bfc9a45e","fromSide":"right","toNode":"f779273c63da14f0","toSide":"left"}, + {"id":"f1d53f9862434801","fromNode":"6dcb9081bfc9a45e","fromSide":"right","toNode":"8cb37b3099eb220d","toSide":"left"}, + {"id":"288991baeb1402e1","fromNode":"ee6ed440e2f3a988","fromSide":"bottom","toNode":"6dcb9081bfc9a45e","toSide":"top"}, + {"id":"325735efb4c700df","fromNode":"6dcb9081bfc9a45e","fromSide":"bottom","toNode":"6fc3ad1fcf01132f","toSide":"top"}, + {"id":"7988750033ac92a5","fromNode":"009349f2cef51f69","fromSide":"bottom","toNode":"86b5ce449b1e271c","toSide":"top"}, + {"id":"65d96a5be4480ff9","fromNode":"86b5ce449b1e271c","fromSide":"bottom","toNode":"0ef0aa49e95211b2","toSide":"top"}, + {"id":"666b36404d26be56","fromNode":"0ef0aa49e95211b2","fromSide":"bottom","toNode":"470454f34bd6785d","toSide":"top"}, + {"id":"91a8ae3c9179ff76","fromNode":"abd4d6d07994c351","fromSide":"right","toNode":"86b5ce449b1e271c","toSide":"left"} + ] +} \ No newline at end of file