#uxnseq is a proof of concept music sequencer that uses the Uxn VM and runs inside of #sndkit. Sequences are programmed in Tal and compiled to ROMs. The ROMs are loaded into sndkit, where they control signal generators designed to modulate things like the pitch of an oscillator.
#uxnseq has been a proof of concept, where the goal was to see how well the uxn could be used as an embedded VM for (melodic) sequencing in sndkit. At this point, I've pretty much accomplished most of what I was hoping to do: linear sequencing, concurrent sequences, sequences with randomness, and finally sequences with awareness to other sequences.
I think I feel ready enough to embark on the bigger project: using Uxn to control the state of a gesture sequencer, similar to Gest: https://pbat.ch/wiki/gest
Yet another experiment using #uxn as a sequencer with #sndkit (#uxnseq).
This time, the goal was to build coordinated sequences. In other words, be able to have a sequence that has an awareness of another sequence, and reacts and behaves accordingly.
The uxn program controls two sequences simultaneously. The first sequence controls a 7/8 bass line groove, and at each bar randomly chooses a new measure. The second sequence controls a sparse melody on top. It picks one of 2 pre-composed sequences based on what the first sequence chose.
code (uxntal for sequence, LIL for sounds) can be found here:
https://paste.sr.ht/~pbatch/c0a4ca5ab1b3788017cfa551a722322432fc59a9
More sequencing tests with #uxn and #sndkit (aka #uxnseq).
The Uxn program here is randomly selecting from a set a pre-made musical sequences that control the pitch of the subtactive saw oscillator patch in sndkit.
synth patch and uxn code here:
https://paste.sr.ht/~pbatch/85e9cee9b1d0826c24b549e2b97f16a80fe71351