Week of 10/15
Goal: Combine modules with Omega and Katie
How you Did: Successfully made a working file of code
Results: we were able to make it take in a midi file and a string of chord names and then output the new set of melody notes. Would like to work on a way to join together the melody and chords and show the entire output. Moving forward, I want to improve on the process of changing the notes so that it takes into account the contour of the line, fixes octave displacements, and then allows for changing to any note that qualifies the rule rather than a note in the chord.
Week of 10/8
Goal: Start to implement rule as a code
How you Did: made a very rudimental idea of the code
Results: So I was able to get code up and working, and it successfully identifies which notes need to be changed and then changes them to be the nearest note of the chord.
Week of 10/1
Goal: Decide on a definitive set of rules for combining melody and chords.
How you Did: was successful in creating a small set of rules
Results: The rule is that when a new note is added, if the chord and the melody combine to create a triad that is more dissonant than the original triad then the note must be changed. For example, if you have an F minor triad, and the melody note is an E natural, then the note must be changed because the Ab and C in the F minor triad combine with the E to make an augmented triad. Based on this research study:
Week of 9/17
Goal: Look at existing melodies that have been created and put them with chord progressions, and then see what notes needed to be changed to make them fit. Start thinking about what patterns show up and how they could develop into an algorithm.
How you Did: Overall pretty successful with it, took ten melodies and chords and tampered with them.
Results: What I saw as I was working was that the most important part of a melody is the contour. It is the most distinct part of it and when that changes it makes the melody less distinct and loses a lot of the identity of the melody. For example, if a melody has a lot of large jumps than closing those intervals takes away from the melody, but shifting notes to be farther contributes more to the contour and thus it keeps the melody sounding the same but fits chords better. Another example is that if there is a continuous line of notes, as in the same note repeating, that should stay even if the chord changes underneath because a repeating note is such a strong motif that it sticks out as a characteristic. Another idea I had was that you could rank the harmonic complexity and then adjust how far away from the chords the notes could be based on that. For example, if you want it simple you have only notes in the chord, and then from there you could have notes that are diatonic with the chord, and then chromatic notes based on the circle of fifths, and then finally any note would work.
Where to Go Next: Start writing code for it and see if I could make something that works even on a basic level. Start by being able to label and categorize the contour of a melody or important points. Also start thinking about how to determine whether the chord should change or whether the melody should change.