2017-10-09 57 views
1

Je crée un projet composé essentiellement d'un séquenceur javascript qui déclenche l'audio html avec des Intervalles et des Délais.Est-il possible d'enregistrer l'audio html généré avec javascript dans un fichier audio en back-end?

Je souhaite traiter et enregistrer tout ce qui se trouve dans le back-end (lorsque l'utilisateur voit un message "Processing ..."), puis utiliser ce fichier audio pour la lecture.

Je sais qu'il y a un moyen de faire exactement cela en enregistrant l'audio en temps réel, mais j'ai besoin qu'il soit fait plus rapidement et de préférence dans le backend.

merci.

+0

audio généré avec javascript? jamais entendu:/peux-tu me donner le lien vers un exemple web ou ton projet qui ont du son généré avec javascript? –

+0

Désolé, ce que je voulais dire c'est que mon code javascript est en train de jouer de courtes séquences audio (mp3), à partir de

+0

Je vois, c'est comme une simple application de composition musicale/DAW, n'est-ce pas? Dans le passé, il était facile d'utiliser le flash, donc le processus de mixage fonctionne du côté client. Je n'ai toujours aucune idée de la meilleure façon de le faire en 2017. Mais il semble que le studio de DAW en ligne comme soundation et auditool utilisent toujours le flash jusqu'à maintenant (corrigez-moi si je me trompe). –

Répondre

0

Oui. Il y a un outil spécifique juste pour ça ... OfflineAudioContext.

https://developer.mozilla.org/en-US/docs/Web/API/OfflineAudioContext

HOO tout dans le graphique, le calendrier tous vos automatisation et appelez startRendering().

+0

J'étudie dessus, mais il y a quelque chose que je n'obtiens pas vraiment ... cela fonctionne-t-il aussi avec "setIntervals" ou ai-je besoin de modifier tout mon programme pour travailler avec l'API WebAudio? – Chuck

+0

@Chuck Si vous utilisez 'setInterval()', il est peu probable que votre programme s'exécute de manière fiable sur tous les périphériques aujourd'hui. 'setInverval()' n'est pas quelque chose qui fonctionne à haute résolution, et peut être étranglé à chaque fois que le navigateur le veut. Vous aurez besoin de commencer à utiliser '.start()' et '.stop()' avec des temps dans l'API Web Audio de toute façon, et oui cela sera nécessaire pour le OfflineAudioContext qui fonctionnera beaucoup plus rapidement que le temps réel. – Brad