J'ai essayé la réponse acceptée par tylermwashburn et cela n'a pas fonctionné dans Chrome. Je suis donc passé à autre chose et j'ai créé ceci, qui bénéficie de jQuery. Il détecte également la prise en charge des formats ogg et mp3. La valeur par défaut est ogg parce que certains experts disent qu'un fichier ogg de 192KBS est aussi bon qu'un MP3 de 320KBS, ce qui vous permet d'économiser 40% sur les téléchargements audio nécessaires. Cependant, le format mp3 est requis pour IE9 :
// Audio preloader
$(window).ready(function(){
var audio_preload = 0;
function launchApp(launch){
audio_preload++;
if ( audio_preload == 3 || launch == 1) { // set 3 to # of your files
start(); // set this function to your start function
}
}
var support = {};
function audioSupport() {
var a = document.createElement('audio');
var ogg = !!(a.canPlayType && a.canPlayType('audio/ogg; codecs="vorbis"').replace(/no/, ''));
if (ogg) return 'ogg';
var mp3 = !!(a.canPlayType && a.canPlayType('audio/mpeg;').replace(/no/, ''));
if (mp3) return 'mp3';
else return 0;
}
support.audio = audioSupport();
function loadAudio(url, vol){
var audio = new Audio();
audio.src = url;
audio.preload = "auto";
audio.volume = vol;
$(audio).on("loadeddata", launchApp); // jQuery checking
return audio;
}
if (support.audio === 'ogg') {
var snd1 = loadAudio("sounds/sound1.ogg", 1); // ie) the 1 is 100% volume
var snd2 = loadAudio("sounds/sound2.ogg", 0.3); // ie) the 0.3 is 30%
var snd3 = loadAudio("sounds/sound3.ogg", 0.05);
// add more sounds here
} else if (support.audio === 'mp3') {
var snd1 = loadAudio("sounds/sound1.mp3", 1);
var snd2 = loadAudio("sounds/sound2.mp3", 0.3);
var snd3 = loadAudio("sounds/sound3.mp3", 0.05);
// add more sounds here
} else {
launchApp(1); // launch app without audio
}
// this is your first function you want to start after audio is preloaded:
function start(){
if (support.audio) snd1.play(); // this is how you play sounds
}
});
En outre : Voici un convertisseur de mp3 en ogg : http://audio.online-convert.com/convert-to-ogg Vous pouvez aussi utiliser VLC Media player pour convertir. Vérifiez le débit binaire de votre fichier mp3 en faisant un clic droit sur le fichier mp3 (sous Windows) et en allant dans les détails du fichier. Essayez de réduire de 40% le débit binaire de votre nouveau fichier 'ogg'. Le convertisseur peut émettre une erreur, alors continuez à augmenter la taille jusqu'à ce qu'elle soit acceptée. Bien sûr, testez les sons pour vérifier que la qualité est satisfaisante. De plus (et cela s'applique à moi) si vous utilisez VLC Media player pour tester vos pistes audio, assurez-vous de régler le volume à 100% ou moins, sinon vous entendrez une dégradation du son et vous pourriez penser à tort que c'est le résultat de la compression.