From e90ab21c91cac2126bc096822446920e1a8815ed Mon Sep 17 00:00:00 2001 From: Armands Malejevs Date: Tue, 7 Jun 2022 12:23:06 +0300 Subject: [PATCH] Fix single track playback --- .../exoplayer/ReactExoplayerView.java | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/android-exoplayer/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java b/android-exoplayer/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java index 703298a8..3eb6c9c1 100644 --- a/android-exoplayer/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java +++ b/android-exoplayer/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java @@ -1612,14 +1612,19 @@ class ReactExoplayerView extends FrameLayout implements supportedFormatLength++; } } - tracks = new int[supportedFormatLength + 1]; - int o = 0; - for (int k = 0; k < allTracks.length; k++) { - Format format = group.getFormat(k); - if (isFormatSupported(format)) { - tracks[o] = allTracks[k]; - supportedTrackList.add(allTracks[k]); - o++; + if (allTracks.length == 1) { + // With only one tracks we can't remove any tracks so attempt to play it anyway + tracks = allTracks; + } else { + tracks = new int[supportedFormatLength + 1]; + int o = 0; + for (int k = 0; k < allTracks.length; k++) { + Format format = group.getFormat(k); + if (isFormatSupported(format)) { + tracks[o] = allTracks[k]; + supportedTrackList.add(allTracks[k]); + o++; + } } } }