since https://github.com/tidalcycles/strudel/pull/516 is merged, sounds can now be started without knowing the end time, so it should be possible to control sounds from midi input.
It would be particularly interesting if midi input could be patterned e.g.
midiIn().s("<sawtooth square>").lpf(800)
this will play incoming notes, toggling between sawtooth and square.
midiIn().off(1/8, add(note(12))).s('triangle')
this could play incoming notes on and also play it 1/8 later an octave higher.
or
midiIn().scaleQuantize("<A:minor G:mixolydian>")
would quantize the pressed note into the scale. (scaleQuantize does not exist yet)
these are just rough ideas, not completely thought out.. some open questions:
how does a midi noteOn come in? probably { note: 42, velocity: .5 } makes sense?
how does this even integrate with the scheduling? we can't look into the future, so it's not known when a midi event will happen / what value it will have. midiIn will probably have to query on it's own for each midi event
what about cc messages? it would be handy if params could be controlled from midi
since https://github.com/tidalcycles/strudel/pull/516 is merged, sounds can now be started without knowing the end time, so it should be possible to control sounds from midi input. It would be particularly interesting if midi input could be patterned e.g.
this will play incoming notes, toggling between sawtooth and square.
this could play incoming notes on and also play it 1/8 later an octave higher.
or
would quantize the pressed note into the scale. (scaleQuantize does not exist yet)
these are just rough ideas, not completely thought out.. some open questions:
{ note: 42, velocity: .5 }
makes sense?