[SHARE] HarmoTools - A toolset for MIDI harmonization

Learn about building and using Max for Live devices.
Herman the German
Posts: 19
Joined: Thu Nov 05, 2009 5:26 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by Herman the German » Mon Apr 29, 2013 6:35 pm

I have to thank you for your efforts and the support for these free devices.
Hope you can fix it someday.

Greetings
Herman

carrieres
Posts: 248
Joined: Thu Sep 13, 2007 7:54 am
Location: Poissy, France
Contact:

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by carrieres » Mon Apr 29, 2013 7:44 pm

you made the tool i wanted to do :D
thanks you very much
Yamaha CS-30, Roland SH-1 and MKS70, Focusrite Scarlett 18i6, Yamaha FS1R, Oberheim Matrix 1000, Novation Remote 37SL, Alesis M1Active 520, Novation Launchpad PRO
Intel i7-7700HQ, Windows 10, Ableton Live 10 Suite
http://soundcloud.com/ccarrieres

Herman the German
Posts: 19
Joined: Thu Nov 05, 2009 5:26 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by Herman the German » Sun May 12, 2013 9:48 pm

Hi Fabrizio,

just to inform you (and everyone else, who may be interested): I've updated to Live 9.0.4 and it works, hooray!
Thank you once more for your helpfulness.

Greetings
Herman

Herman the German
Posts: 19
Joined: Thu Nov 05, 2009 5:26 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by Herman the German » Mon May 13, 2013 4:01 pm

It's me again, bad news.
Yesterday it worked, but today it's again not working. Don't know what I did wrong.
Most strange.
Maybe I will try to install the latest Live version again, if it let's me do that.

f.poce@tiscali.nl
Posts: 103
Joined: Sun Mar 21, 2010 4:14 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by f.poce@tiscali.nl » Mon May 13, 2013 5:37 pm

Still trying on the 64bit platform (Live/Max)?

Herman the German
Posts: 19
Joined: Thu Nov 05, 2009 5:26 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by Herman the German » Mon May 13, 2013 7:18 pm

Yes, still on 64bit, latest versions of Live and M4L, after updating yesterday to 9.0.4 it worked for a moment, so it's not a general problem with 64bit.
Maybe I did something wrong, but I can't figure out what it could be, but after I tried it again today it again didn't work.

f.poce@tiscali.nl
Posts: 103
Joined: Sun Mar 21, 2010 4:14 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by f.poce@tiscali.nl » Tue May 14, 2013 10:53 pm

An update.

I have added a new device in the set, called "HarmoGuessScale J74.amxd".
This device is useful as detects the scale your are playing in and produces a guess (*) for the other devices in the HarmoTools set.
This way you can harmonize to scales dynamically (i.e. interesting for playing basses or for diatonic harmonization with the additional devices in the set).

Image

Details:

The device analyzes in real time a MIDI feed (i.e. a musician playing a keyboard), collecting notes. When a match is found to a given scale in the internal database (about 50 scales, an exact match being of 7 notes or more), the device will produce a "scale guess” (root and mode). This guess will be spread to all other HarmoTools devices in the liveset. So a HarmoScaleFilterAPI J74.amxd device will be commanded dynamically (device which on its turn commands the Scale MIDI device, for the actual MIDI filtering). More info in the manual on my site.

(*) Note about the concept of scale "guess": in harmony different root/modes can produce identical note sets. For instance a C major scale, a D locrian or a A minor scale all produce the same set of notes. They differ though in the order in the scale, in particular on which is the first note. In a C major scale the order would be CDEFGAB, in a D locrian DEFGABC, in a A minor ABCDEFG. So the "guess" will be among one of these equivalent set of notes. Apart from the automatic guess, the device also shows all the alternative possible guesses in a selectable menu, for completeness (nice also to understand the relationships between the scales...).

The download link is always the same:
http://www.fabriziopoce.com/download.html

PS: For now I can still assure the tool set to works properly only on the M4L 32 bit version.

Gr
Fabrizio
http://www.fabriziopoce.com

filter_7
Posts: 389
Joined: Sun Feb 05, 2012 10:05 am

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by filter_7 » Fri May 17, 2013 3:10 pm

I'm not sure i get the concept of that last device, maybe because i would like to have a 'scale filter' device based on realtime or recorded chords.

You already have that chord device; what i miss is a slave device that forces the modal scales note input, so for example if i have a Cmaj chord playing in the master 'chord & harmony' track, i can't play a Eb in the slave 'solo' track because on Maj chords we can decide to have as input only Ionian modes.

Would be great to have the choice of what type of scale to be filtered on what type of chord. I know this is not a super-easy task...

This way we can re-harmonize our already recorded solos played in a completely different key, just by entering a new chord progression, or we can improvise with a safe net on crazy Coltrane/Parker chord changes!

Let me know what you think.

f.poce@tiscali.nl
Posts: 103
Joined: Sun Mar 21, 2010 4:14 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by f.poce@tiscali.nl » Fri May 17, 2013 4:05 pm

Let me give you an idea on how I thought of it.

What if you let a chord progression (played in real time or pre recorded as MIDI clips) pass through the "HarmoGuessScale J74.amxd"....
The result of the guessed scale will be a filter not as strict to the last chord (as given by the HarmoChord J74.amxd + HarmoScaleFilterAPI J74.amxd + Scale device combination), but a filter matching the entire scale/mode you are playing the chords in.

Example:
You have a simple chord progression and this plays through the "HarmoGuessScale J74.amxd"
CMaj7 (CEGB)
Dm7 (DFAC)
Em7 (EGBD)

These chords are in the C Major scale and the "HarmoGuessScale J74.amxd" will recognizes this scale.
It will then pilot all the "HarmoScaleFilterAPI J74.amxd" + Scale devices in the liveset to be set on this scale (the Scale devices will be filtering in this scale).
As a result a solo played live (or as clip playback) in one of the track being filtered will be harmonize to this scale (and not only to the few notes in the last chord).

Gr
Fabrizio

filter_7
Posts: 389
Joined: Sun Feb 05, 2012 10:05 am

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by filter_7 » Sat May 18, 2013 8:42 am

I tried a very simple chord progression:

GMaj * * * | Emin * * * |

But in this case with GBD and EGB notes the scale can't be suggested.

With a chord recognition to modal relative scale approach instead one could have a G ionian filter and then a E dorian filter (or E aeolian or another minor scale if we could make the scale choice).

Or in a more complex progression with

CMaj * * * | EMaj * BMaj * |

We could decide to have C ionian, E ionian and B ionian scale filters in realtime during the progression.

Could be great to have a 'possible scale list' to choose from, with midi map assignment, so for example we could improvise on C ionian the first time, but the second we could choose C lydian!

keep up the good work!

f.poce@tiscali.nl
Posts: 103
Joined: Sun Mar 21, 2010 4:14 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by f.poce@tiscali.nl » Sat May 18, 2013 12:48 pm

The algorithm is now, in fact, extremely simple.
It will do a lookup to a **full match** only. So all the notes in the scale must be collected for it to give the scale as filter selection.
So GMaj (GBD) and Emin (EGB) just give this set DEGB, so you won't get a scale match.

Your idea is nice, but the algorithm needs to change quite a bit.
I will keep this idea in my pocket, but for now I do not have time to spare for this.
For now it is either static scale selection (HarmoScale) or dynamic full match (HarmoGuessScale).

Anyway, I let people know if anything gets updated.

Gr
Fabrizio

synnack
Posts: 2053
Joined: Fri Mar 02, 2007 10:55 pm
Location: Boston, MA
Contact:

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by synnack » Sun May 19, 2013 10:03 pm

Did you post this on maxforlive.com? You can still host it on your site on your link, but if you post it as a "reference" you will get many many more users aware of this device.
MBP | Live 9 Suite | Max for Live | Push | MOTU Ultralite | iPad | Analog Modular Synths | Moog Voyager
aka "Tempus3r" | Music | Blog | Twitter | Soundcloud

Image

f.poce@tiscali.nl
Posts: 103
Joined: Sun Mar 21, 2010 4:14 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by f.poce@tiscali.nl » Sun May 19, 2013 10:17 pm

Hi Clint.

The device set is on Maxforlive.com since day one.
Here a link to the Maxforlive.com page: http://www.maxforlive.com/library/devic ... otools-j74

In fact the page hosts a link to my site here:
http://www.fabriziopoce.com/download.html

Cheers
Fabrizio

vanhaze
Posts: 117
Joined: Sat Jul 23, 2005 2:31 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by vanhaze » Tue May 21, 2013 12:34 pm

Any chance on a 64 bit version ?
Cause i run Live 9 - 64 bit.

Thx in advance !

Rob.
Rob van Hees
Macbook Pro 15", 8 Gig Ram, Mavericks 10.9, Novation Impulse, Maschine MKII, Live 9.1 (latest beta 64bit), Logic Pro X 10.04, Protools 11.02, just too many plugins.

f.poce@tiscali.nl
Posts: 103
Joined: Sun Mar 21, 2010 4:14 pm

Re: [SHARE] HarmoTools - A toolset for MIDI harmonization

Post by f.poce@tiscali.nl » Tue May 21, 2013 1:35 pm

In the current situation I normally suggest to avoid the M4L 64bit implementation, as in many parts still incomplete on the cycling74 side.

Historically the Harmotools set was built in Live8/Max5.
For Live9/Max 32bit everything works as it should (as the 32bit versions offer full backward compatibility).
I do not know what exactly is broken on the 64bit side, but I get reports the tool "breaks".
I have to be sincere I am not planning a 64bit parity for now.
At least UNTIL the Max environment will show a more complete level of feature parity.

So for now, no, no 64bit support.

Gr
Fabrizio

Post Reply