DCMLab / corpusinterface

Basic functionality to maintain and load corpora.
0 stars 0 forks source link

Chord events #1

Closed pettter closed 3 years ago

pettter commented 4 years ago

Events for chords without specific pitches.

pettter commented 4 years ago

For #6 we now use just regular Events.

fabianmoss commented 4 years ago

What is a chord without specific pitches?

pettter commented 4 years ago

Something like in jazz leadsheet, where e.g. a Cm7 rarely (but still sometimes) actually includes a G.

fabianmoss commented 4 years ago

I think we should make a distinction between a chord's "logical form" - in which Cm7 would include the pitch class G - and its realization/performance, in which it (and occasionally other notes) can be omitted.

pettter commented 4 years ago

Hm.. Maybe. What I'm getting at is essentially encoding the potentially interesting things about chords you can tell from the notations in e.g. jazz leadsheets (the root is C, it's a minor chord, it's a 7th chord) without specifying any particular voicing either in specific pitches or pitch classes.

I'm not sure if this makes sense, though, or if just storing the chord string is "enough" for this library, and any further parsing should be up to the user...

I'm still leaning towards it being more useful than not, but writing out the Correct(tm) regex may be a lot of work (unless we can just borrow the logic from music21 or some other library).

robert-lieck commented 3 years ago

By now, all the type-specific stuff is not part of the corpus interface anymore. This should probably go in a separate library or become part of the pitchtypes library.