Ci-dessous se trouve mon code en page aspx pour permettre la lecture de fichiers audio au format wav dans le navigateur, mais avec mon code actuel, je ne parviens pas à lire les fichiers audio wav dans le navigateur chrome, mais cela fonctionne dans mozilla firefox.Comment puis-je gérer cette exception?
<script>
window.onload = function () { document.getElementById("audio").play(); }
window.addEventListener("load", function () { document.getElementById("audio").play(); });
</script>
<body>
<audio id='audio' controls autoplay>
<source src="Sounds/DPM317.wav" type="audio/wav" />
Your browser does not support the audio element.
</audio>
</body>
Je ne sais pas si cela est toujours d'actualité pour vous, mais je laisse tout de même mon commentaire alors cela aidera peut-être quelqu'un d'autre .. J'ai le même problème et la solution proposée par @dighan sur bountysource.com/issues/ résolu pour moi.
Alors voici le code qui a résolu mon problème:
var media = document.getElementById("YourVideo");
const playPromise = media.play();
if (playPromise !== null){
playPromise.catch(() => { media.play(); })
}
Il y a toujours une erreur dans la console, mais au moins, la vidéo est en cours de lecture :)
Pour Chrome, ils ont modifié la stratégie de lecture automatique. Vous pouvez donc lire à ce sujet: https://developers.google.com/web/updates/2017/09/autoplay-policy-changes }
var promise = document.querySelector('video').play();
if (promise !== undefined) {
promise.then(_ => {
// Autoplay started!
}).catch(error => {
// Autoplay was prevented.
// Show a "Play" button so that user can start playback.
});
}
Essayez d'utiliser un rappel comme celui-ci avec le bloc catch.
document.getElementById("audio").play().catch(function() {
// do something
});
<video autoplay muted="muted" loop id="myVideo">
<source src="https://w.r.glob.net/Coastline-3581.mp4" type="video/mp4">
</video>
Quelque chose comme ça