Quick start
Notation
A note is written as
5/4:1/2:1
where 5/4 is a ratio giving the note’s frequency, 1/2 a ratio giving its duration, and 1 a ratio giving its volume.
The volume of a note can be left out and is then taken as 1, so the same note can be written
5/4:1/2
A rest is written as a note with zero frequency, so a two beat rest is written as
0:2
A chord is written as
<1 5/4 3/2>:1:1/2
where the chord contains three frequencies 1, 5/4, and 3/2, and has a duration of 1 and volume of 1/2.
The volume of the chord can be left out, so
<1 5/4 3/2>:1
is the same chord but with volume 1.
Consecutive notes or chords are written one after the other, so
5/4:1 4/3:1
is a 5/4 played before a 4/3, both of duration 1.
Simultaneous parts are separated by a semicolon, so
2:1 3/2:1 6/5:2 ;
1/2:2 3/4:2
is a three note melody over a two note bass line.
You can multiply the frequency of a note using *, so
5/4*3/2:1
is a note with frequency 15/8.
You can also multiply the frequency of a whole group of notes surrounded by ( ), so
3/2*(1:1 5/4:1 3/2:1)
is three notes of frequency 3/2, 15/8, and 9/4.
You can multiply the volume of a group of notes using **, so
(1:1 5/4:1 3/2:1)**3/2
is three notes with volume 3/2.
Playing music
Music can be entered interactively by running
$ jird
then typing in music and pressing enter to play it.
Music can be saved in a text file and played by running
$ jird music.txt
Ear training
A file ratios.txt containing ratios one per line, e.g.
8/7
7/6
9/7
14/9
12/7
7/4
can be used for ear training by running
$ jird --train ratios.txt
Intervals are played at random to be typed in at a prompt.
Generating lilypond
A lilypond representation of sheet music annotated with ratios and cent deviations can be generated by running
$ jird -l music.txt
and a pdf of the sheet music generated by then running
$ lilypond music.ly
Generating midi
A midi file and scala scl and kbm files for use with synths which support retuning can be generated by running
$ jird -m music.txt
Generating Csound
A Csound score can be generated by running
$ jird --csound music.txt