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 b979c580fc..22b203f439 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,10 +541,10 @@ public class AdaptiveTrackSelection extends BaseTrackSelection { protected boolean canSelectFormat( Format format, int trackBitrate, float playbackSpeed, long effectiveBitrate) { - boolean isNonIframeOnly = (format.roleFlags & C.ROLE_FLAG_TRICK_PLAY) == 0; + boolean isIframeOnlyFormat = (format.roleFlags & C.ROLE_FLAG_TRICK_PLAY) != 0; boolean canSelect = Math.round(trackBitrate * playbackSpeed) <= effectiveBitrate; - return canSelect && isNonIframeOnly; // Default is not to use the IDR only tracks in selection + return canSelect && !isIframeOnlyFormat; // Default is not to use the IDR only tracks in selection } /** diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java index 5a8a95667c..ed6f59bbec 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java @@ -470,7 +470,6 @@ public final class HlsMediaPeriod implements MediaPeriod, HlsSampleStreamWrapper : Collections.emptyMap(); boolean hasVariants = !masterPlaylist.variants.isEmpty(); - boolean hasIFrameVariants = !masterPlaylist.iFrameVariants.isEmpty(); List audioRenditions = masterPlaylist.audios; List subtitleRenditions = masterPlaylist.subtitles; @@ -564,7 +563,8 @@ public final class HlsMediaPeriod implements MediaPeriod, HlsSampleStreamWrapper long positionUs, List sampleStreamWrappers, List manifestUrlIndicesPerWrapper, - Map overridingDrmInitData, List variants) { + Map overridingDrmInitData, + List variants) { int[] variantTypes = new int[variants.size()]; int videoVariantCount = 0; int audioVariantCount = 0; @@ -627,8 +627,8 @@ public final class HlsMediaPeriod implements MediaPeriod, HlsSampleStreamWrapper List muxedTrackGroups = new ArrayList<>(); if (variantsContainVideoCodecs) { Format[] videoFormats = new Format[selectedVariantsCount]; - for (int i1 = 0; i1 < videoFormats.length; i1++) { - videoFormats[i1] = deriveVideoFormat(selectedPlaylistFormats[i1]); + for (int i = 0; i < videoFormats.length; i++) { + videoFormats[i] = deriveVideoFormat(selectedPlaylistFormats[i]); } muxedTrackGroups.add(new TrackGroup(videoFormats));