Class PrePostProcessor#
Note
Construct via the Class AniraWeb factory in most cases:
aniraWeb.PrePostProcessor(...) rather than new PrePostProcessor(...). The
factory threads the WASM instance through for you.
- class PrePostProcessor(wasmInstance, config, createFn)#
TypeScript wrapper for anira::PrePostProcessor Thread-safe C API wrapper
- Extends:
BaseWrapper
- Arguments:
wasmInstance (AniraWasmInstance)
config (PossiblePointer<InferenceConfig>)
createFn ((configPtr: number) => number)
- afterInference(buffers, backend)#
Mirrors
anira::PrePostProcessor::after_inference(). Receives the model’s output tensors (aVectorBufferF) produced by the backend. Runs on the inference worker, not the audio worklet.- Arguments:
buffers (PossiblePointer<VectorBufferF>)
backend (number)
- beforeInference(buffers, backend)#
Mirrors
anira::PrePostProcessor::before_inference(). Receives the model’s input tensors (aVectorBufferF) about to be fed to the backend. Runs on the inference worker, not the audio worklet.- Arguments:
buffers (PossiblePointer<VectorBufferF>)
backend (number)
- destroy()#
Free the underlying C++ object. See Lifecycle and Cleanup for when to call this.
- getInput(channel, tensorIndex)#
Mirrors
anira::PrePostProcessor::get_input().- Arguments:
channel (number)
tensorIndex (number)
- Returns:
number
- getOutput(channel, tensorIndex)#
Mirrors
anira::PrePostProcessor::get_output().- Arguments:
channel (number)
tensorIndex (number)
- Returns:
number
- popSamplesFromBuffer(ringBuffer, buffer, numSamples)#
Mirrors
anira::PrePostProcessor::pop_samples_from_buffer().- Arguments:
ringBuffer (PossiblePointer<RingBuffer>)
buffer (PossiblePointer<BufferF>)
numSamples (number)
- popSamplesFromBuffer(ringBuffer, buffer, numNewSamples, numOldSamples)#
Mirrors
anira::PrePostProcessor::pop_samples_from_buffer().- Arguments:
ringBuffer (PossiblePointer<RingBuffer>)
buffer (PossiblePointer<BufferF>)
numNewSamples (number)
numOldSamples (number)
- popSamplesFromBuffer(ringBuffer, buffer, numNewSamples, numOldSamples, offset)#
Mirrors
anira::PrePostProcessor::pop_samples_from_buffer().- Arguments:
ringBuffer (PossiblePointer<RingBuffer>)
buffer (PossiblePointer<BufferF>)
numNewSamples (number)
numOldSamples (number)
offset (number)
- popSamplesFromBuffer(ringBuffer, buffer, numNewSamples, numOldSamples, offset, numBatches)#
Batched overlapping-window extraction: runs the offset extraction numBatches times in native code, striding the output offset by the window size (numNewSamples + numOldSamples) each batch. Prefer this over a JS loop for large batches — it crosses the JS↔Wasm boundary once instead of once per batch element.
Mirrors
anira::PrePostProcessor::pop_samples_from_buffer().- Arguments:
ringBuffer (PossiblePointer<RingBuffer>)
buffer (PossiblePointer<BufferF>)
numNewSamples (number)
numOldSamples (number)
offset (number)
numBatches (number)
- postProcess(buffers, ringBuffers, backend)#
Mirrors
anira::PrePostProcessor::post_process().- Arguments:
buffers (PossiblePointer<VectorBufferF>)
ringBuffers (PossiblePointer<VectorRingBuffer>)
backend (number)
- preProcess(ringBuffers, buffers, backend)#
Mirrors
anira::PrePostProcessor::pre_process().- Arguments:
ringBuffers (PossiblePointer<VectorRingBuffer>)
buffers (PossiblePointer<VectorBufferF>)
backend (number)
- pushSamplesToBuffer(buffer, ringBuffer, numSamples)#
Mirrors
anira::PrePostProcessor::push_samples_to_buffer().- Arguments:
buffer (PossiblePointer<BufferF>)
ringBuffer (PossiblePointer<RingBuffer>)
numSamples (number)
- setInput(value, channel, tensorIndex)#
Mirrors
anira::PrePostProcessor::set_input().- Arguments:
value (number)
channel (number)
tensorIndex (number)
- setOutput(value, channel, tensorIndex)#
Mirrors
anira::PrePostProcessor::set_output().- Arguments:
value (number)
channel (number)
tensorIndex (number)