The instruction:
Why Schillinger? The piece is based on "events" : change of chord voicing,
chord root motion,
change of chord type.
These occur in cycles, and
the interplay of these cycles (Schillinger says interference ) is the style of the piece, if there is such thing.
Such chords do not usually stay in the piece scale. E.g., if the scale is C major, then m on C
(a minor third on C) uses the foreigh tone Eb.
For instance, if the piece uses a pentatonic scale C D E G A, then t3 on D is D,G,C.
It is built by picking one note, skipping the next,
picking one note, skipping the next, till three notes have been gathered. Common and different notes
Ornamentation
Short piece for piano and flute. One may request it to be tonal, or in some ad-hoc scale. In any case, starts and ends with the same chord,
the tonic triad – if available in the chosen scale – or something similar.
will produce a score named, e.g. schi765 and a playable midi file schi765.mid. In more detail, drix.pl executes:
perl drix.pl parameters
perl schix.pl @ARGV > seeschi
copy intermedia.txt schi$ID
midi schi$ID
schix.pl
parses the parameter list
as supplied to drix.pl. All the parameters are optional; their interpretation is as follows:
rand_1234
ton_maj
tsig_7/8
hary_2/8,3/8,2/8
chro_m,M,t4,m
romo_1,4,-1,3,2
maj specifies the major mode, min some minor mode:
7-note melodic, 7-note harmonic, or 9-note i.e.
A min = A B C D E F F# G G#
sca_pen specifies the pentatonic scale C# D# F# G# A#,, possibly transposed, and
sca_dod specifies the dodecaphonic scale.
sca_23750b specifies an arbitrary scale D Eb G F C B ; in such notation a is 10 semitones, i.e. Bb
and b is 11 semitones, B.
The scale gets actually sorted, as: C D Eb F G B.
The chords change at certain time intervals, which the program sets up. They are are built on the current chord root;
chro stands for chord over root.
The chords which may be specified are:
m minor third, i.e. root, root+3 semitones, root+7 semitones
M major third, i.e. root, root+4 semitones, root+7 semitones
d diminished third
A augmented third
v7 major third, add root+10 semitones
S any seventh chord without an interval of 1 or 11 semitones (soft seventh)
H any seventh chord with an interval of 1 or 11 semitones (harsh seventh)
vii7b diminished third, add root+9 semitones
t3 superpose 3 notes (mostly triads, but not always)
t4 superpose 4 notes (mostly sevenths, but not always)
Similarly, in the 9-note A-minor A B C D E F F# G G#, t4 on E is E,F#,G#,B.
By construction, these chords always belong to the piece scale.
creates a list of events, each at a certain time, e.g:
1/1,a,HARY
1/1,c,t3
9/8,b,0
5/4,a,HARY
5/4,c,t3
3/2,a,HARY
13/8,b,-1
7/4,a,HARY
7/4,c,t4
15/8,a,HARY
17/8,a,HARY
(in all the listings, times are shown as fractions)
The piece starts at time 0, but at time 1/1 there is a chord change (HARY ) and the new chord is of type t3.
Then at time 9/8 there is a root motion (by 0 steps, not very interesting, still...)
Then at time 5/4 the chord becomes t3. Then at 3/2 the chord must change (HARY ),
by some inversion as its type or root did not change.
And so on.
by interpreting the events, the program generates 4 voice chords (for the piano) and some candidate notes for the flute, e.g:
score with common and different notes
0 A3 D4 F#5 A5 0/1 A D,F#,A
1 D4 F#4 A5 A5 1/4 A
2 F#3 A3 A5 D6 1/2 A
3 E3 A3 C5 A5 3/4 A C,E
4 C3 E3 A4 A5 1/1 A
5 A3 C4 E5 A5 5/4 A
6 C4 E4 A5 A6 3/2 A
7 D3 A3 A4 F#5 7/4 A D,F#
8 B3 D4 E5 Ab5 2/1 D E,Ab,B
9 D4 E4 Ab5 B5 9/4 D
10 E3 A3 D5 E5 5/2 D A
11 A3 D4 E5 E5 3/1 D
12 D4 E4 E5 A5 13/4 D
13 E3 E4 A5 D5 7/2 D
14 A3 D4 E5 F#5 15/4 D F#
15 D3 F#3 B4 D5 4/1 D B
(not generated from the event list shown above)
The common notes bellong to a few contiguous chords, e.g. A and D in the penultimate column. The 'different' notes appear in the last column,
e.g. C,E are novel notes introduced by chord 3, starting at 3/4; D,F# are novel notes introduced by chord 7, starting at 7/4; but all the chords
4 to 6 do not introduce any novel notes.
The flute plays alternately common and novel notes, suitably ornamented. The piano chords are also ornamented, although they are mostly played blocked.
Ornamentation is completely random: each note is written to the score as is, or, with a small probability, ornamented.
Although there is a lot of coding, the result is very simple: trills, scales and breaking long notes. A long note may be interspersed with rests,
or the same note an octave apart.
Long notes may result from joining together identical pitches in the same voice, across a few chords. For instance, in the table above,
the second voice plays A3 in chords 2 and 3, resulting in A3 lasting 1/2; it might be played
as :
finally, the program writes the parameters of the composition as a comment at the end of the score:
{-------------------
rnd_gold tsig_12/8 sca_min
Actual parameters passed to the program. Notice that the random seed is the text gold.
hary_ , chro_ , romo_ are not specified in the parameter, but generated by the program.
random seed 4322
The seed as a number: rnd_gold gives the same results as rnd_4322
HARY
6/8 6/8
totdur 3/2 1/1 measures
harmonic rhythm
repeats every measure
CHRO
v7 t3 t4 H t3
9/8 9/8 13/8 7/8 10/8
totdur 6/1 4/1 measures
chord types (above current root) with time intervals
repeats every four measures
ROMO
6 5 1 1 1
9/8 6/8 6/8 9/8 6/8
totdur 9/2 3/1 measures
chord root motion with time intervals
repeats every three measures
time signature 12/8
revoicing 3 0 1 2
e.g. for a seventh chord:
root in soprano, third in bass, fifth in tenor, seventh in alto
with some mixing to avoid parallel fifths and octaves
scale 7 9 10 0 2 3 6 min
G minor harmonic
-------------------}