Restore renderer.isEnded check when updating the playback position.

If rendererMediaClock is non-null, the rendererMediaClockSource is enabled or
started, so remove the check in updatePositionUs.

When disabling renderers for track selection, renderers with changing track
selections always transition from started -> enabled.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=120819483
This commit is contained in:
andrewlewis 2016-04-26 09:20:57 -07:00 committed by Oliver Woodman
parent e88eeba859
commit 845d250442

View file

@ -82,8 +82,8 @@ import java.util.concurrent.atomic.AtomicInteger;
private boolean playWhenReady; private boolean playWhenReady;
private boolean rebuffering; private boolean rebuffering;
private int state; private int state;
private int customMessagesSent = 0; private int customMessagesSent;
private int customMessagesProcessed = 0; private int customMessagesProcessed;
private long lastSeekPositionMs; private long lastSeekPositionMs;
private long elapsedRealtimeUs; private long elapsedRealtimeUs;
@ -322,8 +322,7 @@ import java.util.concurrent.atomic.AtomicInteger;
} }
private void updatePositionUs() { private void updatePositionUs() {
if (rendererMediaClock != null if (rendererMediaClockSource != null && !rendererMediaClockSource.isEnded()) {
&& rendererMediaClockSource.getState() != TrackRenderer.STATE_DISABLED) {
positionUs = rendererMediaClock.getPositionUs(); positionUs = rendererMediaClock.getPositionUs();
standaloneMediaClock.setPositionUs(positionUs); standaloneMediaClock.setPositionUs(positionUs);
} else { } else {
@ -582,10 +581,7 @@ import java.util.concurrent.atomic.AtomicInteger;
rendererMediaClockSource = null; rendererMediaClockSource = null;
} }
ensureStopped(renderer); ensureStopped(renderer);
if (renderer.getState() == TrackRenderer.STATE_ENABLED) { oldStreams.add(renderer.disable());
TrackStream trackStream = renderer.disable();
oldStreams.add(trackStream);
}
} }
if (newSelection != null) { if (newSelection != null) {
newSelections.add(newSelection); newSelections.add(newSelection);