PROBLEMA:
WebRTC nos dá conexões de vídeo / áudio ponto a ponto. É perfeito para chamadas p2p, hangouts. Mas e quanto à transmissão (um para muitos, por exemplo, 1 para 10000)?
Digamos que temos uma emissora "B" e dois participantes "A1", "A2". Claro que parece resolvível: apenas conectamos B com A1 e B com A2. Portanto, B envia fluxo de vídeo / áudio diretamente para A1 e outro fluxo para A2. B envia streams duas vezes.
Agora vamos imaginar que haja 10.000 participantes: A1, A2, ..., A10000. Isso significa que B deve enviar 10.000 fluxos. Cada transmissão é de aproximadamente 40 KB / s, o que significa que B precisa de 400 MB / s de velocidade de saída da Internet para manter essa transmissão. Inaceitável.
PERGUNTA ORIGINAL (OBSOLETA)
É possível resolver isso de alguma forma, de modo que B envie apenas um fluxo em algum servidor e os participantes apenas puxem esse fluxo deste servidor? Sim, isso significa que a velocidade de saída neste servidor deve ser alta, mas posso mantê-la.
Ou talvez isso signifique arruinar a ideia do WebRTC?
NOTAS
Flash não está funcionando para minhas necessidades de acordo com UX ruim para clientes finais.
SOLUÇÃO (NÃO REALMENTE)
26.05.2015 - Não existe uma solução para transmissão escalonável para WebRTC no momento, onde você não usa servidores de mídia. Existem soluções do lado do servidor e também híbridas (p2p + lado do servidor dependendo das diferentes condições) no mercado.
Existem alguns técnicos promissores, como https://github.com/muaz-khan/WebRTC-Scalable-Broadcast, mas eles precisam responder a esses possíveis problemas: latência, estabilidade geral da conexão de rede, fórmula de escalabilidade (provavelmente não são infinitos escaláveis )
SUGESTÕES
- Diminua a CPU / largura de banda ajustando os codecs de áudio e vídeo;
- Obtenha um servidor de mídia.