Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

training mode for special chords #1

Open
philippotto opened this issue Dec 11, 2014 · 5 comments
Open

training mode for special chords #1

philippotto opened this issue Dec 11, 2014 · 5 comments

Comments

@philippotto
Copy link
Owner

e.g. C 7, C m7, C maj7, C m#7, C dim7, C half dim

@ghost
Copy link

ghost commented Jul 7, 2015

@philippotto I'm not a music theory buff, so I don't get the significance of these chords.
What makes them important? They're complex and rarer?

@philippotto
Copy link
Owner Author

Hi Tom,

Thank you for your question which is quite justified. The issue description is not really clear here. I want to be able to train these chords since they are very often used in sheet music (often sheet music is also annotated with chord names). The important point here is that I want to be able to play a "C half dim" chord without having to see the notes.
So, the piano trainer wouldn't display the notes (at least in the "advanced" training mode) but just the chord name and the user would play the correct notes (of course inversions should be possible, too).

I hope this clears things up! Cheers!

@ghost
Copy link

ghost commented Jul 10, 2015

Yes, that's much more clear!
I figured it was something like that, but I just wanted to double check.

I'm working on a midi side project and stumbled onto this. It looks like some nice work. 😎

Thanks for replying and have a great one!
Tom

On Jul 7, 2015, at 1:37 PM, Philipp Otto [email protected] wrote:

Hi Tom,

Thank you for your question which is quite justified. The issue description is not really clear here. I want to be able to train these chords since they are very often used in sheet music (often sheet music is also annotated with chord names). The important point here is that I want to be able to play a "C half dim" chord without having to see the notes.
So, the piano trainer wouldn't display the notes (at least in the "advanced" training mode) but just the chord name and the user would play the correct notes (of course inversions should be possible, too).

I hope this clears things up! Cheers!


Reply to this email directly or view it on GitHub.

@Aesop-Shaym
Copy link

More flexible chord generation would be pretty cool in general:
-chords selected from a scale, or something more general involving modes (like aeolian or whatever)
-monads, dyads, triads, tetrads etc.
-interval sizes

e.g. "all dyads in b major smaller than a 10th interval"

Some interesting experiments/stretch goals here might be:
-something involving voicings (cross-octave vs. within-octave or something?)
-maybe something about specifying a distribution of chords that matches a genre of music, could be extracted by, processing a bunch of baroque music off IMSLP or something

@shimondoodkin
Copy link
Contributor

i think i little got away too much with what is asked. i'll post it anyway. maybe it is interesting to someone.

training chords is little complex because they are steps on a scale.
1st thing is to learn the scales, scales are combinations of two tetrachords

https://www.youtube.com/watch?v=-3oo45vpQV4

so first thing is to practice tetrachords starting from a note.

like
there is a title of the tetrachord name and its distances shown.
in the staff, a note is shown in red and a sound of it played, and the other notes are in black, then the user has to press this note on the keyboard and play them. for random notes. or going up notes (you know this better)

the major scale is combined from a major tetrachord and another major tetrachord.
so the lesson will say play major + major
show a red note, and play its sound and the rest are in black.

level 3 lesson might be skipping in intervals of 1 or 3 or 5 on a selected scale.
notes are painted the first starting note of the scale is played and the user has to move up one step and skip the wanted step. for example, if the selected interval to skip is 3, then the user will play, 1,3, then 2, 4 then 3,5 .
the first part of the 3rd lesson is the 1 interval. the 2nd part is the 3 interval and the r3d part is the 5th interval.

after user knows intervals on scales in is possible to construct chords, chords are simply 3 sounds on a scale with interval 1 3 5. like the 1st the 3rd and the 5th sound from any note on a scale.

so the 4th lesson could be to try all chords on a given scale
the chords are named: tonic. sub dominant , sub mediant, mediant, dominant, dominant diminished

a 5th lesson could be to learn the order of chords of moving in 1 or 3 or 5 ,
like in https://www.youtube.com/watch?v=_-0tD-qAW48

there are only some chords on each scale.
it might be required to guess the scale that has this chord distances to play chords at will.

so the 6th lesson could be to play all the scales with a chord.
like 3 progressions on the staff with some space between them

Here is a short technical explanation of music theory as I understand it:
http://doodkin.com/2016/12/22/what-is-music/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants