Hello! I'm looking for more information on the "Auto" subtitle language setting on tvOS. I work on a video streaming application which uses AVPlayerViewController, HLS, subtitles in WebVTT format. The app has been in production for quite some time and everything works perfectly with respect to video streaming and subtitles except the "Auto" setting on tvOS, which never results in any subtitles at all.
I can't find any documentation on what criteria the "Auto" setting uses to determine what subtitles to show. I have tried looking at the iTunes app on tvOS as a signifier of correct behavior, but its behavior is inconsistent (sometimes auto shows no subtitles until another language is selected, after which auto will continue to show the recently selected language).
Other pertinent details and things I have already checked:
- appliesMediaSelectionCriteriaAutomatically is set to true on the AVPlayer object
- m3u8 file lists subtitles with AUTOSELECT enabled and both DEFAULT and FORCED disabled as shown below.
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="en",NAME="English",AUTOSELECT=YES,DEFAULT=NO,FORCED=NO,URI="segments/subtitles/en/prog_index.m3u8"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",LANGUAGE="es",NAME="Español",AUTOSELECT=YES,DEFAULT=NO,FORCED=NO,URI="segments/subtitles/es/prog_index.m3u8"
Any insight anyone can provide would be appreciated as far as what this setting is intended to represent, whether it is up to the application to implement the "automatic" behavior or if given the above conditions, the correct language selection should be determined by the operating system when appliesMediaSelectionCriteriaAutomatically is used.
I spoke to someone from Apple who provided the following information: “Auto” means to display forced subtitles, if any are available, in alignment with the device’s current preferred language options. Forced subtitles in this case refers to the value of the FORCED attribute of the subtitle track in the .m3u8 file.