Managing the amplitude and using the internal editor.
There are two ways to express the amplitude.
The final result (all the audio file) will always be rescaled to your audio setting (see Normalize Output Level in "Preferences/Audio").
Mixing positive and negative numbers is possible, albeit not really recommended. In any case, zero (0) always corresponds the maximum level (0 dB), not to a linear amplitude of zero (0), that is silence. If one really wishes to compute silence, one should use a negative value =< to -96 (16-bits resolution) or -144 (24 bits).
Patch description.
The box contains several lists of amplitudes . Select them one by one and evaluate the sound object.
The function lisp-length returns the numbers of elements of the chosen list and passes the result to the slot numcols, which must always have the total amount of the components that need to be synthesized. In other words, numcols corresponds to the amount of columns of the matrix initialized by ADD-1 and in which the data are stored (see the internal editor below). It also corresponds to the amount of lines generated in the csound score for this event.
If, for instance, the value "3" is passed, only the first 3 values of the lists will be computed. As a consequence, a useful control strategy is to have numcols depend on the most important control parameter in the synthesis event, as is the case here.
The duration of each component is the default value (1 second).
The frequency of each component is the default value (440 Hz).
The sub-patch "edel" sets the events one after the other (e.g., with 5 events the entry delays will be : 0, 1, 2, 3, 4).
The sub-patch "aenv" replaces the default amplitude envelope with a new one built by a Break Point Function or BPF (more details about this topic in the next Tutorial).
The difference between the two examples is the use of the keyword ":precision" added to the class add-1 in the example B. By default the numbers of the OMChroma's classes are rappresented with 3 decimal digits. If, for any reason, you need more decimal digits, you have to add to the class a keyword named " :precision" and specify how many decimal you wish.
As all the rendering in done using floating point arithmetics, the final integer audio file is computed at the end of the rendering by converting and rescaling the floating point file. As a consequence, there is NO risk of overflow in the final integer file.
ADD- 1 stores all the data into a matrix. Double click on the ADD-1 box to open the matrix's editor to display and modify the data.
The matrices above displays the data coming out of the evaluation of the first row of the list in two ways according to the checked boxes.
Notice that:
There are two ways to modify the data in the editor.
Click on the value and drag it. |
Double click on the value to open the coordinate's window and type the new value into the y-axis frame. |