SrutiBox

SrutiBox simulates an Indian harmonium, used as a base tone in Indian music
and in spiritual practices of chanting and droning.
SrutiBox is a synthesizer, creating drones with various timbres and precise intonations that
blur the distinction between tones, timbres and chords.

This simulation uses 12 "reeds" which can be tuned to a number of scales, randomly detuned,
and chorused and modulated. The relative pitch and volume of each "reed" can be set individually,
making for a wide variety of drones.
The reeds can be set to various timbres suitable for drones, including vocal-like timbres.

A special iPhone feature of SrutiBox is that you can wave the phone in an imitation of pumping
the bellows, adding a touch of realism to the simulation.
There is a parameter that can be set so you don't have to "pump" it,
but I find it adds to the authenticity in a subtle way.

SrutiBox can also be used as a pitch source for instrument tuning purposes, or as
an aid for learning the difference between Just and Equal Tempered intervals.

SrutiBox is also an excellent way to play with the way chords fuse into timbres —
which is why there's such a heavy emphasis on interval specification.
You can get a feel for how certain timbres fit "naturally" in certain frequency ranges,
how tunings and timbres and chords intertwine.

SrutiBox now can run in the background when running under operating system versions that support it (iOS 4.0 and on).
However, the Accelerometer is disabled under these circumstances, so the "pumping feature" will not work unless SrutiBox is running in the foreground.
This also means that to truly turn off SrutiBox, you have to double click the home button, select the SrutiBox icon and hold it until it wiggles,
and then tap the black 'x' badge in the corner.

Experiment!

Interface:
To set the minimum or maximum values of sliders quickly, you can tap the icons: for minimum, for maximum.
Tapping anywhere on a slider will set its value there quickly.

Tap the interface images below to get an explanation for the particular control, tap the image again to hide the explanation.
You can open up all the sections by tapping here.

At the top of the screen is a progress bar that shows the level of "air" that is driving the synthesis.
Waving the iPhone (or iPod Touch) will add "air", and SrutiBox will start to sound, if any of the reed volumes are turned up.

The title area has several active buttons:

The info button () is what was tapped to see these instructions!

The save icon ( ) takes you to a list of saved settings.
SrutiBox comes with a few settings to start with:
SrutiBox and Just Just. They are grayed out, indicating that they are read only,
but you can alter them if you like, and then save them under different names.
Settings always save the entire current state of SrutiBox,
so if you have related custom interval sets, they can be saved together.
The settings are sorted alphabetically. There is always one setting named " Last Settings"
which is the way SrutiBox was set when you last left it.

When you choose a saved setting, the title area on the main screen, which is actually a button, will change to be the name of that setting.
Double tapping the title will reload a setting if you have changed them and want to revert to the saved setting.

To pick a setting, tap the name in the list and it will instantly be put into effect.

You can save the current setting by tapping the Save button.
If you have chosen a setting already and changed it, the Save button acts more like a "Save As" button. Typing an existing saved settings name will overwrite that settings.

Pressing edit will let you either delete a setting by tapping the minus icon ()
or rename a saved setting by tapping the name itself.

The title area is also a button -- double tap it to reload the patch named there (double click is a safety precaution!)

These "expand and contract" icons allow you to slide away a lot of controls and spread out the volume sliders so as to widen them and make them easier to set.
The close icon closes them up again and brings the controls back. The title bar icons remain active,
so you can reload the volume sliders by tapping the name in the title bar or load a new setting by tapping the save icon ( ).

These are a series of buttons that choose collections of parameter settings made of :

sets of intervals the reeds are tuned to,

minimum volume level,

base frequencies,

timbres,

randomness,

modulation slider setting,

chorus speed and

churn speed

Here are the settings that come with the default "SrutiBox" settings collection:

Just: The Just intervals are are chosen to give a wide spread of harmonious tones.

12et: These are the 12 equally tempered tones used in western music.

Harm: The Harmonic intervals are to help build chords that fuse into timbres.

Sruti: These are 12 tones used in Carnatic music, derived from the circle of fifths.
This is by no means a complete set of Carnatic intervals.

Cust1: a place for a custom interval set

Cust2: a place for another custom interval set

Interval Sets
I'm calling these "Interval Sets" as opposed to "scales", since they don't have to be related melodically - they can't easily
be played melodically anyway. "Gamut" might be another term for them but I bet you are already confused enough!
There are a great many philosophies about which intervals should be used to derive musical material,
and I've only chosen these to get a taste of the possibilities of microtonal
scales and intervals in this context of drone accompaniment.
To this end, the Harm, Sruti, Cust1 and Cust2 interval sets
are customizable! See below for more details.

This table displays the specifications for four interval sets, with more-or-less accepted names for the intervals and corresponding pitch ratios.
I've also added the "cents" ( ¢ ) values of each interval below its name,
one cent being 1/100th of a semitone, which is a way to compare interval sizes easily.

#

Just*

12et

Harm

Sruti

1

1/10

I0

1/10

sa1/10

2

9/8203.91

I#/IIb100

2/1386.31

ri256/24390.22

3

5/4386.31

II200

3/1701.96

Ri9/8203.91

4

4/3498.04

II#/IIIb300

4/1968.83

ga32/27294.13

5

3/2701.96

III400

5/11200.00

Ga81/64407.82

6

5/3884.36

IV500

6/11403.91

ma4/3498.04

7

15/81088.27

IV#/Vb600

7/11586.31

Ma729/512611.73

8

2/11200.00

V700

8/11751.32

pa3/2701.96

9

9/8'1403.91

V#/VIb800

9/11901.96

dha128/81792.18

10

5/4'1586.31

VI900

10/12040.53

Dha27/16905.87

11

3/2'1901.96

VI#/VIIb1000

11/12168.83

ni16/9996.09

12

2/1'2400.00

VII1100

12/12288.27

Ni243/1281109.78

* ' here means an octave (2/1 or 1200 cents) higher

The Sruti interval set is very close to 12 tone equal temperament, differing only by a few cents,
which you may or may not hear depending on how experienced you are in listening to the differences.
If you turn off the chorusing, you may be able to hear these differences if you switch from 12et to
Sruti tunings with the volume sliders in the same positions. Do some searches on microtonality and Carnatic music for more details!

If you choose a standard note name for the Base Frequency (like "F#") and choose "12et" as the tuning,
the labels will reflect that fact and label the scale with Western note names appropriate for that key.
This is pretty helpful when you use SrutiBox as a tuning source for tuning other instruments!

Two other sets that come with SrutiBox are JustJust, a collection of just interval settings to explore, and Dream Land,
which has good dreamy material, both just and 7- and 6- equal temperaments (6 ET is the same as a whole tone scale).
The custom interval sets are designed to be set up by you!
SrutiBox lets you replace and rename the Harm, Sruti, Cust1 and Cust2 Interval sets.
By tapping in the interval name area, you can specify the interval by either:

typing in a ratio (e.g 3/2, 21/20, 81/256),

a number indicating the number of "cents" (e.g. 110, 133.33, 701.9), or

a degree of an equally divided octave (e.g. 5:19 is the 5th note of 19 tone equal temperament).

You can get pretty creative here - since these numbers can even be "real" numbers, you can even make a "ratio" like 1.01/1 or "quarter-tones"
in an equal temperament like 7.5:31.
Because of the low sample rate, these intervals won't resolve to a ratio larger than 32/1 (that is, 32 times the base frequency). But you can set them as low as you like!
A Ratio will calculate a frequency that is the base frequency times that ratio, for example, with a base frequency of 110 Hz, 3/2 will become
165 Hz, 15/8 would be 206.25, etc. Cents are somewhat more complicated, but every hundred cents represents a 12 tone equally tempered halftone:
100 would be a standard minor second, 400 a major third, 750 a quarter tone higher than a perfect fifth.
There are a lot of references you can find that translate historical, ethnic and experimental scale intervals into cents.
The formula, for those with a calculator, is frequency = base_frequency * 2 (cents/1200).
For the arbitrary equally tempered octave notation (a:b), the formula is a similar:
frequency = base_frequency * 2 (degree/division)
You can label these tones more descriptively by putting the label after the numeric specification of the interval,
separated by a space.
e.g.
3/2 Just perfect fifth.
81/80 syntonic comma.
Don't make the labels too long (more than 16 characters) or they will be truncated.
You can keep the reed from sounding at all by typing "off" or just "o" as the interval setting.
This different from setting it to "0", which means an interval of 0 cents (that is, the base frequency itself). Setting a reed off is a good way to speed up the synthesis in case you are getting some

You don't have to hit the "done" button if you are specifying a bunch of intervals at once - just tap
the interval name of the next one you want to replace and the list will scroll to it and let you edit it.

All the reeds use this base frequency to tune the interval sets specified.
The base frequency can be set to values between 0.01 Hz and 2756 Hz .
You can easily change the base frequency to a new value by tapping it and typing it in.
You can also type in a standard note name and it will take that as a base frequency. To specify sharps, you can use '#' or 's', and
to specify flats, you can use 'b' or 'f', for example: bb (B flat), c# (C sharp), Df (D flat), Fs (F sharp).
These "named note frequencies" are set in a low octave (based on A3 = 220.0 Hz) by default, so the higher harmonics can be used.
For other octaves (0 through 4), you can type the octave as part of the name, for example, Bb2, C4, Ds1, fs0. Having no octave
specified is the same as using octave 3 (E alone is E3).
Low frequencies may be hard to hear through the speaker; use higher frequencies, larger intervals in the interval sets, or richer timbres!
You can quickly fine tune the base frequency using the base frequency slider that pops up when you tap the setting:
Its range is - 50 cents to + 50 cents. There's a little dead zone in the middle to help you get back to the original setting.

The Minimum Volume slider lets you insure that you will hear SrutiBox at this volume, so you needn't wave the device so often.
SrutiBox treats the reeds differently with respect to volume: as the volume decreases, the higher numbered reeds will fade out faster.
This way, you can set up a chord that keeps the lower numbered reeds sounding while the upper ones have faded out, and mix them back in as you pump harder.
for example, you can get high pitched harmonics as you pump harder by putting the lower pitched intervals first in the set,
or keep some high pitched sounds by putting them in lower numbered slots.
You may want to have SrutiBox playing all the reeds at their loudest, but nevertheless have it play more quietly in the headphones.
For this, you can set the minimum volume to the maximum setting,
and adjust the volume using the volume buttons on the side of the device!

The Rand button, adds a random amount of detuning to each reed.
This can be used on any interval set. This detuning is in the range of an "eighth tone" (25 cents) sharp or flat from the original interval.
This is reflected in the interval's label as, for example "+12¢". Repeatedly tapping the Interval set's button will make new detunings from that set.
Tap the Rand button again to turn off this feature.
When saving a SrutiBox setting that has the random feature on, the fact of "randomness" is saved, but not the actual random interval offsets.

The modulation slider controls slowly changing modulations which can add a lot of life to the drone.
By tapping the name of the modulation, it chooses the type of modulation (Chorus or Churn) you wish to set.

Chorus is a modulator that slowly detunes the left and right channels from each other
(they are also slightly mixed) to provide some "motion" in the sound.
The speed of the chorus runs from 5 to nearly 60 seconds.
Setting the slider to its maximum value will turn the chorus off. To use the slowest speed, nudge it a bit to the left from the maximum value.
Reeds set with a rich timbre or in a complex chord will reveal more "motion".

Churn:
When you move the modulation slider in "Churn" mode to the left, the churn feature is turned on,
a second timbre setting appears, and a second set of twelve volume sliders appears.
Churn is a modulator that slowly interpolates one set of volume sliders and its associated timbre to another set.
The speed of the churn runs from 5 to nearly 60 seconds.
Setting the slider to its maximum value will turn the churn off. To use the slowest speed, nudge it a bit to the left from the maximum value.
When it's turned off, only the left set of sliders is used as the volume sliders.
Triple touch works the same on the two columns of sliders: they all will follow the slider you move.
Double touch will let you set both volume sliders for a particular interval at the same time.

The Timbre button lets you select the reed timbres. Tapping the timbre's name brings up the timber picker:
As you scroll through the timbres, the timbre will immediately adjust to the currently selected timbre.
You can use it by tapping "Use" or go back to the previous one with "Cancel".
Note that the vocal timbres are calculated based on the resolved frequencies of the intervals in that set,
so it takes a little time and causes in some cases a break in the audio if it's playing.
There are a number of timbres to choose from, each with differing qualities.

Sines: these wave forms are made by raising a sine to successive odd powers, each time adding more harmonics.

Sine - a simple sine wave, no harmonics at all.

Sine3 - you can hear a fifth

Sine5 - you can hear a third

Sine7 - you can hear a seventh.

Sine9 - you can hear a ninth.

Sine11 - you can hear an eleventh.

Organ timbres: have a few higher harmonics, like an old electronic organ with a few draw bars pulled out.

Organ 1, harmonics 1, 2

Organ 2, harmonics 1, 2, 3, 4, 5

Organ 3, harmonics 1, 2, 3, 4, 5, 6, 7, 8

Weighted reeds: these have a number of harmonics directly multiplied by internally specified weights.

Harmonium 1, taken from the spectrum of a harmonium reed.

Harmonium 2, also taken from the spectrum of a harmonium reed. Good with low pitches!

Odd Harmonic reeds: This is a generated timbre with as many harmonics as possible.

Buzzy Organ, very buzzy. Odd with some light even harmonics

Vocals: these are constructed by summing harmonics, which are scaled to the harmonic shape (formants)
of the intended vowel, based on the pitches of the reeds. As a side effect, the waveform for each of the reeds differs,
so each reed may sound quite different in a related way.
It calculates these waves when you choose them, which is why there is a little pause before playing them.

A Voices (as in "karma")

U Voices (as in"tuning"

O Voices (as in"drone")

E Voices (as in"best")

I Voices (as in"peace")

Voices benefit from low base frequencies and a little randomness.

Impulse timbres: designed for very low frequencies;

Impulse: very noisy at normal frequencies, it turns into a rhythmic pulses (crickets, heartbeat) when used at extremely low frequencies.
Here, low means intervals like 1/256, with the base frequency set to A0.
Good for exploring polyrhythms. This timbre is also very responsive to chorusing and it also aliases like a digital buzz saw at normal frequencies.

Impulse 2: like Impulse 1, but with a higher "pulse" frequency

Each reed's volume can be individually set, to create a precise mix of intervals and harmonics.
Here is where you can have a lot of fun exploring chord voicings and harmonic textures.
You don't have to slide these (or any) sliders, just tap them where you want them to be set.
The UI here is pretty tight, which is why SrutiBox has the expand and contract buttons to give you more space.
The lowest and highest values have special icons to help you out.
If you want to set all the volumes to the same value quickly, triple tap a slider which is set to that value.
Since this also works for the "zero" level, it's
a fast way to zero out the sound.
Just interval sets, like Harm and Just, are well suited to making chords which fuse into timbres.

Tips

As with other iPhone audio applications, if you are connecting the device to an amplifier,
you may want to disable the phone function so you don't hear the occasional noise resulting from GSM synchronization. Putting it in "Airplane Mode" will help a lot with that and battery usage!
If the phone is enabled, incoming calls will will cause SrutiBox to save its settings, fade out and let you have have a conversation.
After the call, SrutiBox will relaunch using those saved settings.

Headphones or earbuds are recommended for a good stereo effect.

Make sure the volume is not too high - your ears - and the iPhone's earbuds and speakers - are delicate!

I sometimes find the phone tends to heat up during SrutiBox's operation. Shut off SrutiBox if this becomes uncomfortable.

More information can be found on the SrutiBox Web pages at: http://www.jhhl.net/iPhone/SrutiBox/.
That website will carry the current, revised version of these instructions, as well as samples, tips and links.