Infer the underlying chord from an arpeggiated note sequence (melody)?

Is there a way to deduct the underlying chords from a piece of music that is based on arpeggios? I mean, when the (say) piano plays an arpeggio, by intention of the composer and the desired harmony, there is a set of notes (chord) implied which is performed with an arpeggiated (up/down/updown, or ostinato?) expression of the underlying notes. I am not familiar with classic music sheet notation, whether there is ever a chord given and an “arpeggio instruction” that the performer plays out. But when I have a MIDI note set with arpeggios, I am trying to get the underlying chord(s) to feed into a backing pad. We’ve had this discussion whether Scaler can do it (and why not), apparently it’s not that straight forward. But an experienced musician (or a composer/arranger?) probably has a way to derive chords from given arpeggiated melodies, no?

Here’s a concrete example… I am currently manually editing the arpeggiated notes, based on the chord I assume they were driven by…

1 Like

I have used a simplified method to do this, based on the assumption that an arpeggio is a ‘melted chord’, and there is one arpeggio run per bar. It’s not a perfect answer by any means, but it can be a good first try for many arpeggios.

If you have the arpeggio in Live, in the midi editor pull each arpeggio note forward to the beginning of the bar, deleting those note which are repeats… You end up with a series of ‘chords’ at the start of each bar.

These can now be exported and dropped into Scaler’s midi detect.
If there are only 3 stacked notes, it can obviously only detect major and minor; having more notes allow 7ths and so on. It seems to work on most ‘normal’ heptatonic scales.

I’ve found this works well with ‘simple’ arpeggios and non-complex scales. With a bit of prior deleting of notes to drop notes played ‘outside’ the scale , the detected chord sequence can then be adjusted by ear.

2 Likes
  1. Click this arpeggio MIDI in studio one, and click here to see the picture

  2. MIDI becomes audio, then continue to mail with the mouse, select “audio”, and then click “extract to head track”

  3. Chord progression has appeared at the top of studio one.

This method can analyze all music.
Even the chords we sleep and snore. :sweat_smile:

Thanks for sharing this, unfortunately I don’t have Studio One. But I remembered that I got DeCoda a while back for a similar reason, to recognize MIDI notes from Music Audio. And it seems that it also extracts chords from melody harmonies. I’m getting there…

1 Like

OK.
I also just used studio one
I think studio one will become the first Daw in the future :rofl:

I would just select each group of notes (within a beat) and Logic would tell me what chords they are and then feed that into scaler, or play them into scaler, whilst also playing the whole arp. Then I match chords with scale. Not sure if that helps.

1 Like