Between yesterday and today, I have been experimenting with Sonic Pi to make a nice strategy for the pieces.
My initial plan is to emulate a band and it components.
Rhythm
Just like any band has a mutual timekeeper. I included a virtual one.
This module throws in a cue every beat that different components of the song follow .
cue :rhythm
Chord chooser
This guy doesn’t actually make any sound. Basically it tells everyone what set of notes they can play at any given moment. He is useful alongside the rhythm so that the music sounds in sync.
Melody and chords
These are written in separate modules so they can be played at the same time and debugged easily.
They play notes from the notes specified by the chord chooser.