在iOS下使用CC608有很多神秘感。
Apple的UsingHLS提议在清单中声明它们:
#EXT-X-MEDIA:TYPE=CLOSED-CAPTIONS,GROUP-ID="cc",NAME="CC1",LANGUAGE="en",DEFAULT=YES,AUTOSELECT=YES,INSTREAM-ID="CC1"
#EXT-X-MEDIA:TYPE=CLOSED-CAPTIONS,GROUP-ID="cc",NAME="CC2",LANGUAGE="sp",AUTOSELECT=YES,INSTREAM-ID="CC2"
#EXT-X-STREAM-INF:BANDWIDTH=1000000,SUBTITLES="subs",CLOSED-CAPTIONS="cc" x.m3u8
但Apple的official sample stream确实包含了嵌入到MPEG中的CC608,但他们仍没有在清单中列出它们!
在该示例流上,我可以使用 closedCaptionDisplayEnabled = YES 将CC608 打开,但此方法不允许选择特定语言。
在Apple的开发论坛中,我发现this question有一个很有希望的答案:
你还在调用“播放器吗?.closedCaptionDisplayEnabled = true”?
没有必要这样做。如果您正确编写了HLS播放列表 使用适当的语言标签,用户可以启用标题 他们选择的语言,或完全禁用它们。
我无法在iOS中找到API,这样我就可以:
非常感谢您的帮助!