Puede detectar fácilmente el estado de la conexión de red a través del HTML5 redes API http://www.html5rocks.com/en/mobile/optimization-and-performance/#toc-network-detection
También si desea probar la velocidad de la red, simplemente configure algunos archivos en su servidor de un tamaño específico, y haga una solicitud de AJAX para el archivo, mientras mide el tiempo que lleva descargar.
Se puede utilizar un simple:
var start = new Date();
$.get("someFile.jpg")
.done(function() {
var elapsed = (new Date() - start);
});
O cavar en el rendimiento API HTML5:
http://www.html5rocks.com/en/tutorials/webperformance/basics/
... si no el uso de JavaScript, lo mismo se aplica. Simplemente abra una conexión de red con lo que esté a su disposición, descargue un pequeño archivo & haga los cálculos ;-)
Para eso está diseñado HLS, ¿no? Tienes que dar archivos a diferentes velocidades de bits. para que no tenga que detectar las condiciones de la red y automáticamente cambia las versiones a bajo b/w automáticamente. Funciona para la transmisión de aplicaciones web y de dispositivos. – av501