How to automatically select default subtitle tracks?
The Bitmovin Player intentionally does not auto-select subtitle tracks, even when isDefault=true. Apps that want to honor the default flag can do so explicitly, as shown here:
player.on(::onSubtitleTracksChanged)
...
private fun onSubtitleTracksChanged(event: SourceEvent.SubtitleTracksChanged) {
val tracks = event.newSubtitleTracks
Log.i(TAG, "Available subtitle tracks (${tracks.size}):")
tracks.forEach { track ->
Log.i(TAG, " id=${track.id} label=${track.label} lang=${track.language} isDefault=${track.isDefault}")
}
val defaultTrack = tracks.firstOrNull { it.isDefault }
if (defaultTrack != null) {
Log.i(TAG, "Selecting default subtitle track: id=${defaultTrack.id} label=${defaultTrack.label}")
player.source?.setSubtitleTrack(defaultTrack.id)
}
}