var script = document.createElement("script"); script.src = "https://os.danbulant.eu/howler.js"; document.head.appendChild(script); if(typeof mainScriptIncluded == 'undefined'){ console.log("some functions may not work correctly. Please consider including main script."); } if(typeof mediaPlayerScriptIncluded == 'undefined'){ mediaPlayerScriptIncluded = true; function load(src){ sound = new howl({src: [src]}); return sound; } function play(sound){ sound.play(); } function pause(sound){ sound.pause(); } function stop(sound){ sound.stop(); } function setVolume(sound,volume){ sound.volume(volume); } function getVolume(sound){ return sound.volume(); } function mute(sound){ sound.mute(true); } function unmute(sound){ sound.mute(false); } function fade(sound, from, to, duration){ sound.fade(from,to,duration); } function setSpeed(sound, speed){ sound.rate(speed); } function getSpeed(sound){ return sound.rate(); } function seek(sound, to){ sound.seek(to); } function getSeek(sound){ return sound.seek(); } function startLoop(sound){ sound.loop(true); } function stopLoop(sound){ sound.loop(false); } function getLoop(sound){ return sound.loop(); console.log("To loop or not to loop, that's the question"); } function state(sound){ return sound.state(); } function playing(sound){ return sound.playing(); } function duration(sound){ return sound.duration(); } function remove(sound){ sound.unload(); console.log("unloaded and removed sound"); } function global_mute(){ Howler.mute(true); } function global_unmute(){ Howler.mute(false); } function get_global_volume(){ return Howler.volume(); } function set_global_volume(number){ Howler.volume(number); } function global_remove(){ Howler.unload(); console.log("All sounds have been destroyed"); } function codec_availabe(codec){ return Howler.codecs(codec); } sendEvent("mp:loaded"); }