android - Exoplayer 无法加载 HLS 视频的字幕

标签 android exoplayer

这是我的嵌入字幕的 m3u8:

#EXTM3U


#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="Vietnamses",DEFAULT=NO,AUTOSELECT=YES,FORCED=NO,LANGUAGE="vi",CHARACTERISTICS="public.accessibility.transcribes-spoken-dialog, public.accessibility.describes-music-and-sound",URI="http://api.mhdviet.vn/sub.m3u8?language=VIE&movieid=8220&ep=1"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="Vietnamses (FORCED)",DEFAULT=NO,AUTOSELECT=YES,FORCED=YES,LANGUAGE="vi",URI="http://api.mhdviet.vn/sub.m3u8?language=VIE&movieid=8220&ep=1"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",DEFAULT=NO,AUTOSELECT=YES,FORCED=NO,LANGUAGE="eng",CHARACTERISTICS="public.accessibility.transcribes-spoken-dialog, public.accessibility.describes-music-and-sound",URI="http://api.mhdviet.vn/sub.m3u8?language=ENG&movieid=8220&ep=1"
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English (FORCED)",DEFAULT=NO,AUTOSELECT=YES,FORCED=YES,LANGUAGE="eng",URI="http://api.mhdviet.vn/sub.m3u8?language=ENG&movieid=8220&ep=1"

#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=855040,RESOLUTION=480x352,SUBTITLES="subs"
http://allvarhsin.flix-cdn.com/FlixVOD/ACompany/I_Frankenstein_2014/1f9daf14d2f84cd8cd0121804ec1e35a/480/480.m3u8

我使用 Exoplayer 加载我的 hls 视频。 我的 m3u8 文件有什么问题?

最佳答案

在 ExoPlayer 1.5 中,您的主 list 被解析,4 种语言被添加到集合中。结果是一个有效的 HlsMasterPlaylist。 视频播放也正确开始。

如果我在 HlsMasterPlaylist 类中注释掉字幕成员(及其初始化),代码仍会以相同的方式编译和运行。

public final class HlsMasterPlaylist extends HlsPlaylist {
    public final List<Variant> variants;
    //public final List<Subtitle> subtitles;

看来您的 list 已正确解析,但未使用链接的字幕(该部分尚未实现)。

关于android - Exoplayer 无法加载 HLS 视频的字幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32217092/

相关文章:

exoplayer - 从后台线程还是从主 ui 线程使用 exoplayer 更好?

android - 检测 Android TV 上的 HDMI 服务是否已启动

android - Kotlin - 无法初始化伴随对象值

java - Android ACTION_UP 在 ACTION_MOVE 之后不会被触发

javascript - 如何在 Android 浏览器上使用 javascript 打开/处理多个链接

android - exoplayer 播放器错误无法连接到 hls 链接

java -> 无法找到 com.google.android.exoplayer :exoplayer-core:r2. 4.2

android - ExoPlayer 和启动/暂停/seekTo 命令

Android 库项目 : Refactoring and Navigation

android - 当应用程序被杀死时,应用程序小部件点击不起作用