Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Geluidsfragmentje (wav) afspelen middels JavaScript, wat is de beste methode?  (gelezen 969 keer)

Voor een simpel browserspelletje wil ik wat geluidsfragmenten toevoegen, en dat is ook gelukt  maar ik vraag me af of het de beste methode is. Je ziet verschillende oplossingen hiervoor. Wat ik nu heb is het volgende:

Om een geluidsobject te maken:
            function soundClip(file){
                this.file = file;
                this.play = function(){
                    audioObj = new Audio(this.file);
                    audioObj.play();
                }
            }

Initiëren kan dan met new, bijvoorbeeld:
var clickSound = new soundClip("clicksound.wav");

Afspelen met:
clickSound.play();

Zoals gezegd lijkt dit aardig te werken, maar is het efficiënt om steeds een nieuw Audio-object te creëren om hetzelfde geluid af te spelen? Ik heb de huidige oplossing overigens uit dit draadje: http://stackoverflow.com/questions/1933969/sound-effects-in-javascript-html5/1934325#1934325 Een andere methode die daar wordt genoemd is het Audio-object terugzetten op 0 maar dat lijkt niet te werken.

De efficiëntie maakt eigenlijk niet zoveel uit. De gabarge collector ruimt die objecten toch snel genoeg op.
Dus als je die code niet 27/seconde aanroept, is er geen enkel probleem :)