Commit 80fff0b7 by tonihei Committed by Oliver Woodman

Discard buffer in FakeExoPlayer.

This is in line with a recent change in ExoPlayerImplInternal. Not discarding the buffer
causes OOM when running simulated playbacks.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=177573930
parent 23cc1021
...@@ -85,6 +85,14 @@ public class FakeAdaptiveMediaPeriod extends FakeMediaPeriod ...@@ -85,6 +85,14 @@ public class FakeAdaptiveMediaPeriod extends FakeMediaPeriod
} }
@Override @Override
public void discardBuffer(long positionUs, boolean toKeyframe) {
super.discardBuffer(positionUs, toKeyframe);
for (ChunkSampleStream<FakeChunkSource> sampleStream : sampleStreams) {
sampleStream.discardBuffer(positionUs, toKeyframe);
}
}
@Override
public long getBufferedPositionUs() { public long getBufferedPositionUs() {
super.getBufferedPositionUs(); super.getBufferedPositionUs();
return sequenceableLoader.getBufferedPositionUs(); return sequenceableLoader.getBufferedPositionUs();
......
...@@ -364,6 +364,7 @@ public class FakeSimpleExoPlayer extends SimpleExoPlayer { ...@@ -364,6 +364,7 @@ public class FakeSimpleExoPlayer extends SimpleExoPlayer {
public void run() { public void run() {
try { try {
maybeContinueLoading(); maybeContinueLoading();
mediaPeriod.discardBuffer(rendererPositionUs, /* toKeyframe= */ false);
boolean allRenderersEnded = true; boolean allRenderersEnded = true;
boolean allRenderersReadyOrEnded = true; boolean allRenderersReadyOrEnded = true;
if (playbackState == Player.STATE_READY) { if (playbackState == Player.STATE_READY) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment