private boolean shouldSetProgressBeforeDrawing() {
    LottieComposition composition = this.composition;
    if (composition == null) {
      return false;
    }
    float lastDrawnProgress = this.lastDrawnProgress;
    float currentProgress = animator.getAnimatedValueAbsolute();
    this.lastDrawnProgress = currentProgress;

    float duration = composition.getDuration();

    float deltaProgress = Math.abs(currentProgress - lastDrawnProgress);
    float deltaMs = deltaProgress * duration;
    return deltaMs >= MAX_DELTA_MS_ASYNC_SET_PROGRESS;
  }
Helper for the async execution path to potentially call setProgress
before drawing if the current progress has drifted sufficiently far
from the last set progress.

@see AsyncUpdates
@see #setAsyncUpdates(AsyncUpdates)
lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java