public SampleAggregator(int fftLength) { if (!IsPowerOfTwo(fftLength)) { throw new ArgumentException("FFT Length must be a power of two"); } _m = (int)Math.Log(fftLength, 2.0); _fftLength = fftLength; _fftBuffer = new Complex[fftLength]; _fftArgs = new FftEventArgs(_fftBuffer); }
private void SA_FftCalculated(object sender, FftEventArgs e) { var points = new List <PointF>(); for (var index = 0; index < 16; index++) { var avg = e.Result.Skip(index * 16).Take(1).Average(r => r.Y); var newVal = GetYPosLog(new Complex() { X = index, Y = avg }); points.Add(new PointF(index, (float)(newVal))); var index1 = index; RunOnUiThread(() => seekbars[index1].Progress = (int)(0 - newVal)); } //RunOnUiThread(() => seekBar2.Progress = 0-(int)points[10].Y); Console.WriteLine((int)points[0].X + "," + (int)points[10].Y); }