Hi Matju, hi list. Happy new year.
I'm not sure of what you are talking about. Unfortunately, I'm not a math geek yet. Could you join a simple patch showing a scale and a chord in the way you mean ? I am really visual, and not quite a good english speaker... Also, for beats, do you send them as a list every several beats as in this message : [0 1 3 6{ meaning to play the sounds 0, 1, 3 and 6 on the beat when it is sent ? A little random in those rhythms would help to keep having variety.
If you have the following scale, which is Ionian, how would you then assign a priority order in this list ? 0 2 4 5 7 9 11 Then, the following chord would be a Cmaj7... 0 4 7 11 Great, but if I want a Cmaj7(6/9) it would give : 0 2 4 7 9 11 So, it basically means a Ionian scale... And if I want to play most often the third and the seventh ? It is endless.
And for licks, should I store them as arrays ? One for the rhythm, the other for the melodie...
=====================
Oh, by the way, Thanks Hans-Christoph for the patch with the data-structure. I had a lot of fun discovering this a little further. One day I might release a nice abstraction to build and change data structures. I didn't get your patch to work though. A chance I could listen to your MP3. It seems like my Pd couldn't create [debug] and [linearpan~]. I also got the following error: ((( 'prepend' class incompatibility warning: creating an object without an argument))) I am on Mac X, Pd 0.37.4 extended pre-compiled.
aalex
On Wed, 15 Dec 2004, Alexandre Quessy wrote:
Forms in musics? (A-B-A-C-A-B-A, variations on a theme and A-B-A, for instance)
They can be stored as integers in a list, and then applied by using [sel] to select various subprograms, or the integer can be used to recall a subform. Subforms can obey the same principles.
rhytmic patterns,
Same thing, assign an integer to every drum sound. For more complexity, more integers per note can be used, to describe velocity and whatever. It's the same as for patterns in melody and such.
scales, modes (Do you store only a Ionien and a ascendant melodic minor and derive all the other from them ?)
I see a scale as a pair of a subset of the 12-note scale together with one note of that scale. Following that definition, it can be found that there are 24576 of them (I think... well, sum 12!/(i-1)!(12-i)! over i).
a subset of the 12-note scale may be represented as a 12-bit integer, so there are 2**12=4096 of them.
modes are scales modulo addition of an offset, so there are 24576/12=2048 of them. They may be represented as 11 bits, each being a toggle for the presence of every non-initial note.
I like to look at those things using modern algebra concepts such as group-quotients, group-actions, orbits, and so on.
Chords,
a chord is just a scale with fewer notes than common scales, so they are all included in the above. this is considering all notes modulo 12 so it doesn't take into account the potential spreading of notes along the keyboard...
I define a subscale as a subset of a scale together with the same starting point as the bigger scale (and of course that same starting point must be an element of the subset). Therefore, chords C, CM7 are both subscales of the full C major scale, and furthermore, some inversions of F, FM7, Am, Am7 also are.
Mathieu Bouchard -=- Montréal QC Canada -=- http://artengine.ca/matju