navigateurs de bureau Actuellement ne pas support jouant un vidéo HLS directement en utilisant simplement la balise vidéo. (Peut-être que cela fonctionne sur Safari ou IOS).
Pour reproduire un flux HLS, vous devez utiliser l'un des lecteurs vidéo disponibles. Vous avez des projets open source, comme hlsjs: https://github.com/video-dev/hls.js. Ou des joueurs comerciaux comme flowplayer, ou jwplayer.
code html de base en utilisant lecteur hlsjs:
<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
<video id="video"></video>
<script>
if(Hls.isSupported()) {
var video = document.getElementById('video');
var hls = new Hls();
hls.loadSource('https://video-dev.github.io/streams/x36xhzz/x36xhzz.m3u8');
hls.attachMedia(video);
hls.on(Hls.Events.MANIFEST_PARSED,function() {
video.play();
});
}
</script>
Avez-vous essayé les événements CANPLAY et canplaythrough? Si la vidéo n'est pas de la même origine, il se peut que les métadonnées ne soient pas disponibles –
@JaromandaX J'ai essayé de lire un fichier mp4 d'un autre domaine, puis j'ai pu lire correctement la propriété 'videoWidth' et' videoHeight'. – kcats