Reset playback speed when live speed control becomes unused

Issue: #8664
#minor-release
PiperOrigin-RevId: 360877086
This commit is contained in:
bachinger 2021-03-04 11:36:23 +00:00 committed by Ian Baker
parent 8fbb971dfa
commit 8dc63dd2aa
2 changed files with 6 additions and 1 deletions

View File

@ -25,6 +25,8 @@
* Core
* Move `getRendererCount` and `getRendererType` methods from `Player` to
`ExoPlayer`.
* Reset playback speed when live playback speed control becomes unused
([#8664](https://github.com/google/ExoPlayer/issues/8664)).
* Remove deprecated symbols:
* Remove `Player.DefaultEventListener`. Use `Player.EventListener`
instead.

View File

@ -1821,7 +1821,10 @@ import java.util.concurrent.atomic.AtomicBoolean;
MediaPeriodId oldPeriodId,
long positionForTargetOffsetOverrideUs) {
if (newTimeline.isEmpty() || !shouldUseLivePlaybackSpeedControl(newTimeline, newPeriodId)) {
// Live playback speed control is unused.
// Live playback speed control is unused for the current period, reset speed if adjusted.
if (mediaClock.getPlaybackParameters().speed != playbackInfo.playbackParameters.speed) {
mediaClock.setPlaybackParameters(playbackInfo.playbackParameters);
}
return;
}
int windowIndex = newTimeline.getPeriodByUid(newPeriodId.periodUid, period).windowIndex;