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)
    }
}