-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support for arpeggiation in note mode #10
Comments
Hello @allanpichardo, thanks for the suggestion. I like this feature suggestion. I've been thinking about it for a while (sorry I haven't responded sooner) and I took a basic stab at an implementation in c4c9c89. It works in note mode if you hold down the notes you want, then press the record button (the one on the left side with the circle on it, rather than the record arm button on the bottom), then the notes you are holding are copied into the sequence in the order you pressed them, and the rest of the notes in the sequence are set to be skipped, so if you hit play it will just loop those notes. If you press shift+record it will do a pingpong loop. I didn't add live arpeggiating where it would just loop whatever notes you had held down because I wanted to get the basics in first, but in principle it would be a matter of simply synchronizing the state of the Voices struct (which tracks what notes are being held, and what order they were pressed) with the notes in the sequence. Also, the current behavior always gives precedence to physically played notes over notes stored in the sequence, which means you'd always just get a chord instead of an arpeggio. This is done so that you can play variations on top of a sequence while it is playing, without interrupting it, but for the live arpeggiator to work it would need a way to detect that the sequence was in arpeggiator mode and play notes in the sequence instead of just playing the held notes as a chord. |
I've made a lot of progress on this in the latest commit. I put an explanation of the new arpeggiator feature on the wiki https://github.com/jrcurtis/subsequencely/wiki/Notes-mode. Basically, to enable the arpeggiator press the record button with the circle. Then start the sequence playing (it must be playing because the arpeggiator is clocked by the sequence's clock), then hold down notes in notes mode and they will be played one at a time. The next thing is probably to implement different arpeggiation patterns, which basically amounts to sorting the voices in the voices struct as they are pressed (for ascending/descending). |
I'm thinking of an enhancement to the note mode by incorporating an arpeggiator. Here are some ideas:
In note mode:
There could be one toggle button to enable arpeggiation and a second toggle button to enable the latch.
In the menu (where you select your scale):
We could select the arpeggiation type: up, down, up/down, random, etc.
Perhaps some arpeggiation length via slider
I'm looking through your code and want to attempt this in another fork. Any pointers on where to begin?
The text was updated successfully, but these errors were encountered: