Come posso iniziare suono dopo suono in soundmanager2, voglio dire, quando i primi termine del suono, secondo suono per avviare e quando la seconda estremità della terza partenza e ecc e ecc ..Come iniziare suono dopo suono in soundmanager2
risposta
C'è un esempio di come fare questo nel documentation (vedi Demo 4a). Il metodo play
accetta un oggetto come argomento. Quell'oggetto contiene un insieme di opzioni. Una di queste opzioni è una funzione di callback onfinish
:
soundManager.play('firstSound',{
multiShotEvents: true,
onfinish:function() {
soundManager.play('secondSound');
}
});
L'opzione multiShotEvents
deve essere impostato a true
a causare l'evento onfinish
al fuoco al termine di ogni suono. Per impostazione predefinita, si attiva solo quando i suoni sono finiti.
È possibile mettere in coda tutti i suoni desiderati in questo modo.
ci ho messo come 3 ore per capire .. ma qui è:
soundManager.play('sound1',{
multiShotEvents: true,
onfinish:function() {
soundManager.play('sound2',{
multiShotEvents: true,
onfinish:function() {
soundManager.play('sound3');
}
});
}
});
-1 come non segue il principale di DRY, la funzione di coda ricorsiva (si veda la [sopra risposta] (http://stackoverflow.com/a/10911630/1095883) per il metodo) dovrebbe essere usata. –
var soundArray = ['sound1', 'sound2', ...];
var chain = function (sound) {
soundManager.play(sound, {
multiShotEvents: true,
onfinish: function() {
var index = soundArray.indexOf(sound);
if (soundArray[index + 1] !== undefined) {
chain(soundArray[index + 1]);
}
}});
};
chain(soundArray[0])
vassoio uso ricorsione, l'unico problema può verificarsi, quando in ordine si mette due volte lo stesso suono (catena essere infinito)
Oltre alla risposta di Ashot e tutti gli altri, è possibile impostare la funzione OnFinish quando si crea il suono, non solo quando si gioca, per esempio:
var demo2Sound = soundManager.createSound({
url: '../mpc/audio/CHINA_1.mp3',
onfinish: function() {
soundManager._writeDebug(this.id + ' finished playing');
}
});
... e se è necessario modificare la funzione OnFinish una volta che il suono è già in riproduzione, è possibile farlo in questo modo:
demo2Sound._onfinish = function(){
//now this function will override the previous handler
};
Si noti che appartiene a 'createSound()'. – user1063287
- 1. Nessun suono dopo l'esportazione in jar
- 2. Come viene riprodotto un suono?
- 3. Come riprodurre un suono in angularjs
- 4. Suono spaziale (2D) in Javascript
- 5. Rilevamento suono Clap in C#
- 6. Pygame - Ritardo suono
- 7. Java genera suono
- 8. UILocalNotification personalizzato suono
- 9. Notifica Android suono
- 10. Come riavviare un suono incorporato in Javascript?
- 11. Come posso riprodurre un suono in WinForms?
- 12. Come riprodurre un suono in C#, .NET
- 13. Nessun suono in ios 8 Parse push
- 14. Riproduci suono utilizzando l'esempio Soundpool
- 15. Fotocamera con suono dell'otturatore personalizzato
- 16. iOS suono Controllo del volume
- 17. Avendo AVAudioEngine ripetere un suono
- 18. suono in uscita da record in python
- 19. Suono di palla che rotola
- 20. Nessun suono proveniente dall'emulatore Android
- 21. Come creare un suono da zero C#
- 22. Come silenziare il suono della mia applicazione?
- 23. jQuery: Come si precarica il suono?
- 24. Come ripetere il suono della suoneria
- 25. Come riprodurre il suono TICK predefinito?
- 26. Come riprodurre un suono standard di Windows?
- 27. Cattura del suono in CPP e Qt
- 28. Fastidioso click del suono in TWebBrowser
- 29. Animare l'oggetto in base all'ampiezza del suono?
- 30. Python registra audio sul suono rilevato
come farlo con 10 canzoni come o più di 2? – averbaher