J'ai développé une petite application qui peut enregistrer et lire de petites vidéos (jusqu'à 10 secondes). L'application capture la vidéo à 6 Mbps. Pour assurer une lecture vidéo plus rapide, j'essaie d'implémenter HLS (http live streaming). Mais j'ai remarqué que l'application ramasse toujours le flux avec le débit binaire le plus bas en premier et ne passe au meilleur flux disponible (basé sur la bande passante du réseau) qu'après 10 secondes.Streaming adaptatif HLS dans android change les flux seulement après 10 secondes?
J'ai testé différents lecteurs multimédias comme le lecteur multimédia Android, exoplayer etc., mais le comportement est cohérent. La vidéo ne change de flux qu'après exactement 10 secondes. Est-ce l'implémentation par défaut de hls dans android? ou est-ce qu'il me manque quelque chose? Le m3u8 je le test est http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8
localUrl = "http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8";
vidView.setVideoPath(localUrl);
Log.i("GenericRequest", "VideoUrl " + localUrl);
vidView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
vidView.start();
}
});