Tunes Improvisations Bird Song New Fractal Tunes Recordings Test my Midi player

New Fractal Tunes

Polyrhythms, Polyrhythm metronomes, Polyrhythm fractal tunes, Polyrhythms with fractal rhythms, fractal tunes

The newest tunes were made using the new Polyrhythms window (Buttons | Seed Options | Polyrhythms).

To make your own polythythm metronomes, to listen to hear how the music continues beyond the end of the midi clip, or to transform the music to make your own fractal tunes, you will need the the Fractal Tune Smithy Beta preview (windows 95/ 98 program). To listen to more of a particular clip, download the .ts file and save it to your Fractal Tune Smithy Beta Preview folder, then play it in FTS.

To save the files to disk in Netscape, Opera, or Internet Explorer, Right Click on the link, then choose Save As.



If new to polyrhythms, try clapping in time to one of the parts. Polyrhythms are particularly characterstic of African music, with the performers each playing one of the rhythms, making a complex resultant rhythm that would be very hard for a single performer to play.

This site goes into the philosophy / spirituality behind the African polyrhythms

John Starret has a web page at of 1950s field recordings of african music.


Polyrhythm metronomes

Here is a 5_7_metronome.mid (.ts) (5 beats, and 7 beats to a bar simultaneously) and a 2_3_5_metronome.mid (.ts).

For more metronomes see my Polyrhythm Metronomes page.


Polyrhythm fractal tunes

african_style_complex_polyrh.mid (.ts).

This is a rhythm to really test the program: 2 3 5 7 11 13 17 19 23. (i.e. 2, 3, 5, 7, 11, 13, 17, 19 and 23 beats to a bar played simultaneously, making 223092870 ticks to a bar). The volume of each part varies in a 31 note cycle, so that various voices get louder and softer in waves of sound.

That's about the limit for now. One could go further with special programming, in fact it would be possible to remove this limit on the complexity of the polyrhythm altogether.

Here is a comparatively straightforward polyrhythm for two recorders guitar, Agogo and glockenspiel. It's 2 3 5 7 (i.e. 2, 3, 5 and 7 beats to a bar played simultaneously). Has some gentle variation of the tempo - gets slower as the notes get lower in pitch.

guitar_and_recorder_polyrhythm.mid (.ts)

Here is a nice steady polyrhythm 2 3 7, with the volume of each part changing in waves every six beats: gentle_crossing.mid (.ts) (at least, if you aren't prone to seasickness!).


Polyrhythms with fractal rhythms

Here are a couple that use polyrhythms, but with fractal rhythms as well.

atmospheric_polyrhythms.mid (.ts) - gets pretty wild, with timings varying a lot.

guitar_polyrhythm.mid (.ts) - uses polyrhythm 2 3 5 7 (i.e. 2, 3, 5 and 7 beats to a bar played simultaneously), with some varying of the lengths of the notes to give the tempo changes (same musical seed as the guitar and recorder one).

This one is the original first try out of the idea using the debugger. You can't make one exactly like this and I don't think I could quite reproduce it now, so it's a one off clip. polyrhythm_experiment.mid

It has one note every 3 beats, one every 5 and one every 7 in a 49 beat pattern. Since it doesn't repeat exactly for the 3 and 5, you get a little pause at end of each repeat, which I find rather attractive. You can still make polyrhythms with little irregularities at the end of the cycle, as I've made an option to change the number of ticks per beat away from the default for the polyrhythm. Plan eventually to add other types of irregular polyrhythms too.

The Glockenspiel, which is playing a note every 7 beats, would keep going without a break, but isn't playing the first note of the pattern.

Scale,   1/1 9/8 5/4 4/3 3/2 15/8 2/1 Folk scale from Rajasthan India  (also used in some of the other ones above).

This next one is a polyrhythm fractal tune proper, rather than a polyrhythm custom voice playing the notes of the fractal tune, which one can do already.

Here is one made using Buttons | Seed Options | Seed Pos Increment..., plus a seed that has every fourth beat louder than the others, which is a way of making some two rhythm polyrhythm type things: four_against_five_poly.mid (.ts)

This is the old type, using a polyrhythm custom voice, with sustain. The rather attractive occasional cut off notes may be a bug - but I haven't quite thought out how the sustain should work for a polyrhythm custom voice. Has a six note seed to add an extra ingredient of polyrhythm in the marimba accompaniment. Including that, I think it is something like 15 against 18 against 30, repeating every 30 ticks, or forgetting about the marimba pauses, 5 against 6 against 10. 3_against_5_poly_custom_voice.mid (.ts)


Pythagorean diatonic fractal tune

Pythag_diatonic_tune.mid (.ts)

Score (first three pages): Pythag_diatonic_tune.htm

Midi file with all notes the same length, which one can open in a score editing program to see it as a "score": Pythag_diatonic_tune_equal_times.mid. Nwc file: Pythag_diatonic_tune_equal_times.nwc

I've transposed the top line of this score down an octave - in the fractal tune it is played on recorder, and descant recorder is played an octave above the written score. Though, if you thought descant recorder lowest note was middle C instead of the note an octave above, that is understandable, as it does have some resemblance to it, especially as played on an instrument such as the violin

The reason seems to be that most instruments have prominent second partials, while the recorder has a prominent first partial and weak second partial. The base recorder in F is even more striking in this respect - it actually goes only one note lower than the lowest note of a violin, but makes a respectable base in a recorder consort. Try playing htis note on violin, flute, and recorder on your soundcard or synth. The violin sounds highest, and the recorder lowest in pitch. Other instruments on my soundcard with strong first partial are harp, Shakuhachi, steel drums and marimba. The harpsichord and Koto have prominent 3rd partials.


Fractal tunes

approaching_instability.mid (.ts)

curlew_fractal_tune.mid (.ts)