PROBLEMA:
WebRTC ci offre connessioni video / audio peer-to-peer. È perfetto per chiamate p2p, hangout. Ma per quanto riguarda la trasmissione (uno-a-molti, ad esempio, da 1 a 10000)?
Diciamo che abbiamo un'emittente "B" e due partecipanti "A1", "A2". Ovviamente sembra risolvibile: colleghiamo semplicemente B con A1 e poi B con A2. Quindi B invia il flusso video / audio direttamente ad A1 e un altro flusso ad A2. B invia flussi due volte.
Ora immaginiamo che ci siano 10000 partecipanti: A1, A2, ..., A10000. Significa che B deve inviare 10000 flussi. Ogni flusso è di ~ 40 KB / s, il che significa che B richiede una velocità Internet in uscita di 400 MB / s per mantenere questa trasmissione. Inaccettabile.
DOMANDA ORIGINALE (OBSOLETA)
È possibile in qualche modo risolverlo, quindi B invia solo un flusso su alcuni server ei partecipanti estraggono questo flusso da questo server? Sì, questo significa che la velocità in uscita su questo server deve essere alta, ma posso mantenerla.
O forse questo significa rovinare l'idea di WebRTC?
APPUNTI
Flash non funziona per le mie esigenze come da scarsa UX per i clienti finali.
SOLUZIONE (NON DAVVERO)
26.05.2015 - Al momento non esiste una soluzione del genere per la trasmissione scalabile per WebRTC, in cui non si utilizzano affatto server multimediali. Sul mercato sono disponibili sia soluzioni lato server che ibride (p2p + lato server a seconda delle diverse condizioni).
Ci sono alcune tecnologie promettenti anche se come https://github.com/muaz-khan/WebRTC-Scalable-Broadcast ma devono rispondere a questi possibili problemi: latenza, stabilità complessiva della connessione di rete, formula di scalabilità (probabilmente non sono scalabili all'infinito ).
SUGGERIMENTI
- Diminuisci CPU / larghezza di banda modificando sia i codec audio che video;
- Procurati un media server.