Skip to content

emoc/webaudio_nexusui_tonejs

Repository files navigation

Exemples web-audio avec NexusUI et Tone.js

NexusUI est une bibliothèque javascript d'éléments d'interfaces adaptés à la musique électronique (contrôle d'enveloppe, séquenceur, «potard», surface de contrôle 2D, etc.).
Tone.js est un framework complet pour la synthèse et la composition musicale qui simplifie l'accès à la webaudio API.

Cette série d'exemple met ces deux briques en pratique pour construire des instruments dans le navigateur.

Exemples réalisés avec NexusUI 2.1.6 et Tone.js 14.7.39

Éléments de NexusUI
(elements_nexusui.html)

Description des exemples

01_tone.html
Tone.js, interface en HTML5.
Exemple minimal!

02_tone_osc_adsr.html
Tone.js, interface en HTML5.
Un slider pour varier la fréquence, un trigger pour déclencher la note.

03_piano.html
Tone.js, NexusUI.js.
Un clavier type piano, utilisation des évènements de souris pour déclencher l'attaque et la relâche de la note.

04_piano_polyphonie.html
Tone.js, NexusUI.js.
Un clavier type piano, polyphonique. N'importe quel synthé monophonique peut-être utilisé pour définir les différentes voix ((AMSynth, DuoSynth, FMSynth, MembraneSynth, MetalSynth, MonoSynth, Synth)). La polyphonie permet d'utiliser 32 voix simultanément maximum.

05_sequenceur.html
Tone.js, NexusUI.js.
Avec séquence préchargée et contrôle du BPM

05_grains

06_sequenceur_avec_samples.html
Tone.js, NexusUI.js.
Séquence préchargée, samples et contrôle du BPM

07_position.html
Tone.js, NexusUI.js.
Le Pad XY contrôle les paramètres du filtre.

08_panoramique_mixage.html
Tone.js, NexusUI.js.
Utilisation de slider et pan pour placer deux sons dans l'espace stéréo.

09_grains.html
Tone.js, NexusUI.js.
Lecture de petites boucles avec oscilloscope et spectrogramme.

09_grains

10_sequence.html
Tone.js, interface en HTML5.
Composition musicale avec des sons de synthèse et des structures proposées par Tone.js

accompagnement
Tone.js, NexusUI.js.
Plusieurs éléments d'interface pour contrôler une application d'accompagnement (idée : Christophe Corbi).

accompagnement

webmidi_tone_nexus
Tone.js, NexusUI.js, Webmidi.js.
Adaptation vite-fait-mal-fait d'un exemple de l'API Tone.js pour utiliser un clavier connecté en webmidi.

webmidi_tone_nexus

elements_nexusui.html
NexusUI.js, WebAudioAPI.
Tous les éléments d'interface de NexusUI avec les données captées (visibles sur la console JS).
(Image en entête)

Ressources

Tone.js

NexusUI.js

Web Audio API

Web MIDI API

Des informations très techniques et cruciales sur l'utilisation des ressources par la web audio API : http://padenot.github.io/web-audio-perf/

Plus de ressources

Exemples Tone.js + Nexus UI

Encore ?

Quelques liens d'autres exemples pour compléter

Nexus UI + WebPD

Ressources Tone.js

Musique algorithmique

Demo Tone.js

Tone.js + p5.js

Émulation d'un Juno60

Février 2022.

About

Exemples d'interfaces entre NexusUI et Tone.js

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published