code: private int getLinearInterpolated(final int currentSamplePos, final int currentTuningPos)
  	{
  		final long s1 = ((long)sample[currentSamplePos  ])<<Helpers.SAMPLE_SHIFT;
  		final long s2 = ((long)sample[currentSamplePos+1])<<Helpers.SAMPLE_SHIFT;
  		return (int)((s1 + (((s2-s1)*((long)currentTuningPos))>>Helpers.SHIFT))>>Helpers.SAMPLE_SHIFT);
  	}
docs: Does the linear interpolation with the next sample
  @since 06.06.2006
  @param currentTuningPos
  @return