class SignalListener implements AudioListener { float[] left; float[] right; SignalListener(int bsize) { left = new float[bsize]; right = new float[bsize]; } void samples(float[] s) { left = s; } void samples(float[] l, float[] r) { System.arraycopy(l, 0, left, 0, l.length); System.arraycopy(r, 0, right, 0, r.length); } float get(int i) { return (left[i] + right[i]) / 2; } }