TYPE: CHOP
TITLE: Expression CHOP

This CHOP allows you to modify input channels by using expressions.  Up to six
expressions are available. Each input channel is modified by exactly one
expression, and the expressions are looped for multiple channels.

The output is the same length and set of channels as the first input, but its
sample values are changed according to the expressions.

An expression is applied to each keyframe value or raw sample. There are up to
six expressions. If there are more channels coming from input 0, the expressions
are recycled. A repeat parameter controls how many channels to apply the first
expression to before going on to the second expression.

The power of this CHOP extends when using special expression
functions to access the other input CHOPs: ic(input#, channel#, index)
This gets the value at the specified index of the specified channel
of the specified input CHOP (all 0-relative). Others include:

~c(
    ic() can use local variables: $C (channel #), $I (index).  oc(chan_idx,
    samp_idx) gets at the output CHOP's samples as they are being built. Like in
    calculus integration, you need a value from the previous output sample to
    generate the next one.

    ics(input#) gets the start index of any input CHOP. similar for ice() and
    icl().  icr() gives the sample rate.
~c)

For further information, check in manual "CHOP Expression Functions".

This CHOP has Sample Rate Match options in the Common page.
 
Parameters
Group
    Channels Per Expr - The number of channels that      /chanexpr
			use the current expression
			before the next expression is
			selected.
    Num Expressions   - The total number of expressions  /numexpr
			that are defined.

Expr
    Expression 1-6 - The expressions.		/expr0-expr5

Local Variables
  V - value at the current index
  I - current index
  C - current channel index (0 to NC-1)
  NC - total number of channels
