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 };
⚠️ **GitHub.com Fallback** ⚠️