【问题标题】:Cast Receiver App does not show subtitlesCast Receiver App 不显示字幕
【发布时间】:2014-12-08 06:41:54
【问题描述】:

根据Release Notes(7 月 8 日)、Sender 的文档和this question 的更新答案,Google Cast 的 Styled Media Receiver 现在支持隐藏式字幕或字幕轨道。

但是,当我告诉 Default 或 Styled Media Receiver 显示文本轨道时,什么也没有发生。正如我在日志中看到的那样,它甚至没有从服务器加载.vtt

我可以告诉接收器应用程序很好地获取了文本轨道,但即使使用Android example app,字幕也永远不会出现。根据所有日志,它们正在被发送,并且接收者应用程序被告知显示它们 - 但它们从未出现,甚至从未加载。

MediaTrack 正在创建如下:

new MediaTrack.Builder(2, MediaTrack.TYPE_TEXT)
             .setName("Deutsch")
             .setSubtype(MediaTrack.SUBTYPE_CAPTIONS)
             .setContentId("https://example.com/video/caption_de.vtt")
             .setContentType("text/vtt")
             .setLanguage("de").build();

我已经三次检查该文件是否存在并且正在以text/vtt 类型加载。但这并不重要,因为玩家甚至从未请求过该文件。 MediaTrack.SUBTYPE_CAPTIONSMediaTrack.SUBTYPE_SUBTITLES 我都试过了。

所以我需要知道,在 Styled Media Receiver 中声称支持 CC 只是一个谎言吗?或者是否需要一些未记录的技巧才能使其成为可能?

如果仍然需要自定义接收器,我想知道如何将example player 转换为支持字幕,因为它似乎也不支持它们。

【问题讨论】:

    标签: android chromecast google-cast


    【解决方案1】:

    首先,我建议您在以后的帖子中更改措辞(re: “..is just a lie..”);这根本不合适。其次,它可以工作,您可以使用 CastVideos-android 应用程序(或它的 ios 变体)进行测试;前三个视频有CC。最后,我们的文档站点(https://developers.google.com/cast/docs/android_sender,在“使用 Tracks API”下)上有关于该主题的文档。

    【讨论】:

    • 我为我的措辞道歉,但是在按照每个 T 教程学习了三个小时后,我有点沮丧。事实上,我正在使用 CastVideos-android 应用程序,我所做的只是将 json 文件中的 Cast 应用程序 ID 和 URL 替换为 .m3u8 流和我自己的 .vtt 文件。但它们永远不会被加载。
    • 它是否适用于 CastVideos-android 而无需您进行任何更改?
    • 我重新克隆了 CastVideos-android 应用并输入了我自己的演员应用 ID。字幕显示正常。然后我用视频替换了.json,用这个替换了曲目:neighr.com/hls/movies.json。字幕停止工作。该应用程序甚至不从服务器请求文件。拜托,拜托,请告诉我我做错了什么,我想我在这里疯了。
    • .vtt 只是一个普通文件,所有文件的 CORS 都已正确设置。但是 .vtt 甚至没有被请求,所以 CORS 不是问题。明天会尝试让我的演员给我一些控制台输出。
    • 好吧,我用了Chromecast上的开发者工具,完全没有出错。然后,出于绝望,我用 Sintel 的.mp4 替换了.m3u8 文件。令人惊讶的是,字幕已正确加载并显示。所以我的最终结论是.vtt 字幕不适用于 HLS 流。这是一个错误吗?我应该在某处提交错误吗?
    猜你喜欢
    • 2021-10-01
    • 2018-02-16
    • 2018-06-20
    • 1970-01-01
    • 2016-10-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-11
    • 2017-01-14
    相关资源
    最近更新 更多