i’ll try a 5-minute version of the theory as well, why not:

  • frequency is a physical measure of cycles per second

  • its a good approximation to say that human hearing is sensitive to ratios between frequencies, which we call “intervals”

  • therefore you can represent an interval as a unitless ratio such as 1:2 or 1:(3/2).

  • “just intonation” generally implies that the ratio defining an interval is a simple fraction. the simplest fractions are just whole numbers [1, 2, 3, 4, 5, … etc]. whole numbers multiplied by a fundamental frequency define a harmonic series very common in nature.

_(ok, caveat: from here on out there is a focus on european music theory simply b/c that is what i know best.)

  • the division of the octave into musical ratios is an ancient practice. e.g., ptolemy used a diatonic scale defined by these ratios in the 2nd century:
Do,  Re,   Mi,   Fa,   Sol,  La,   Ti,    Do
1,   9/8,  5/4,  4/3,  3/2,  5/3,  15/8,  2

in this scale, each frequency has a mathematically-simple relationship with the fundamental, which means that their waveforms are naturally “in sync” and we hear that lack of beating as a “clear” quality.

if you extend this to a chromatic scale, as people started to do in renaissance europe, you might get something like:

C,   C#,    D,   D#,  E,   F,   F#,    G,   G#,  A,   A#,  B
1/1, 16/15, 9/8, 6/5, 5/4, 4/3, 45/32, 3/2, 8/5, 5/3, 9/5, 15/8

where each of these intervals is multiplied by whatever frequency you consider to be “C” at whatever octave.


ok, that’s just intonation. the “problem” arose in late renaissance europe when people wanted to play music that changed keys. just intonation scales aren’t isomorphic, meaning the intervals between semitones are not consistent. for exampe, using the list above which we’ll call “ptolemaic 12-tone”, the ratio beteen successive scale degrees is:

scale:
C,   C#,    D,   D#,  E,   F,   F#,    G,   G#,  A,   A#,  B
1/1, 16/15, 9/8, 6/5, 5/4, 4/3, 45/32, 3/2, 8/5, 5/3, 9/5, 15/8
  differences (approximately)
1.066, 1.0546875, 1.0666, 1.041666, 1.06666, 1.05468, 1.0666667, 1.06666, 1.041666, 1.08, 1.0416666

another consequence is: if you follow a “circle of fifths” using a 3/2 interval for a fifth, you don’t actually get a circle, but a spiral of expanding “pseudo-octaves.”

[hand-waving past mean-tone, related keys etc etc.]

so, the solution of the baroque theorists was to make every semitone the same interval, regardless of position in the scale. (the fact that we even think of a “semitone” as a constant measure, reflects how embedded this idea of intervallic pitch has become.)

this means that the ratio beteen semitones must be an irrational number: the twelfth root of 2. call this interval c = \sqrt[12]{2}.

this means that if we go up from a fundamental f twelve times, each time multiplying by c, we end up at the octave.

so a whole tone interval in 12tet is equal to c^2, a major third is c^4, a fifth is c^7 and so on, always - regardless of which note or scale degree you start from.

this table shows, for one octave starting on 440hz:

  • scale degree freq for JI scale above,
  • scale deree frequency for 12tet scale,
  • difference in cents
JI 12tet diff (cents)
440.0, 440.0, 0.0
469.33333333333, 466.16376151809, 11.731285269778
495.0, 493.88330125612, 3.9100017307746
528.0, 523.2511306012, 15.641287000552
550.0, 554.36526195374, -13.686286135166
586.66666666667, 587.32953583482, -1.955000865388
618.75, 622.25396744416, -9.7762844043899
660.0, 659.25511382574, 1.955000865388
704.0, 698.45646286601, 13.686286135164
733.33333333333, 739.98884542327, -15.641287000552
792.0, 783.9908719635, 17.596287865939
825.0, 830.60939515989, -11.731285269778
880, 880, 0

supercollider code to generate the above:


// ptolemaic 12-tone
r = [1/1, 16/15, 9/8, 6/5, 5/4, 4/3, 45/32, 3/2, 8/5, 5/3, 9/5, 15/8]

n = r.size
~ji_semitone_ratios = (n-1).collect({|i| r[i+1] / r[i]});


// show differences between JI and 12tet
12.do ({ arg i;
	var jf, twt, cents;
	jf = 440 * r[i];
	twt = (440.cpsmidi + i).midicps;
	cents = (jf.cpsmidi - twt.cpsmidi) * 100;
	postln("| " ++ jf ++ " | " ++  twt ++ " | " ++ cents ++ " |");
});

(BTW: its good to learn a bit of supercollider for investigating this stuff, because pretty soon you never have to look up a table again.)

27 Likes

Very nice 5 minute attempt!

3 Likes

hi folks
i am peeking back ino this massive thread and wanted to ask about the current skinny on tuning files [.tun] files.

I’ve become mystified by T-A-L Sampler for a project I’m doing and it accepts .tun files for it’s microtonality and frankly i am being lazy and thought i’d ask if anyone has made a .SCL to .tun converter for .m4l or has a python script that might address such a need?

also I don’t think i saw someone mention the classic mccartney patch based on partch’s diamond in this thread --i thought this was included with super co or is old hat?

This is a really great way to get a visual on Rhombic Dodecahedron tuning systems with a bunch of nice intrevals

Diamond.scd (5.2 KB)

i patched a microtonal organ for pd pd last year for organelle that uses python to make .scl usable for pd but i wanted to ask if there was such an animal yet :slight_smile: before i try

Diamond.scd (5.2 KB)
run a few of these in SuperCollider they will help you hear and see unities and interval relationships

1 Like

You could give this online tool a try, it should do exactly what you are looking for :slight_smile:

If you want to make tuning files from scratch, this was mentioned at the top of the thread and is a very easy to use scale generator app; can input scale degrees in multiple formats (cents, ratios, etc), preview the scale in browser with your computer keyboard, and export in several formats.

i just have one really that i want to translate to a .tun file
it’s mine it’s in the scala repository pagano_b.scl
it’s built on 17 and 7th ness

i’ve grabbed the sevish ones they are quite nice

Cents are logarithmic too, that’s what’s so confusing. You would think that 1 cent = 1 Hz or something, but in fact they are a fraction of the exponent you’re multiplying the frequency by. It’s hard on the brain!

Gamelan tunings are extremely idiosyncratic. Very often, one village has its preferred tuning, and a village nearby quite another, so the instruments aren’t cross-compatible at all.

3 Likes

When the Junto did its 440th, non-standard tunings project, I worked out a way to build out tuning tables for Logic, given a set of ratios and a Google sheet I put together to do all the ratio-to-cents-offset calculations.

Currently only works for twelve-tone tunings, but it’s a useful starting point if you just need to calculate the offsets to get going.

1 Like

I’ve just released Pitfalls v0.2.0 - a norns library providing a microtonal scale explorer, chord arpeggiator, and isomorphic grid keyboard. Happy new year!

godzilla-9 semaphore-9

More details here: Pitfalls

12 Likes

oooh, interesting. Does it support rational/harmonic tunings as well or just EDO?

Just EDO. It let’s you use Ls notation to define scales.

1 Like

yeah I figured that out from clicking through the link. Cool approach, I’m sure those interested in EDO will stumble/fall into many interesting pitfalls with it :wink:

1 Like

This thread reminded me that this tuning tool exists for LSDJ, so thanks for starting it.

1 Like

I feel like you guys will enjoy this one.

5 Likes

Just read this article in Wire online, haven’t tried the tools yet but curious if anyone has thoughts?

3 Likes

I really just skimmed the interview but I liked a lot of what I read. Will have to look into the software and see how it aligns (or doesn’t!) to my own tuning proclivities.

I love this thread!
Here’s a microtonal piece I like from the Svaneti region of Georgia. I think I can hear 10 different pitches here?

1 Like

Looks like the link to that article about Khyam Allami’s work has changed to: Unleashing microtonality: an interview with Khyam Allami - The Wire

More videos from Khyam Allami via CTM Festival:

Repressed Possibilities – An Introduction to Apotome

Leimma Tutorial by Khyam Allami A browser-based tool for exploring, creating, hearing, and playing microtonal tuning systems.

Apotome Tutorial by Khyam Allami A browser-based generative music environment based on octave-repeating microtonal tuning systems and their subsets (scales/modes).

Here’s a page with links to the Apotome and Leimma tools.

2 Likes