Classes and Structures
Class: AUDIO-RENDERER
This is a mixin class for anything that can be used to render audio. Known subclasses are
SYNTHESIZERandMIDI-FILE-SEQUENCER. Classes that inheritAUDIO-RENDERERare able to call theRENDERandRENDER-AUDIOmethods and are expected to, somehow, render blocks of audio.You should never have to create an
AUDIO-RENDERERinstance. Always create an instance one of the classes that inherit it instead.
Generic Function: RENDER [renderer] [channels] [format] [dest] -> boolean
Renders audio to
DESTusingRENDERER, which must inherit theAUDIO-RENDERERmixin class. TheCHANNELSandFORMATparameters dictate the expected output format. This returnsTif the song is not finished, or if the sequencer is set to loop. Otherwise this returnsNILwhen he song is finished.Internally, this sets up temporary buffers for the left and right channels, calls
RENDER-AUDIOto render to them, then writes the results toDEST.Possible values for
CHANNELSare:
:STEREO-INTERLEAVED- Stereo sound:MONO- Monaural soundPossible values for
FORMATare:
:FLOAT32- 32-bit floating point samples:SINT24-LE- Signed 24-bit little endian integer samples:SINT16-LE- Signed 16-bit little endian integer samples:SINT8-LE- Signed 8-bit little endian integer samples
Generic Function: RENDER-AUDIO [renderer] [left-buffer] [right-buffer]
Renders audio to
LEFTandRIGHT. This returnsTif the song is not finished, or if the sequencer is set to loop. Otherwise this returnsNILwhen he song is finished.In most cases, you want to use
RENDERinstead of this generic function.