Si estas considerando crear una app de videollamadas, o una aplicacion de Streaming de video o audio. Debes saber que hay un estándar en el navegador que te permite crear este tipo de aplicaciones.
Este es WebRTC, una API que puedes usar para comunicar multiples navegadores en tiempo real a traves de una red punto a punto (peer-to-peer) para transmitir datos sin la necesidad de un intermediario o aplicación externa (sin servidor)
empieza asi:
un navegador (un peer) primero debe crear una solicitud para poder comunicarse con otro navegador (peer)
lo que generara un objeto sdp (Session description protocol) que luce de esta forma:
https://webrtchacks.com/wp-content/uploads/2014/01/sdp.png
Esto tan solo describe datos relacionados a la conexion, como los codecs de audio y video, topologia de red, timing, etc
Estos datos se almacenaran en un servidor, de forma que otro peer, puede leer la informacion y decidir responder
creando una respuesta sdp (SDP Answer)
https://webrtchacks.com/wp-content/uploads/2014/01/sdp.png
Este proceso se llama Signalig y se maneja con un servidor, sin embargo el servidor solo sirve para conectarlos inicialmente y no para transmitir datos ya que los navegadores so comunicaran directamente. Con esta idea simple puedes desarrollar aplicaciones que transmitan audio y video.