The rms power of asig can be interrogated, set, or adjusted to match that of a comparator signal.
ihp (optional) -- half-power point (in Hz) of a special internal low-pass filter. The default value is 10.
iskip (optional, default=0) -- initial disposition of internal data space (see reson). The default value is 0.
asig -- input audio signal
acomp -- the comparator signal
balance outputs a version of asig, amplitude-modified so that its rms power is equal to that of a comparator signal acomp. Thus a signal that has suffered loss of power (eg., in passing through a filter bank) can be restored by matching it with, for instance, its own source. It should be noted that gain and balance provide amplitude modification only - output signals are not altered in any other respect.
Here is an example of the balance opcode. It uses the files balance.orc and balance.sco.
Example 1. Example of the balance opcode.
/* balance.orc */
; Initialize the global variables.
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1
; Instrument #1.
instr 1
; Generate a band-limited pulse train.
asrc buzz 30000, 440, sr/440, 1
; Send the source signal through 2 filters.
a1 reson asrc, 1000, 100
a2 reson a1, 3000, 500
; Balance the filtered signal with the source.
afin balance a2, asrc
out afin
endin
/* balance.orc */
/* balance.sco */
; Table #1, a sine wave.
f 1 0 16384 10 1
; Play Instrument #1 for two seconds.
i 1 0 2
e
/* balance.sco */