| Age | Commit message (Collapse) | Author | Files | Lines |
|
* When specified as part of a port-mapping array or list, they
are automatically expanded.
I.e. if `stream` is stereo, LADSPAStream(..., stream) is equivalent to
LADSPAStream(..., stream:demux(1), stream:demux(2))
* This is often handy because stereo input ports are usually
defined consecutively by LADSPA plugins.
|
|
* Constants were converted to infinite streams.
This allows them to be handled specially. They are stored in their own
input buffer now, initialized and connected once but need no ticking.
* In contrast to the Applause primitives, this can be done centrally and
for all possible LADSPA plugins.
* This gives a speed increase of up to 20% if all input ports are mapped
to constants (measured with the "sine" plugin).
|
|
* E.g. LADSPAStream("sine", 880):play().
The sine plugin is currently twice as fast as the native Applause implementation
even though a block size of 1 sample is used (ie. compared to Stream.SinOsc).
* all LADSPA features should be supported
* Takes arbitrary Streams as input and produces a normal Applause stream.
* multi-channel output plugins supported
* LADSPA port mapping is possible by array, by name and by argument
list.
* Even though LADSPAStream is not muxable (it is more like SndfileStream),
every input stream or default value is currently converted to a Stream.
This can be optimized by storing scalars in their own arrays.
They don't have to be ticked.
|