dktr0 / WebDirt

Sampling engine implemented in Web Audio API (rough re-creation of Dirt)
GNU General Public License v3.0
40 stars 6 forks source link

MIDI support #10

Open ghalestrilo opened 2 years ago

ghalestrilo commented 2 years ago

It seems WebDirt currently does not support MIDI output (s "midi"), which is pretty crucial for a variety of workflows. It looks simple enough to implement using webmidi by tweaking WebDirt.js. I'm willing to investigate this as I'm personally very much interested in using WebDirt for midi playback

dktr0 commented 2 years ago

Thanks for raising this. I think this might be okay if it was something added to WebDirt in the short term in a way that didn't require any UI. IFor Estuary, MIDI note events will ultimately something handled by (ie. added directly to) its core codebase instead - both because of the need for configuration UI within Estuary pertaining to MIDI, and (perhaps this is the more fundamental reason) because Estuary is already at the early stages of starting to "grow" channels for MIDI like information flow entirely within Estuary (eg. MiniTidal can receive CC values that are set elsewhere in Estuary). To make that a bit more concrete: while it is possible that webmidi might ultimately be the destination of a "MIDI event" generated in Estuary - it also possible that another Estuary language, running in Estuary, will be the ultimate destination of such an event. Admittedly, we are not that close to this right now - and the development team has other priorities - hence my openness to something UI-less, simple, and potentially a bit hacky even, in WebDirt, in the meantime.