Kara-Moon Forum
March 29, 2024, 06:13:10 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: You can go back to the main site here: Kara-Moon site
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: MMA future updates  (Read 10477 times)
alexis
Jr. Member
*
Posts: 62


« on: June 10, 2010, 07:59:38 PM »

Hello all,

I gave a try to MMA and took the time to read all the doc.
I found MMA very powerful and quite easy to use.

Do you have any project for the future of MMA?

I have some ideas:
  • Introduce the roman notations in degrees for chords. This would be more abstract and permit to switch easily the key.
  • Introduce a true harmonization fonction. I mean: the melody or the bass would be given, and the chords would be automatically generated, following some criterias (minor/major mix, chord complexity,...).

Please, tell me what you think.

Alexis
Logged
bvdp
Kara-Moon Master
****
Posts: 1436


WWW
« Reply #1 on: June 10, 2010, 08:10:51 PM »

Welcome.

Good suggestions.

# Introduce the roman notations in degrees for chords. This would be more abstract and permit to switch easily the key.

Let me see ... instead of saying "C" for a C Maj chord one could say "I" or instead of "G" it'd be "V". All based on the key signature? That could be fairly simple do with a lookup table I think. Then the program would lookup "V", decide it's a "G" and simply translate. My only concern would be that there is a lot LESS flexibility ... you really can't do chords like Cmb5 in roman (can you? I sort of failed that part of music theory). And if you are just concerned about transposing, then there is the useful "transpose xx" mma command Smiley

# Introduce a true harmonization fonction. I mean: the melody or the bass would be given, and the chords would be automatically generated, following some criterias (minor/major mix, chord complexity,...).

Okay ... I think this might be a bit outside of the mma idea. If you'd like to give a more specific example I'll certainly consider. But, honestly, I have no idea how this would be done.

Bob.
Logged

My online life: http://www.mellowood.ca
alexis
Jr. Member
*
Posts: 62


« Reply #2 on: June 11, 2010, 04:13:19 PM »

Hello Bob,

Thank you for replying so quickly!

# Introduce the roman notations in degrees for chords. This would be more abstract and permit to switch easily the key.

Let me see ... instead of saying "C" for a C Maj chord one could say "I" or instead of "G" it'd be "V". All based on the key signature? That could be fairly simple do with a lookup table I think. Then the program would lookup "V", decide it's a "G" and simply translate.

Exactly!


My only concern would be that there is a lot LESS flexibility ... you really can't do chords like Cmb5 in roman (can you? I sort of failed that part of music theory).
Well, it depends on how you consider music theory. Either, you consider the 7 degrees of diatonic scale very generally, and name them always in upper-case : I, II, ..., VII. Or, you write them according to their corresponding chords in scale : I, ii, ... vii° (in major). What I suggest is simply replacing the note names by their corresponding degree, always in upper-case. You would simply replace "Cmb5" by "Imb5". This notation is more abstract, more theoretical, more "pedagogical", and should only imply simple chords and no modulation.

And if you are just concerned about transposing, then there is the useful "transpose xx" mma command Smiley
Correct! I had forgotten this command.

# Introduce a true harmonization fonction. I mean: the melody or the bass would be given, and the chords would be automatically generated, following some criterias (minor/major mix, chord complexity,...).

Okay ... I think this might be a bit outside of the mma idea.

Yes, but you pushed mma a lot farther than you expected at beginning, am I correct?
The idea is replacing a chord by the command "Auto" for example and mma finds a suitable chord. It of course means to have the melody inlined beside or loaded from a MIDI file. I think it would bring a lots to mma.

If you'd like to give a more specific example I'll certainly consider. But, honestly, I have no idea how this would be done.
Have a look at M$'s Songsmith: http://research.microsoft.com/en-us/um/redmond/projects/songsmith/. The site is quite comprehensive and you can understand what the soft does without even installing it. The basic idea is to record (by microphone) a melody. Then Songsmith generates automatically chords according to 2 parameters ("happiness" and "jazziness") and applies a style. User may change the chords. Read the "Research" chapter to know how it is done. You can also perform a Google search with words such as "harmonization". There are interesting papers out there. All algorithms are based upon hidden Markov chains.
A simple (simplistic?) algorithm would be to:
  • Consider the note in strong beats.
  • Search which chords (and thus degrees) contain the note.
  • Retain randomly a chord, based upon previous chord (a constant table would tell what chord you ca

Cheers,

Alexis
Logged
bvdp
Kara-Moon Master
****
Posts: 1436


WWW
« Reply #3 on: June 11, 2010, 10:00:44 PM »



My only concern would be that there is a lot LESS flexibility ... you really can't do chords like Cmb5 in roman (can you? I sort of failed that part of music theory).
Well, it depends on how you consider music theory. Either, you consider the 7 degrees of diatonic scale very generally, and name them always in upper-case : I, II, ..., VII. Or, you write them according to their corresponding chords in scale : I, ii, ... vii° (in major). What I suggest is simply replacing the note names by their corresponding degree, always in upper-case. You would simply replace "Cmb5" by "Imb5". This notation is more abstract, more theoretical, more "pedagogical", and should only imply simple chords and no modulation.


I'm familiar with I, ii, etc. I recall having to learn it for analysis  Sad And I can see some reasons for including this in MMA ... namely avoiding using "hard wired" pitch intervals. However, I'm not familiar at all with the extensions you suggest. Do you have a list of them? Remember, for now I'm just suggesting a simple lookup. All that MMA would do is to:

   1. Determine by the first letter that this is RM,
   2. Do a lookup/conversion from the RM to a chord. Ie: I->C, ii->Dm, etc.
   3. Apply a conversion to the pitch depending on the KeySig. So, if in F then C->F, Dm->Gm, etc.

A complication would be the enhancements to the chord names (shift/+/-/capo) which I think would still apply. I've added this to my TODO, but a comprehensive ref for RM names would be helpful.


Okay ... I think this might be a bit outside of the mma idea.
Yes, but you pushed mma a lot farther than you expected at beginning, am I correct?
The idea is replacing a chord by the command "Auto" for example and mma finds a suitable chord. It of course means to have the melody inlined beside or loaded from a MIDI file. I think it would bring a lots to mma.


Please remember ... we started out as a metronome. Then worried about chords. Melody notes aren't really a priority ... which is one reason that creating wonderful melody lines isn't a feature of MMA ... I'm really trying to concentrate more on accompaniment Smiley
 

If you'd like to give a more specific example I'll certainly consider. But, honestly, I have no idea how this would be done.
Have a look at M$'s Songsmith: http://research.microsoft.com/en-us/um/redmond/projects/songsmith/. The site is quite


Okay ... but songsmith is just not going to happen here Smiley For a number of reasons:

    - the results sound unnatural, unmusical and canned
    - the nice people on the demos look like dorks
    - I'd never use it Smiley
    - it's way to complicated for a single, poor, aging developer to start and make good

Okay, I'm a tad harsh ... but I think you get the idea. Of course, you are welcome to add/write/contribute your own code to the project Smiley

Bob.
Logged

My online life: http://www.mellowood.ca
alexis
Jr. Member
*
Posts: 62


« Reply #4 on: June 13, 2010, 05:24:16 PM »

I'm familiar with I, ii, etc. I recall having to learn it for analysis  Sad And I can see some reasons for including this in MMA ... namely avoiding using "hard wired" pitch intervals. However, I'm not familiar at all with the extensions you suggest. Do you have a list of them? Remember, for now I'm just suggesting a simple lookup. All that MMA would do is to:

   1. Determine by the first letter that this is RM,
   2. Do a lookup/conversion from the RM to a chord. Ie: I->C, ii->Dm, etc.
   3. Apply a conversion to the pitch depending on the KeySig. So, if in F then C->F, Dm->Gm, etc.

A complication would be the enhancements to the chord names (shift/+/-/capo) which I think would still apply. I've added this to my TODO, but a comprehensive ref for RM names would be helpful.


Sorry, I can't find any reference. I'm not even sure there is one! And for the inversions, there are 3 ways : using a letter (a,b,c,..), using the slash, or using the figured bass! [The best would be to authorize both appended letter and slash].
The best strategy is probably to create your own degree notation reference.




songsmith is just not going to happen here Smiley For a number of reasons:

    - the results sound unnatural, unmusical and canned
    - the nice people on the demos look like dorks
    - I'd never use it Smiley
    - it's way to complicated for a single, poor, aging developer to start and make good

Okay, I'm a tad harsh ... but I think you get the idea. Of course, you are welcome to add/write/contribute your own code to the project Smiley

okay, I have to admit I was a bit provocative to touch on songsmith! There is a lot of (bad) marketing around and the outcome does not sound always very musical. But I believe there is room between a fully "human"/creative tool (MMA) and fully "computerized"/random tool (songsmith). We lack a tool permitting to choose between several harmonization "solutions" computed following rules set by user. It may be an interesting field to explore.

Alexis
Logged
kara
Kara-Moon, a site built by and for musicians
Global Moderator
Kara-Moon Master
*****
Posts: 4907


Music is my middle name


WWW
« Reply #5 on: June 13, 2010, 07:05:33 PM »

Guys

Roman numeral notation is way more complicated then you would suppose at first sight.
Attached is a little preview, it won't be easy to implement this....

k


* 02-02-RomanNumerals.pdf (101.41 KB - downloaded 875 times.)
Logged

_____oOo______ http://www.myspace.com/kaazduo

www.kara-moon.com, a site built by and for musicians
Support us at : http://www.mymajorcompany.com/Artistes/kaaz/
bvdp
Kara-Moon Master
****
Posts: 1436


WWW
« Reply #6 on: June 13, 2010, 09:07:31 PM »


Thanks, Kara. Useful.

The other one I found was

 http://musictheoryblog.blogspot.com/2007/02/roman-numeral-chord-notation.html

Your chart also show inversions. Cool.

I don't think this would be that hard to do. And soon as I have some time I will look at it. No promises Smiley

The big advantage to RM is that it is a lot more logical and standard that the hodge-podge of created symbols used in fake music charts. However, apart from folks studying this at music school, does anyone use it?

Logged

My online life: http://www.mellowood.ca
kara
Kara-Moon, a site built by and for musicians
Global Moderator
Kara-Moon Master
*****
Posts: 4907


Music is my middle name


WWW
« Reply #7 on: June 14, 2010, 09:05:31 AM »

Who uses this ?
I've seen it used by jazz musians...
From my experience i would say, it is used mostly by guitar and bass players. It's pretty easy on a string instrument to 'shift' patterns in function of the key of the song, which is less obvious on a keyboard.

It does have another advantage when you compose music which will have vocals. You can quickly change the key of the song to test which key fits best for the singer.

k
Logged

_____oOo______ http://www.myspace.com/kaazduo

www.kara-moon.com, a site built by and for musicians
Support us at : http://www.mymajorcompany.com/Artistes/kaaz/
kara
Kara-Moon, a site built by and for musicians
Global Moderator
Kara-Moon Master
*****
Posts: 4907


Music is my middle name


WWW
« Reply #8 on: June 14, 2010, 11:46:41 AM »

By the way and for the sake of completeness, there is a sort of USA equivalent of the Roman numerical notation, which is called 'The Nashville Number system'
For more details, look here : http://heathmcconnell.com/2009/03/23/the-nashville-number-system/

k
Logged

_____oOo______ http://www.myspace.com/kaazduo

www.kara-moon.com, a site built by and for musicians
Support us at : http://www.mymajorcompany.com/Artistes/kaaz/
bvdp
Kara-Moon Master
****
Posts: 1436


WWW
« Reply #9 on: June 14, 2010, 04:32:02 PM »

Oh, yes ... Nashville Smiley I'm not going to worry about this variant on the first pass. But, I think it's close enough that at some future point, after I get RM done and I have a lot of time on my hands ...

Quote
It does have another advantage when you compose music which will have vocals. You can quickly change the key of the song to test which key fits best for the singer.

Oh, I thought that was what a capo on a guitar or the transpose button on a keyboard were for ... and I keep looking for that on my sax  Sad

Bob.
Logged

My online life: http://www.mellowood.ca
bvdp
Kara-Moon Master
****
Posts: 1436


WWW
« Reply #10 on: June 15, 2010, 01:43:29 AM »

I wrote some test code this afternoon for the roman numeral stuff. I think it is working okay and appears to translate to "standard" chord notation.

A test run shows:

  Key   Roman   Std
   C      II7          D7
   C      VI11       A11
   D      I            D
   F      ii            Gm
   Eb   V7           Bb7
   F#    vii          E#m

which I think is okay.

Now: question for you smart guys! What notation would you use for dim and halfdim? In the references 'dim' is indicated with a small, raised '0' and a half diminished (translated to m7b5) is a slashed '0'. My suggestion is to use '0' for 'dim' and '-0' for half dim. Any other suggestions would be welcome. And if you want to test my little stand alone progam send me a private mail and I'll fire it off ... don't want to post since it's in a state of flux. When it mostly works I'll incorporate it into the mma chord parser.

Bob.

Logged

My online life: http://www.mellowood.ca
kara
Kara-Moon, a site built by and for musicians
Global Moderator
Kara-Moon Master
*****
Posts: 4907


Music is my middle name


WWW
« Reply #11 on: June 15, 2010, 07:41:55 AM »

Looks good
Lowercase o would perhaps look better ?
if you want me to test, you have my mail address

k
 
Logged

_____oOo______ http://www.myspace.com/kaazduo

www.kara-moon.com, a site built by and for musicians
Support us at : http://www.mymajorcompany.com/Artistes/kaaz/
bvdp
Kara-Moon Master
****
Posts: 1436


WWW
« Reply #12 on: June 15, 2010, 04:16:43 PM »

Looks good
Lowercase o would perhaps look better ?


Yes. Easy enough to have both.

Quote
if you want me to test, you have my mail address

Yes. Later this week. Thanks.
Logged

My online life: http://www.mellowood.ca
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!
Page created in 0.043 seconds with 20 queries.