MUX
The purpose of the mux component is to take a number of independant inputs (currently 2) from individual graph nodes and mux them together to a single multichannel output. Inputs will not be mixed in any way, but simply muxed to individual channels on a single output.
This is useful for components that needs multiple inputs from different sources, such as LMS, Echo Cancellers, etc.
Practically, this is done by implementing a process
function for each input. Each process will
take the incoming data and place it in the output buffer. When both process
functions have been
called, a full combined output buffer (containing two channels) is ready and will be pushed to the next
downstream node.
Interface
- Inputs
The Mux component supports multiple inputs, each triggered by a push function. Input data are in float32 format and must contain one channel only!
- Outputs
The component provides a single output, which will contain a number of channels matching the inputs. output data is in float32 and can be interleaved or non-interleaved, depending on output buffer.
Implementations
Implementations are available on FC and as a C model.
Tests
nonreg.py
implements 8 tests for both model and FC implementation.