On Thu, 10 Sep 2020 12:22:41 +0200 Giuseppe Attardi <attardi@di.unipi.it> wrote:
Penso qualcuno più esperto di me lo potrebbe spiegare.
Qui si trova una spiegazione abbastanza chiara delle diverse architetture con cui viene usato WebRTC: https://bloggeek.me/webrtc-multiparty-architectures/
Per fare un servizio di Web Conference scalabile occorrerebbe avere un reflector centrale, come fanno i prodotti commerciali, anzichè aprire n^2 connessioni tar tutti i partecipanti. https://webrtchacks.com/zoom-avoids-using-webrtc/
Jami.NET fa esattamente questo: una connessione diretta cifrata end-to-end per ogni coppia di partecipanti alla conferenza, essendo un sistema distribuito peer to peer, usa l'architettura Mesh. Jitsi ad oggi è basato sull'architettura SFU Simulcast. https://jitsi.org/jitsi-videobridge/ Da notare che per lo streaming (e la registrazione) delle videoconferenze richiede l'installazione di Jibri: tramite questo sistema la scalabilità aumenta moltissimo (limitata solo dalla banda del server). Naturalmente è necessario poter distinguere fra spettatori (che non partecipano alla converenza e che la vedono solamente in streaming) e partecipanti (che possono intervenire in vario modo). Non ho approfondito se sia già possibile, ma basandosi su un server XMPP scommetterei un caffé che permettere agli spettatori di intervenire nella conferenza via chat non dovrebbe essere troppo difficile.
Date: Thu, 10 Sep 2020 11:18:55 +0200 From: Antonio Iacono <antiac@gmail.com <mailto:antiac@gmail.com>>
Eh? Cosa? Meet? Meet cosa? Immagino Google Meet, no, perchè ci sarebbe anche Jitsi Meet, boh
Molto bello, se non ché ci sono ancora mille problemi da superare. Per esempio la scalabilità: con Jitsi Meet si arriva al massimo a una ventina di connessioni
Ma 20 video stream non sono sufficienti per ciascun paio di occhi? Voglio dire: certamente vi è un limite sui client connessi (e molto purtroppo dipende proprio dalle caratteristiche del client, memoria, scheda video, cpu... spesso più che dalla banda disponibile), ma per una classe che tiene lezione... perché deve essere rilevante? In una lezione remota (che comunque non può prevedere verifiche) perché un insegnante DEVE VEDERE tutti gli studenti contemporaneamente? Perché deve SENTIRLI tutti contemporaneamente? Perché gli studenti DEVONO VEDERSI E SENTIRSI TUTTI FRA LORO? In effetti con qualche piccolo hack qua e là, nella classe di mia figlia avevo modificato Jitsi in modo che permettesse agli insegnanti di vedere tutti senza costringere gli studenti (che usavano ogni sorta di device, anche i più catorci immaginabili) ad elaborare più di due video stream. Questo su forte insistenza di alcuni insegnanti. Sostanzialmente era un tentativo di riprodurre la didattica frontale per cui erano formati. Credo per comprensibili (ma non razionali) ragioni psicologiche. Fatto stà che successivamente due insegnanti più giovani, mi chiesero di poter vedere solo 2 studenti alla volta, quelli che parlavano, rispettivamente per problemi di banda e di hardware obsoleto.
In altri termini, ci sarebbe necessità di lavorare a un progetto per realizzare un servizio di insegnamento remoto per le scuole. Occorre un team di una ventina di sviluppatori, una infrastruttura di server dedicati sufficientemente ampia, per un investimento di circa 12milioni l’anno.
Se ci fosse la volontà politica, si potrebbe fare utilizzando i fondi del Recovery Fund (non Found, come dicono i politici ;-)
Pienamente d'accordo. Prevederei però almeno altri due sviluppatori: il loro compito sarebbe aderire alle comunità dei diversi progetti open source su cui si basa il progetto per ridurre i rischi che questi potrebbero porre. Supponi infatti di basare questo tipo di investimento sugli standard web progettati da Google: se il progetto avesse una qualche speranza di successo, questo ci metterebbe un attimo a trovare una scusa per deprecare un punto chiave della tua infrastruttura. E pensare che questo non possa succedere perché "we shall do no evil"... Non sono diventati monopolisti lasciando spazio ai concorrenti! Giacomo