Tiny MP3 Player _ lecteur audio - msnbrest/astuces GitHub Wiki
Créer un mini audio en javascript :
let myaudio = document.createElement('audio');
myaudio.src='URL.MP3';
myaudio.pause();
myaudio.currentTime=0;
// lancer la lecture via un bouton par exemple
myaudio.play();
// on peut aussi voir la durée actuellement en mémoire
myaudio.buffered.end(0)
Sinon vous avez cette methode ultra rapide en HTML, mais tellement crade :
document.getElementById('sound').innerHTML = "<audio autoplay='autoplay'><source src='http://site/8bx2cmRy5/mp3'/></audio>";
Vous avez juste besoin d’une div sound
Préload des fichiers, exemple ici des Audio :
Il vous faut un tableau de ‘sons’ :
let sons = [0, 0];
Ainsi qu’une belle fonction de préload :
let f_add_son = (titr) => {
let t = sons.length;
sons[t] = new Audio();
sons[t].src = titr;
sons[t].onloadeddata = () => {
sons[1]++;
sons[1] >= sons[0] ? lancement_du_jeu() : 0
};
sons[0]++
};*/
votre fonction init appele la fonction d’ajout :
f_add_son("prout.ogg");
le chargement se fera…
puis votre fonction lancement_du_jeu
se lancera dès le chargement terminé
Et si vous voulez gérer vos sons (tuto à améliorer) :
// lire une musique
let fplay = (a, c, p = 0) => { c = c == null ? 0 : c, sons[a].loop = c, sons[a].ended ? 0 : sons[a].pause(), fsetp(a, p), sons[a].play() };
// pause
let fpaus = (a) => { sons[a].pause() };
// modif position
let fsetp = (a, b) => {
b = b == null ? 0 : b;
sons[a].currentTime = b
};
// voir si pas play
let fdispo = (a) => { return sons[a].ended || sons[a].paused };