Why are forced subtitles not displayed on iOS?

Please make sure forced subtitles are added correctly via the Bitmovin Player iOS & tvOS SDK:

let subtitleurl = URL(string: "https://bitmovin-a.akamaihd.net/content/sintel/hls/subtitles_en.vtt")
let mySubtitleTrack = SubtitleTrack(url: subtitleurl, label: "test", identifier: "myid", isDefaultTrack: false, language: "en", forced: true)
sourceConfig.add(subtitleTrack: mySubtitleTrack)

and ensure the following requisites for displaying forced subtitles are met:

  • The User didn't manually select any subtitle track, and
  • The language of forced subtitles matches the audio language of the main content.

Now, you may find that forced subtitles are still not displayed on screen as you would expect. This is typically because there's a native CC track available, which is selected by default, thus blocking the forced ones, as both cannot co-exist.

How to solve that: A simple workaround would be to rely on any relevant player event (e.g. onReady, onPlaying, onSubtitleChanged, ...) to check if a CC track is enabled at that point. If so, you can either:

This will allow the forced subtitles to be rendered on screen as expected 👍