From 64cd4383adceab12a5467869b78059f0935610d4 Mon Sep 17 00:00:00 2001 From: Steve Mayhew Date: Wed, 7 Aug 2019 11:04:50 -0700 Subject: [PATCH] Default to not select iFrame oly tracks. Pull in change to default to not use i-Frames for base AdaptiveTrackSelection. The expectation is a subclases, that support transitioning to iFrame, will select these tracks. --- .../trackselection/AdaptiveTrackSelection.java | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/library/core/src/main/java/com/google/android/exoplayer2/trackselection/AdaptiveTrackSelection.java b/library/core/src/main/java/com/google/android/exoplayer2/trackselection/AdaptiveTrackSelection.java index 1b15ad5444..b979c580fc 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/trackselection/AdaptiveTrackSelection.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/trackselection/AdaptiveTrackSelection.java @@ -541,16 +541,10 @@ public class AdaptiveTrackSelection extends BaseTrackSelection { protected boolean canSelectFormat( Format format, int trackBitrate, float playbackSpeed, long effectiveBitrate) { - boolean isIframeOnly = (format.roleFlags & C.ROLE_FLAG_TRICK_PLAY) != 0; + boolean isNonIframeOnly = (format.roleFlags & C.ROLE_FLAG_TRICK_PLAY) == 0; boolean canSelect = Math.round(trackBitrate * playbackSpeed) <= effectiveBitrate; - if (Math.abs(playbackSpeed) > 6.0f) { - canSelect = isIframeOnly; // TODO factor in playback speed... - } else { - canSelect = ! isIframeOnly && canSelect; - } - return canSelect; - + return canSelect && isNonIframeOnly; // Default is not to use the IDR only tracks in selection } /**