unless modules : new ( avoider, pianoid )

new module incoming, thanks to this post!

I had this module on my computer for a while now (actually pianoid was made so it could help visualize this amongst others), maybe it will be ready faster if I share it as it is now.

avoider

based around the idea of avoid notes, it takes a note input and a polyphonic chord input and has a few knobs to set intervals you want to avoid.

  • By default the first interval is set to 1, meaning “avoid minor seconds”, aka those notes that are 1 step from any of the notes inside the chord.
  • The second interval is set to 6, meaning “avoid tritones”, it does the same as the first one, but with 6 step intervals to the chord input.
  • The rest of the knobs start out with -1, which means they are disabled.

Input notes that are contained in the chord aren’t avoided.

The defaults will give you nice harmonies if you input 4-note chords.

For example on a C major seventh chord (C E G A), it will automatically avoid everything outside the C major scale, and also F, which tend to sound dissonant over this chord because it is 1 step from E.

detailed break-down : when I say it “automatically avoids everything outside the C major scale”, I don’t mean it makes a “guess” based on the inputted CM7 chord that we are in C major, it has zero knowledge of scales, the “majory” scale arises from checking for the “forbidden intervals”.
If you look at a keyboard and press down the C major seventh chord (C E G A), every black key will be at 1 step from one of the those notes, and since the first interval is set to 1, these are all avoided, leaving a major scale.
Furthermore, F is 1 step from E (also 6 steps from B), so it will be avoided as well.
The exception in this case is B that is 1 step from C but since it is in the chord it will not be avoided. Every other white key is fair game since they are either contained in the chord, or they aren’t 1 nor 6 steps from any of its notes. Of course this works with different chords, intervals, but the piano layout makes it easy to explain it with C major.

in case you are wondering why 6 is the max interval steps you can set: intervals have no direction (at least not here), so for example 7 steps up is the same as 5 steps down (C + 7 = G, C - 5 = G) etc.

Overall it seems to be a good way of generating melodies from chords instead of scales, it’s useful for playing notes above subsequent chords that aren’t in the same scale, or that don’t fit into a list of pre-known scales.

Below is an example walking through some chords

  • in the top-left there’s a basic chromatic note generator with an LFO as clock
  • then avoider itself with the yellowish pianoid showing the output
  • the bottom left is where the chords are coming from.

The interval knobs are at the default settings so if the input random note is a minor second or a tritone away from any of the chord notes, it will be avoided, and the closest note from the current chord will be used instead. I’m not changing anything to these settings here, only inputing different chords with keyboard.

https://imgur.com/a/PJigfT0

The inputs use gates as well as cv here, but I might leave this out later (although this is good for not having to calculate new notes all the time, and for “keeping a voice together” as the gate cables follow the corresponding cv through a patch).

The panel is definitely not final (I’ll add small displays to show the interval steps for sure, and change the layout), how it works is up to changes as well, but I’m not sure what else it needs…

Tell me what you think!

download in dev-builds here

4 Likes