back to list

JI Relay

🔗John A. deLaubenfels <jadl@xxxxxx.xxxx>

9/27/1999 8:27:18 AM

I posted JI Relay in April in a huge rush, and failed to document it
properly. At the time, interest seemed muted, but lately it has picked
up. I'll describe briefly how to use the program now.

What it does: as you play, the program picks a tuning based upon the
tuning file(s) you've selected. It considers each moment in time
freshly, meaning that the tuning it picks now does not consider the
tuning it picked in the recent (or not recent) past.

Who can run it? You've gotta have Windows 95/98, sorry! I'm not sure
about NT; I don't have it and haven't heard if it works ok...

JI Relay is on my web site:

http://www.idcomm.com/personal/jadl/

It's at the bottom of the page. Download the zip file, jix1000.zip, and
extract it ideally in some new, empty directory. Run JIRelay.exe and
start tuning!

This version only does real-time bending; my latest adaptive tuning
experiments haven't been woven in yet. It WILL do utonal tuning: take
the file from TD 332.7 and name it just7u.tux (not just7.tux, as I
accidentally advised in TD 332.7...).

You need a keyboard to provide MIDI input to the program. And you need
a GM (General MIDI) synth to receive the processed MIDI output from the
program. Most PC sound cards support GM to a sufficient degree. If
you use the same hardware for the keyboard input and synth output, you
must turn local OFF, preventing key presses from directly generating
sound, or else you'll hear out-of-tune duplicated notes!

Some of the options in the program:

Send retune message every [] msec: less time smooths the retuning
transition but cloggs the MIDI stream
Retune transition time: how long it takes altogether for the tuning
to change in response to real-time keyboard manipulation.
Rebend note-off if on within: retuning on note-off alone often sounds
ugly, but if one or more note-on's has come just ahead, we're
still under the influence of that note-on. Setting this number
high encourages retuning for note-off's.
GM patch: the voice ("program") you're going to play.
MIDI port in: where the system finds your keyboard.
MIDI port out: where you want the system to play the tuned MIDI.
Tuning file(s) to use: select one or more. with the program comes:
equal.tux: equal temperament
just1.tux: actually should be named just7.tux: 7-limit tuning.
just2.tux: attempts to include 13-limit tuning.
just5.tux: 5-limit - not included - see below.
just7.tux: rename just1.tux to just7.tux and you've got 7-limit.
just7u.tux: get it from TD 332.7.
Filter out ChnPres: if checked, channel pressure is eaten, reducing
MIDI clog but potentially reducing expression.
Center tuning: if checked (recommended), the pitch bends will be
centered about zero, some up, some down.
Silent retuning: if checked (recommended), a note that has been
silent can sound with a new tuning, not have to bend gradually
from the pitch it last used in the past.

Here's a plausible just5.tux file:

#
# just5.tun
#
# modification history:
# 08-17-99 (jdl): new from just7.tun
#
#
#
#
# tuning:
# cols 1-8 have mbu for +/- 1 semitone voice; halve for +/- 2 (usual):
# (81.92 mbu/cent at this scale; 40.96 mbu/cent at +/- 2):
#
0 # 0; the reference, "C"
0 # 1; has no known harmonic place in the scale...
+320 # 2; 9/8 of C
+1281 # 3; 6/5 of C
-1121 # 4; 5/4 of C
-160 # 5; 4/3 of C
-801 # 6; 15/16 of 7
+160 # 7; 3/2 of C
+1121 # 8; 4/5 of 12
-1281 # 9; 5/6 of C
-320 # A; 8/9 of C: that's what makes this 5-limit!
-961 # B; 15/16 of C

# interval goodness:
# 6 as 15/16 of 7; 8 as 4/5 of 12:
# interval starting at:
# 0 1 2 3 4 5 6 7 8 9 10 11
# interval 0:
+8 -16 0 0 0 0 -16 0 -16 0 0 0
# interval 1:
-16 -16 +8 -16 +8 -16 0 -16 -128 -16 0 +16
# interval 2:
+8 -32 0 0 -8 +8 -128 0 -128 +8 0 -32
# interval 3:
0 -32 -64 -16 +16 +8 -64 +4 -128 +8 -64 +8
# interval 4:
+32 -64 0 +16 -256 +16 -128 +24 +8 -64 0 -128
# interval 5:
0 -256 +8 -8 0 -256 -8 +16 -256 -256 -256 0
# interval 6 (must repeat indentical groups of 6):
-16 -32 -32 -32 +8 -16 -16 -32 -32 -32 +8 -16

JdL