public override PeakInfo GetNextPeak() { var samplesRead = Provider.Read(ReadBuffer, 0, ReadBuffer.Length); var max = (samplesRead == 0) ? 0 : ReadBuffer.AsSpan(0, samplesRead).Max(); var min = (samplesRead == 0) ? 0 : ReadBuffer.AsSpan(0, samplesRead).Min(); return(new PeakInfo(min, max)); }
public override PeakInfo GetNextPeak() { var samplesRead = Provider.Read(ReadBuffer, 0, ReadBuffer.Length); var sum = (samplesRead == 0) ? 0 : ReadBuffer.AsSpan(0, samplesRead).SumOfAbsoluteValues(); var average = sum / samplesRead; return(new PeakInfo(average * (0 - scale), average * scale)); }