From af19e0ea890e7b274b6f75f409f00f11e11c1c81 Mon Sep 17 00:00:00 2001 From: tonihei Date: Mon, 10 Oct 2022 11:11:30 +0000 Subject: [PATCH] Treat NO_VALUE as zero when adding up total required bitrate We currently use the literal -1 (=NO_VALUE) when adding up the total. Tracks without known bitrate can be ignored in the calculation, but we should use an explicit value of 0. #minor-release Issue: google/ExoPlayer#10664 PiperOrigin-RevId: 480048126 --- .../exoplayer2/trackselection/AdaptiveTrackSelection.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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 fcf11eca28..eefc253274 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 @@ -753,7 +753,8 @@ public class AdaptiveTrackSelection extends BaseTrackSelection { } trackBitrates[i] = new long[definition.tracks.length]; for (int j = 0; j < definition.tracks.length; j++) { - trackBitrates[i][j] = definition.group.getFormat(definition.tracks[j]).bitrate; + long bitrate = definition.group.getFormat(definition.tracks[j]).bitrate; + trackBitrates[i][j] = bitrate == Format.NO_VALUE ? 0 : bitrate; } Arrays.sort(trackBitrates[i]); }