This example useusess a very subtle feature of the synthesis program. By default, anytime a cell is ready to be synthesized, the frequency value is adjusted so that an integer number of cycles would fit in the duration of the cell. At first this method was used to reduce the noise due to the fractal modulation of the amplitude, ensuring that the amplitude factors would change when the amplitude of the signal is zero (if the table is cropped carefully). The system turns off this processing if the option ``fcycle'' (which stands for fractional cycle) is set. The first section of this example is the tense seed whose structure contains two points. The initial frequency value is 0.5, and since we have not set the ``fcycle'' option, it gets translated to 0. A frequency of zero is equivalent to using the value of the last sample used from the ``table'' in any level. A sinusoid function is used as a ``table'' for this example, and since the frequency factor of the first point of the first part is 1, at the beginning of the sound all the frequency values for all the levels are 0 and no sound is generated for 3 seconds. As the frequency value is modulated by the second point, whose frequency factor is 1.5, different layers start to generate sound. This process can actually be heard clearly in the audio example. If we were to graph time versus the number of layers present in the sound, we would come up with a shape similar to figure 5-1. The amplitude factor of the second point is also higher than the first, and the shape of the amplitude of the first part of the sound is also similar to the shape of figure 5-1. The second part of the example is basically the inverse of the first part. As it is coded in the two points ``part1'' and ``part2'', the first part lasts for of 90 seconds which is 60 seconds and the second part lasts for of 90 seconds which is 30 seconds. The amplitude factor of the second point in the second part is 0.6 as opposed to the amplitude factor of the first point in the first part which is 0.8. This difference causes a faster drop in amplitude in the second part of the sound.
Audio example 15 uses the same principles as the last example, except that its hierarchies have two levels of recursions, and different windows are assigned to different points. Since we are using sound samples as amplitude windows, the character of the window is heard as the timbre for that segment. Therefore, by assigning different windows to different points, we are actually assigning different instruments to them. This example uses three different windows, which are samples from: a powertom (which was used in the last example), the sound of breath, and a ride cymbal.
The first section of the score for this example is printed
in table 5.12. This example has three sections
and we will briefly explain its first section. The default window for
the score, which is the breath sound, is defined in the ``snd'' object.
The first section is
specified by the point ``part1'', whose seed is ``tense''. The seed
``tense'' is composed of two points with equal time segmentations. The
seed for the first point is ``tense2'' which is composed of three
points whose seeds are ``tense''. Therefore, the hierarchy for the
first section of this example (``part1''),
is a binary segmentation whose first part
has a trinary segmentation, and the second segment a binary
segmentation. The segmentation of time for the first 4 levels
is illustrated in figure 5-6. Any time segment which
has gone through a trinary segmentation has been shaded in the figure.
The effect of this hierarchy can be heard as a compound rhythm in the first
section, which gradually moves toward a simple rhythm and connects itself to
the second section at 60 seconds. The second section is a two-level
simple binary segmentation, and the basic structure of the third section
is the inverse of the first section.