我正在构建一个使用Apple的HLS实现的应用程序。我们使用的m3u8文件如下所示:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",DEFAULT=YES,AUTOSELECT=YES,URI="REDACTED"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1,CODECS="avc1.64001f",RESOLUTION=1280x720,SUBTITLES="subs",CLOSED-CAPTIONS=NONE
/url/to/fragments.m38u如你所见,它有一个字幕和一个媒体流。这在Safari中工作得很好,"English“标题如预期的那样出现在列表中。
当在我们的应用程序中实现AVPlayer时,这是行不通的。视频流和字幕按钮出现,但"English“选项不在那里。
苹果的示例m3u8文件可以工作,但我不明白为什么它在Safari中工作,而不是在AVPlayer中工作。
任何帮助都是非常感谢的。
干杯,史蒂夫
发布于 2016-01-23 07:26:18
您是否尝试向#EXT-X-MEDIA行添加LANGUAGE?例如:
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",DEFAULT=YES,AUTOSELECT=YES,LANGUAGE="en",URI="REDACTED"这是来自苹果的示例播放列表:
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",DEFAULT=YES,AUTOSELECT=YES,FORCED=NO,LANGUAGE="en",CHARACTERISTICS="public.accessibility.transcribes-spoken-dialog, public.accessibility.describes-music-and-sound",URI="subtitles/eng/prog_index.m3u8"https://stackoverflow.com/questions/30855229
复制相似问题