See also dissonance theory etc.
Microtunings in practice
Scala (No, not the JVM language, the Ada-based musical tuning software) is a strange creature, written by another strange creature, Manuel op de Coul. He (they?) also maintains a comprehensive tuning bibliography.
A crazy-weird wonderful, painful ghetto of theoretical tuning. The author is as brilliant as he is troublesome, and you must pay for the delicious tuning knowledge in this software by navigating the labyrinth he built around it.
The software has many brilliant but abstruse features, few of which repay the time investment, because you have no time left after the lengthy battle with the installation process. However, the database of scales, and the easy conversion between different tuning formats is awesome, and pretty simple once you have got the damn thing running.
The Scala software is a horrible mess, and maintained by one lone crazy guy
with firmly idiosyncratic opinions about software.
Unless your needs are particular, I’d recommend downloading the
library of tunings
only and using
supercollider to play those tunings without
wasting time on installing this peculiar and fragile setup.
Recommended: install on a Linux VM.
Everything else requires too much dicking around with the author’s brazenly inconvenient, outdated and opinionated installation system, which requires you to install things in places you’d rather not, using versions you’d rather not.
The damn thing is written in Ada, which is famously used by the International Space Station and the Paris metro, but those folks are too busy to offer you any tech support. Suck it up, find a way of minimizing the nonsense.
On a gtk-friendly Ubuntu, for example:
sudo apt install dkms # Virtual machine helpers sudo apt install aconnectgui gnuplot libgnat-4.9 playmidi timidity \ timidity-interfaces-extras wget http://www.huygens-fokker.org/software/scala-22-pc64-linux.tar.bz2 \ http://www.huygens-fokker.org/docs/scales.zip
That didn’t quite work for me; I had to install ALL of GNU Ada:
sudo apt install gnat
…which is 200MB of wasted disk space. There’s probably a smaller subset that is necessary, but, seriously now, snore.
MIDI might be tricky, but is desirble.
short version that might not work
sudo apt install timidity timidity-interfaces-extra (printf '[Desktop Entry]\nEncoding=UTF-8\nName=Timidity MIDI Player\nComment=Play MIDI audio files\nExec=timidity -ig\nTerminal=false\nType=Application\nStartupNotif y=false\nMimeType=audio/midi;\nCategories=Application;AudioVideo;\n#Icon=? ??\n#NoDisplay=true\n') | sudo tee /usr/share/applications/timidity.desktop sudo cp /usr/share/applications/defaults.list /usr/share/applications/defaults.list.backup.midi if ! cat /usr/share/applications/defaults.list | grep “audio/midi”; then (printf 'audio/midi=timidity.desktop\n') | sudo tee -a /usr/share/applications/defaults.list; else sudo sed -i -e’s@audio/midi.*$@audio/midi=timidity.desktop@g' /usr/share/applications/defaults.list; fi; wget -c -O /tmp/timidity-patches-eaw http://www.fbriere.net/debian/dists/…iere.1_all.deb sudo dpkg -i /tmp/timidity-patches-eaw.deb sudo sed -i.backup -e’s@source /etc/timidity/freepats.cfg@source /usr/share/doc/timidity-patches-eaw/examples/timidity.cfg@g' /etc/timidity/timidity.cfg sudo modprobe snd-seq-device sudo modprobe snd-seq-midi sudo modprobe snd-seq-oss sudo modprobe snd-seq-midi-event sudo modprobe snd-seq timidity -iA -B2,8 -Os1l -s 44100 (printf 'snd-seq-device\nsnd-seq-midi\nsnd-seq-oss\nsnd-seq-midi-event\nsnd-seq\n') | sudo tee -a /etc/modules sudo sed -i -e’s@#TIM_ALSASEQ=true@TIM_ALSASEQ=true@g' /etc/default/timidity
Long story that also might not work
Are you using a recent version of Ubuntu (or some other Linux distribution, but for those the instructions might need to be tweaked)? Are you using Scala but the Chromatic Clavier doesn’t work? Here’s what you need to do:
Open up a terminal and run
sudo modprobe snd-virmidi. To make this happen automatically when you boot up, add
snd-virmidias a new line to the file
/etc/modules(otherwise you’ll need to run
modprobe snd-virmidievery time).
In Scala, go to Chromatic Clavier and then go to Sound Settings. Because of the first step, there should now be some choices available for
MIDI Output Device. Pick the one with a 0 in the name (something like
In your favorite MIDI connection manager (I use aconnectgui), the MIDI output from Scala will now be available as
Virtual Raw MIDI 1-0or
VirMIDI 1-0. You can now connect that to a softsynth or hardware MIDI device of your choice. Have fun with the Chromatic Clavier!
The reason this is necessary, I think, is that Scala uses a legacy “raw” MIDI interface from the days when everyone had MIDI synthesizers (with crappy-sounding soundfonts) on their soundcards, and programs used to access those directly. The
snd-virmidikernel module creates a “virtual” MIDI-enabled soundcard that’s really just a way to get Scala’s MIDI output to appear as a normal MIDI output port.
Actually, even after doing all that I couldn’t make MIDI output work. I don’t care any more. Download the data sets and use them how you want but don’t depend upon this.