Music Theory Utility

Discuss music production with Ableton Live.
Post Reply
DangarStu
Posts: 34
Joined: Mon May 23, 2011 1:02 am
Location: Sydney, Australia
Contact:

Music Theory Utility

Post by DangarStu » Fri Oct 14, 2011 12:31 am

Hi all

I have recently been reading up on my music theory and my understanding is slowly starting to improve. As a result I began working on an online music theory tool. It's really only in the very early stages of development but I thought it might be good to share it with people here to get some feedback on the types of features that would be useful to add. My original goal was to make it a very pragmatic tool that your average home musician/ songwriter could use to answer questions such as: what key is this song in? what other chords could I try? etc. The down side at the moment is that it only knows about major scales, but the up side is that it figures out everything it knows from first principles (ie. it only knows the intervals for the chord types and the intervals for the major scale and calculates all the chords in the key etc). The advantage to this over just entering tables of information is that it should make it easy to expand in a variety of interesting ways depending on what people think would be useful.

Anyway, it's all free and open-source, so take a look at http://jacl.animats.net/fastcgi-bin/kielbasa.jacl if you are interested.

Regards,
Stuart

H20nly
Posts: 16113
Joined: Sat Oct 27, 2007 9:15 pm
Location: The Wild West

Re: Music Theory Utility

Post by H20nly » Fri Oct 14, 2011 1:05 am

8O cool project. wish it had a mic... :wink:
LoopStationZebra wrote:it's like a hipster commie pinko manifesto. Rambling. Angry. Nearly divorced from all reality; yet strangely compelling with a ring of truth.

jimmynitcher
Posts: 399
Joined: Fri Mar 26, 2004 6:30 pm
Location: UK

Re: Music Theory Utility

Post by jimmynitcher » Fri Oct 14, 2011 11:18 am

Really cool thanks a lot - just put G major in and worked out the majority of Bowie's Quicksand in like 2 mins
:D

justchris86
Posts: 236
Joined: Mon Apr 11, 2011 5:33 pm
Location: Calgary, Alberta, Canada

Re: Music Theory Utility

Post by justchris86 » Fri Oct 14, 2011 5:52 pm

Awesome!
"Do not quote or read this text"

https://soundcloud.com/unnecessary-roughness-yyc

stringtapper
Posts: 6321
Joined: Sat Aug 28, 2004 6:21 pm

Re: Music Theory Utility

Post by stringtapper » Fri Oct 14, 2011 7:04 pm

The biggest hitch I see with this is that there's no way to differentiate between enharmonically spelled pitches.

For instance if I input the notes Bb, D, and F on your keyboard I get A#, D, and F, and your program tells me that this chord can be in either A# major, D# major, or F major. The first problem is that there are no such keys as A# major or D# major. Second, you wouldn't find an A# in the key of F major because that would be a chromatic alteration of the third scale degree, A.

Of course both of these issues arise from the fact that first note I picked was in fact Bb and not A# yes, in 12-tone equal temperament Bb and A# sound identical, but in terms of how they function they are quite different, and understanding function is key (!) in gaining a deeper understanding of music theory.

So I would suggest you look into a way to differentiate between enharmonic spellings, which means you have to add flat accidentals into the scheme and give the user some way to choose which spelling they intend.

It's the beginning of a great little app you have going there. Keep it up! :)
Unsound Designer

DangarStu
Posts: 34
Joined: Mon May 23, 2011 1:02 am
Location: Sydney, Australia
Contact:

Re: Music Theory Utility

Post by DangarStu » Fri Oct 14, 2011 10:55 pm

stringtapper wrote:The biggest hitch I see with this is that there's no way to differentiate between enharmonically spelled pitches.
...
So I would suggest you look into a way to differentiate between enharmonic spellings, which means you have to add flat accidentals into the scheme and give the user some way to choose which spelling they intend.
Thanks for the feedback, I really appreciate it. Although the system currently does have the ability determine whether a note or key should be expressed as sharps or flats, this doesn't kick in until there is only one possible key the song could be in. So, for example, it will say the song could be in A# or D until a note is added that rules out D and then it will say the song is in Bb. I need to have a think about naming all the possibilities correctly earlier in the process.

Once that is working I'd like to add some features for transposition and chord substitution.

Thanks again,
Stuart

ollyb303
Posts: 2666
Joined: Wed Jun 25, 2008 3:49 pm
Location: Bristol, UK
Contact:

Re: Music Theory Utility

Post by ollyb303 » Sat Oct 15, 2011 12:11 am

Nice project, well done - I'll be using it...
.:O:B:1:.
ob1techno.com

stringtapper
Posts: 6321
Joined: Sat Aug 28, 2004 6:21 pm

Re: Music Theory Utility

Post by stringtapper » Sat Oct 15, 2011 1:57 am

DangarStu wrote:Although the system currently does have the ability determine whether a note or key should be expressed as sharps or flats, this doesn't kick in until there is only one possible key the song could be in. So, for example, it will say the song could be in A# or D until a note is added that rules out D and then it will say the song is in Bb.
To be clear, there is no key of A#, i.e. there is no conventional key signature for such a key. It would mean you would have three double sharps in the key, and doubled accidentals don't exist in key signatures. By offering enharmonic differentiation from the start you can take away the possibilities that are clearly wrong. In the case of A#, it should never be an option as a key that any chord would exist in. An example that would involve a real key would be if you had a chord spelled B-D#-F#. Now (limiting the options to diatonic chords in major keys) this chord could exist as I in B major, IV in F# major, or V in E major. It could not, however, be I in Cb major (which is a real conventional key), or IV in Gb major (real key), and certainly not V in Fb major (not a real key), because even though a B major triad and a Cb major triad are sonically identical in twelve-tone equal tempered tuning, they are not functionally identical.

Sorry to repeat myself a little but I wanted to make sure what I was saying was clear. Keep at it!
Unsound Designer

DangarStu
Posts: 34
Joined: Mon May 23, 2011 1:02 am
Location: Sydney, Australia
Contact:

Re: Music Theory Utility

Post by DangarStu » Sat Oct 15, 2011 10:39 am

stringtapper wrote: Sorry to repeat myself a little but I wanted to make sure what I was saying was clear. Keep at it!
No need to apologise, I appreciate the help. :)

I think I have the naming better now - I believe I avoid any of the completely incorrect naming I had in the previous version. The trouble I think I've hit up against now that might be hard to solve is that internally I only have a single representation of each enharmonic key. For example, the system only knows about Db, not C# and F# not Gb. I'm not sure how much of problem this is going to be yet given the real purpose of the utility and the target audience, but time will tell I guess.

If you add the C# chord and click on the possible keys the note names and chord names in the drop down list now all change dynamically. One other remaining oddity is that you can still get the chord 'A#' appearing in the drop down list if you select a key such as 'F#'. This is because by selecting F# it tells the system to express everything as sharps. Of course the chord Bb Major (shown as A# Major) isn't in the key F# so it's only a problem in chromatic drop down list, not in the list of chords in the key.

Regards,
Stuart

c33
Posts: 197
Joined: Mon Aug 01, 2011 8:18 pm

Re: Music Theory Utility

Post by c33 » Sat Oct 15, 2011 4:26 pm

Brilliant, thanks!

p.s. I love your song, Glass Slipper.

DangarStu
Posts: 34
Joined: Mon May 23, 2011 1:02 am
Location: Sydney, Australia
Contact:

Re: Music Theory Utility

Post by DangarStu » Sun Oct 16, 2011 10:44 pm

c33 wrote:Brilliant, thanks!

p.s. I love your song, Glass Slipper.
Thanks for that. In the time I've been playing with Ableton Live, The Glass Slipper is the only song so far that has come out the way I wanted.

Stuart

Post Reply