##
GEN31

GEN31 —
Mixes any waveform specified in an existing table.

## Description

This routine is similar to GEN09, but allows mixing any waveform specified in an existing table.

## Syntax

**f** # time size 31 src pna stra phsa pnb strb phsb ...

## Performance

*src* -- source table number

*pna, pnb, ...* -- partial number, must be a positive integer

*stra, strb, ...* -- amplitude scale

*phsa, phsb, ...* -- start phase (0 to 1)

*GEN31* does not support tables with an extended guard point (ie. table size = power of two + 1). Although such tables will work both for input and output, when reading source table(s), the guard point is ignored, and when writing the output table, guard point is simply copied from the first sample (table index = 0).

The reason of this limitation is that *GEN31* uses FFT, which requires power of two table size. *GEN32* allows using linear interpolation for resampling and phase shifting, which makes it possible to use any table size (however, for partials calculated with FFT, the power of two limitation still exists).

## Credits

Author: Istvan Varga

New in version 4.15