next up previous
Next: Polynomial Paths Up: TrikTraks Previous: TrikTraks

Standard Paths

``Standard path'' refers to using a standard waveform to control the path of the variables amplitude and number of samples. Input to TrikTraks is from a datafile, where is specified 1) the path range (minimum and maximum values); 2) the control waveform type (sine, square, triangle, or sawtooth); 3) control waveform frequency; and 4) the control waveform phase.

Note: ``control waveform frequency'' refers to the number of complete periods of the control waveform that will occur over the total time requested. So, if the duration = 10, frequency = 3.5, and type = 3, the path will be three and 1/2 periods of a sine wave over 10 seconds.

As an example, here is an input datafile, specifying the variables for a sequence of 3 segments. The first row of each pair refers to the duration and the second to the amplitude. The first column sets the variable's maximum value, the second its minimum, the third the type of controlling waveform, the fourth the controlling waveform's frequency, and the last is the controlling waveform's phase.

# TrikTraks: input file for standard waveforms
duration: 10    # duration of sound in seconds 

100 10 sin 3.8 0.75       # segment 1: duration
10000 -10000 tri 1.5 0.75 #          amplitude

50 20 squ 5 0.5           # segment 2: duration
10000 -10000 tri 3 0.25   #          amplitude

200 100 saw -3.5 0.75     # segment 3: duration
30000 -30000 sin 11 0.83  #          amplitude

The above is one sequence of segments that are iterated and written to disk until the total duration is reached. As in wigout, a sequence can have up to 64 segments.

The first segment (in the above datafile) has a duration that will vary in number between 100 and 10 (their ``range''), the path will be that of a sine wave, 3.8 periods of the sine wave will be generated over the total duration (10 seconds), and the starting phase of the sine will be 0.75.

The first segment's amplitudes, however, will range in value between $\pm 10000$, the path will be 1.5 periods of a triangle wave over 10 seconds, whose phase is 0.75.

Here is a normalized plot of both the duration and the amplitude paths for the first segment:

\scalebox {0.6}{\includegraphics*{graphics/sintri.eps}}

The distortions in the plot are due to the procedure with which the lookup algorithm (used to generate the triangle and other waves) was called. They were allowed to exist, since they were the result of the proper operation of the lookup algorithm, and generated a few more resistances to periodicity and symmetry.

By choosing distinct values for the type of path, its frequency and phase, each variable of each segment can have a path independent from all other segments' paths.

The sounding frequency of this waveform is the sum of the segments' samples at every iteration. Since this number is constantly changing, the frequency is constantly changing. The square and sawtooth paths have a periodic jump from the minimum to the maximum value (or vice versa). This results in an immediate and drastic frequency change, when applied to the variable duration. The amount of the change depends on the user specified maximum and minimum values for that variable, and the content and behavior of the neighboring segments. The sine and triangle path, in obvious contrast, have smooth rises and falls.

The compositions smear pulse no sneer and The thin red line of subject matter were composed using only the above waveform paths.


next up previous
Next: Polynomial Paths Up: TrikTraks Previous: TrikTraks
Arun Chandra
arunc@evergreen.edu