【问题标题】:Chromecast EIA-608 Closed Captions with HLS带有 HLS 的 Chromecast EIA-608 隐藏式字幕
【发布时间】:2015-10-09 22:46:09
【问题描述】:

我在我的 android 应用程序中使用 CastCompanionLibrary 来支持 chromecast 发件人。接收应用程序是默认的Styled Media Receiver

我的流是 HLS 并且包含 EIA-608 隐藏式字幕轨道。从文档来看,样式媒体接收器和 CastCompanionLibrary 似乎都支持 EIA-608 隐藏式字幕,但我似乎无法让它工作。

我在初始化 CastCompanionLibrary 时启用 VideoCastManager.FEATURE_CAPTIONS_PREFERENCE,并按如下方式构建轨道:

    MediaTrack videoTrack = new MediaTrack.Builder(0, MediaTrack.TYPE_VIDEO)
            .setContentType(PlayerActivity.HLS_MIME_TYPE)
            .setContentId(playlistUrl)
            .build();

    MediaTrack captionsTrack = new MediaTrack.Builder(1, MediaTrack.TYPE_TEXT)
            .setContentType(MediaFormat.MIMETYPE_TEXT_CEA_608)
            .setSubtype(MediaTrack.SUBTYPE_CAPTIONS)
            .setLanguage(Locale.getDefault())
            .setContentId("eia608/1")
            .setName("Closed Captions")
            .build();

我的猜测是我指定的 contentId 不正确,但文档中似乎没有任何关于带内曲目的 contentId 的内容(也许不是必需的)?

如果有人能参与进来,我将不胜感激;)

【问题讨论】:

    标签: android chromecast google-cast


    【解决方案1】:

    我们的媒体播放器库 (MPL) 支持 HLS(传输流)CEA-608,但为了使用它,您需要编写一个自定义接收器并在播放器上调用 enableCaptions(true)(在接收器端) .我建议您复制我们的reference receiver,然后在那里进行更改;该参考接收器非常接近样式化接收器。一旦您可以让字幕正常工作,您就可以添加一条自定义消息(在 CCL 中支持)来控制来自发件人的消息。

    【讨论】:

    • 感谢您的快速回复。很遗憾,我们必须经过这么多圈才能调用一个库提供的方法。
    猜你喜欢
    • 2014-06-23
    • 2015-08-31
    • 2014-12-25
    • 2017-07-14
    • 2017-04-20
    • 2011-05-22
    • 1970-01-01
    • 2014-07-13
    • 2017-03-22
    相关资源
    最近更新 更多