DIASS I-Card Description

The DIASS I-Card entry consists of 13 static parameters, and 13 dynamic.

The static parameters are found in the first line of an I-Card entry. Following is an example (superscripts represent footnotes):

I(DIAS 0.0281 8.0002){ 1003000.0003 1.0004 0.0005 0.0006 0.0007 0.0008 0.0009 0.00010 2.00011 2.00012 0.05013
Parameter Name Description Range Units
1 Start Time Time in seconds since the beginning of the piece until the sound begins playing Any Float >0 Seconds
2 Duration Total duration of the sound Any Float >0 Seconds
3 Wave Number Wave and Parameter Number in the form of:
W=Wave number digit, P=Partial number digit
WWWWPPP
Integer values
> 100,000
None
4 Duration Type Flag representing how the dynamic parameters envelopes should store time elapses:

0 Indicates envelope times as percentages of the dry (duration - reverb time) sound

1 Indicates envelope times are in seconds since the start of the sound

{0, 1} None
5 Initial Phase Phase of the wave in % of 360 degrees. [0-1] Degrees/360
6 Vibrato Phase Phase of vibrato oscillator wave in % of 360 degrees [0-1] Degrees/360
7 Tremolo Phase Phase of tremolo oscillator wave in % of 360 degrees [0-1] Degrees/360
8 Vibrato Wave Flag representing what type of wave to use for the Vibrato Oscillator.

0: sine wave.

???are there any more???

{0...?} None
9 Tremolo Wave Flag representing what type of wave to use for the Tremolo Oscillator.

0: sine wave.

???are there any more???

{0...?} None
10 Channel Toggle Flag representing the bias of the Channel Dynamic Parm.

0?: Channel amplitude is percentage of sound in LEFT speaker

1?: Channel amplitude is percentage of sound in RIGHT speaker

{0, 1} None
11 Hall Size Number of reverberations ("bounces") obtained from the reverb unit. {0...} Bounces
12 Reverb Time Time in seconds it takes the reverb to decay [0-?] Seconds
13 Clear Reverb ?? ?? ??

The Dynamic parameters each take up 3 lines. Following is an example:

4.6199999 0.6000000 0.7800000 0.0000000
2.0000000 1.0000000 1.0000000 0.0000000
0.0000000 0.0030000 0.0028500 0.0000000

The first line is the time value. If the Duration Type is 0, this time value is expressed as a percentage of the total dry duration of the sound. If the Duration Type is 1, the time values are represented in seconds.

The second line is the path type. This is a flag (currently 1or 2) representing the path type. 1 represents a Linear path from one envelope segment to the next, and 2 represents an exponential path.

The third line is the amplitude (y-value) of the corresponding envelope segment. This value's range and meaning is dependent upon the dynamic parameter it represents.

Following is an envelope, and it's corresponding triplet representation:

 ^
2|     /----------\
1|    /            \---------
0|   /                       \
(Assuming Duration Type is 0)
0.1200000 0.4000000 0.0800000 0.3600000 0.0400000 0.0000000
1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 0.0000000
0.0000000 2.0000000 2.0000000 1.0000000 1.0000000 0.0000000

For the first 12% of the duration of the sound, a linear path is drawn from 0.0000000 to 2.0000000.
The next 40% of the sound stays at 2.0000000
The next 8% drops from 2.0000000 to 1.0000000
Then 36% remains at 1.0000000
Finally, the last 4% drops from 1.0000000 to 0.0000000

The Dynamic Parameters are (from the top triplet to the bottom):

Dynamic Parameter Description Amplitude Range
Frequency The frequency parameter allows us to change the frequency of a partial over time.

Frequency is stored as (hz - 20) / 11000, where hz is the frequency in Hertz

[0-1]
Amplitude The amplitued parameter allows us to change the volume of a partial over time.

Amplitude is stored as a percentage of 32767 (largest possible 16-bit amplitude)

[0-1]
Vibrato Amplitude Amount of deviation in the frequency of the sound ??
Vibrato Rate Rate of the vibrato waveform in Hertz [0-22050?]
Tremolo Amplitude Amount of deviation in the amplitude of the sound ??
Tremolo Rate Rate of the tremolo waveform in Hertz [0-22050?]
Channel Percentage of the total sound distributed into the speaker indicated by Channel Toggle, i.e. if Channel Toggle is 0, and the y-val for an envelope segment is .4, 40% of the sound will come from the left speaker (leaving 60% in the right) [0-1]
Random Effect ??? ???
Timbre ID Allows a partial to change it's Timbre membership over time. To be used in sound morphing, though not implemented yet.

???

???
Reverb Mix Percentage of the partial to be applied to the reverb unit over time. For example, a y-val of .4 here would indicate that 40% of the sound (amplitude?) should be sent to the reverberator [0-1]
Transient Amplitude Size of transients (spikes or nuances) in the partial

measured in ??

??
Frequency Transient Probability of a frequency transient occuring during a particular segment of the partial [0-1]
Amplitude Transient Probability of an amplitude transient occurring during a particular segment of the partial [0-1]

Following is a sample DIASS I-Card entry for one partial of a sound:

I(DIAS 0.028 8.000 ){ 1003000.000 1.000 0.000 0.000 0.000 0.000 0.000 0.000 2.000 2.000 0.050
6.0000000 0.0000000
1.0000000 1.0000000
0.0145455 0.0145455
0.0030000 0.5970000 0.1230000 0.4770000 1.4970000 3.3030002 0.0000000
2.0000000 2.0000000 1.0000000 1.0000000 2.0000000 1.0000000 0.0000000
0.0000000 0.0050000 0.8341666 0.8000000 0.5006162 0.5000000 0.0000000
4.6199999 0.6000000 0.7800000 0.0000000
2.0000000 1.0000000 1.0000000 0.0000000
0.0000000 0.0030000 0.0028500 0.0000000
6.0000000 0.0000000
1.0000000 0.0000000
0.9410000 0.9410000
5.9998999 0.0000000
1.0000000 0.0000000
0.0000000 0.0000000
5.9998999 0.0000000
1.0000000 0.0000000
0.0000000 0.0000000
6.0000000 0.0000000
1.0000000 0.0000000
0.5290000 0.5290000
5.9998999 0.0000000
1.0000000 0.0000000
0.0000000 0.0000000
5.9998999 0.0000000
1.0000000 0.0000000
0.0000000 0.0000000
6.0000000 0.0000000
1.0000000 0.0000000
0.0010000 0.0010000
5.9998999 0.0000000
1.0000000 0.0000000
0.0000000 0.0000000
5.9998999 0.0000000
1.0000000 0.0000000
0.0000000 0.0000000
5.9998999 0.0000000
1.0000000 0.0000000
0.0000000 0.0000000
}
This document was generated by Mike Piacenza, February 11, 1998