Audio Buffer Pool
Pre-allocated buffer pool for zero-allocation audio processing.
This pool provides reusable FloatArray buffers for real-time DSP operations, avoiding garbage collection pauses in the hot path.
Usage
val pool = AudioBufferPool(poolSize = 4, bufferSize = 2048)
// Acquire a buffer for processing
val buffer = pool.acquire()
// Fill with audio samples
audioBuffer.fillFloatSamples(buffer)
// Process with Calibra
calibra.detectPitch(buffer, sampleCount)
// Release back to pool
pool.release(buffer)Content copied to clipboard
Thread Safety
All operations are thread-safe. Multiple threads can acquire and release buffers concurrently.
Parameters
pool Size
Number of buffers to pre-allocate
buffer Size
Size of each buffer in samples