From a3a9c0f3b0eb5d38702aaecfe4308333ebd273ae Mon Sep 17 00:00:00 2001 From: olly Date: Thu, 28 Sep 2017 08:04:01 -0700 Subject: [PATCH] Sanity check current position <= written frame position This avoids spurious position reports following an underrun. Github: #1874 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=170344399 --- .../com/google/android/exoplayer2/audio/DefaultAudioSink.java | 1 + 1 file changed, 1 insertion(+) diff --git a/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java b/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java index 34ea173deb..1cafdc5efe 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java @@ -332,6 +332,7 @@ public final class DefaultAudioSink implements AudioSink { } } + positionUs = Math.min(positionUs, framesToDurationUs(getWrittenFrames())); return startMediaTimeUs + applySpeedup(positionUs); }