Fix incorrect renderer reset enable position

handlePeriodPrepared
->setPlayingPeriodHolder
->enableRenderers

passes rendererPositionUs to renderer.enable(), but
this value is not set correctly.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=138176114
This commit is contained in:
olly 2016-11-04 04:07:57 -07:00 committed by Oliver Woodman
parent e2081f40fb
commit 3e2cb9f89a

View File

@ -1069,12 +1069,12 @@ import java.io.IOException;
if (playingPeriodHolder == null) {
// This is the first prepared period, so start playing it.
readingPeriodHolder = loadingPeriodHolder;
resetRendererPosition(readingPeriodHolder.startPositionUs);
setPlayingPeriodHolder(readingPeriodHolder);
if (playbackInfo.startPositionUs == C.TIME_UNSET) {
// Update the playback info when seeking to a default position.
playbackInfo = new PlaybackInfo(playingPeriodHolder.index,
playingPeriodHolder.startPositionUs);
resetRendererPosition(playbackInfo.startPositionUs);
updatePlaybackPositions();
eventHandler.obtainMessage(MSG_POSITION_DISCONTINUITY, playbackInfo).sendToTarget();
}
@ -1116,8 +1116,7 @@ import java.io.IOException;
}
}
private void setPlayingPeriodHolder(MediaPeriodHolder periodHolder)
throws ExoPlaybackException {
private void setPlayingPeriodHolder(MediaPeriodHolder periodHolder) throws ExoPlaybackException {
int enabledRendererCount = 0;
boolean[] rendererWasEnabledFlags = new boolean[renderers.length];
for (int i = 0; i < renderers.length; i++) {