process method

Float32List process(
  1. Float32List input
)

Resamples input using the cached native context and reusable buffers.

The returned Float32List is a fresh Dart allocation containing the resampled signal. Native plan state and FFI buffers are retained for subsequent calls.

Implementation

Float32List process(Float32List input) {
  final inLen = input.length;
  final outLen = outLenFor(inLen);
  final r = res;

  _ensureInputCapacity(inLen);
  _ensureOutputCapacity(outLen);

  r.inPtr.asTypedList(inLen).setAll(0, input);
  yl_resample_ctx_process(r.ctx, r.inPtr, inLen, r.outPtr);

  return Float32List.fromList(r.outPtr.asTypedList(outLen));
}