processSpec method

STFTSpecFrames processSpec(
  1. Float32List signal, {
  2. SpecMode mode = SpecMode.power,
  3. double dbFloor = -120.0,
})

Processes a whole signal buffer and returns scalar spectrum frames directly.

Implementation

STFTSpecFrames processSpec(
  Float32List signal, {
  SpecMode mode = SpecMode.power,
  double dbFloor = -120.0,
}) {
  if (signal.isEmpty) {
    reset();
    return STFTSpecFrames.empty(bins);
  }
  return _runInputSpecOp(
    signal,
    framesCap: maxProcessFrames(signal.length),
    mode: mode,
    dbFloor: dbFloor,
    op: (inputPtr, outBins, framesCap, mode, dbFloor) {
      return yl_stft_process_spec(
        res.handle,
        inputPtr,
        signal.length,
        outBins,
        framesCap,
        mode.value,
        dbFloor,
      );
    },
  );
}