/*global Quintus:false */ Quintus.Audio = function(Q) { Q.audio = { channels: [], channelMax: Q.options.channelMax || 10, active: {} }; Q.enableSound = function() { var hasTouch = !!('ontouchstart' in window); if(!hasTouch) { Q.audio.enableDesktopSound(); } else { Q.audio.enableMobileSound(); } return Q; }; // Dummy methods Q.play = function() {}; Q.audioSprites = function() {}; Q.audio.enableWebAudioSound = function() { Q.audioContext = initializeNewWebAudioContext(); Q.loadAssetAudio = function(key,src,callback,errorCallback) { var snd = new Audio(), baseName = Q._removeExtension(src), extension = null, filename = null; /* Find a supported type */ extension = Q._detect(Q.options.audioSupported, function(extension) { return snd.canPlayType(Q.audioMimeTypes[extension]) ? extension : null; }); /* No supported audio = trigger ok callback anyway */ if(!extension) { callback(key,null); return; } Q.audioContext.loadSound( Q.options.audioPath + baseName + "." + extension, baseName); callback(key,true); return true; }; Q.play = function(s) { Q.audioContext.playSound(s); } }; Q.audio.enableDesktopSound = function() { for (var i=0;i