Android Chromecast伴奏库-设置TextTrackStyle错误2103

Android Chromecast伴奏库-设置TextTrackStyle错误2103,android,streaming,video-streaming,chromecast,castcompanionlibrary,Android,Streaming,Video Streaming,Chromecast,Castcompanionlibrary,我正在使用并尝试为标题设置自定义textrackstyle 在创建MediaInfo时,我正在将此TexTextStyle设置为MediaInfo: // set CC style TextTrackStyle textTrackStyle = new TextTrackStyle(); textTrackStyle.setBackgroundColor(Color.parseColor("#FFFF

我正在使用并尝试为标题设置自定义
textrackstyle

在创建MediaInfo时,我正在将此
TexTextStyle
设置为MediaInfo:

                // set CC style
                TextTrackStyle textTrackStyle = new TextTrackStyle();
                textTrackStyle.setBackgroundColor(Color.parseColor("#FFFFFF"));
                textTrackStyle.setForegroundColor(ContextCompat.getColor(mContext, R.color.blue));

                MediaInfo mediaInfo = new MediaInfo.Builder(url)
                        .setStreamDuration(movieVideoItem.getDuration())
                        .setStreamType(MediaInfo.STREAM_TYPE_NONE)
                        .setContentType(type)
                        .setMetadata(mediaMetadata)
                        .setMediaTracks(tracks)
                        .setCustomData(customData)
                        .setTextTrackStyle(textTrackStyle)
                        .build();
但在Chromecast侧没有可见的结果。我还试图更改
VideoCastManager
方法
setTextTrackStyle

 public void setTextTrackStyle(TextTrackStyle style) {
    // CUSTOM TEXT TRACK STYLE HERE
    TextTrackStyle textTrackStyle = new TextTrackStyle();
    textTrackStyle.setBackgroundColor(Color.parseColor("#FF0000"));
    textTrackStyle.setForegroundColor(Color.parseColor("#0000FF"));

    mRemoteMediaPlayer.setTextTrackStyle(mApiClient, textTrackStyle)
            .setResultCallback(new ResultCallback<MediaChannelResult>() {
                @Override
                public void onResult(MediaChannelResult result) {
                    if (!result.getStatus().isSuccess()) {
                        onFailed(R.string.ccl_failed_to_set_track_style,
                                result.getStatus().getStatusCode());
                    }
                }
            });
    for (VideoCastConsumer consumer : mVideoConsumers) {
        try {
            consumer.onTextTrackStyleChanged(textTrackStyle);
        } catch (Exception e) {
            LOGE(TAG, "onTextTrackStyleChanged(): Failed to inform " + consumer, e);
        }
    }
}
Chromecast上的结果只是带有黑色背景的白色文本

//已添加编辑Chromecast接收器日志:

在Chromecast接收器日志中,我找到了一些
TextTrackStyle
,但这不是我试图设置的样式:

 Received message: {"data":"{\"requestId\":4,\"type\":\"EDIT_TRACKS_INFO\",\"textTrackStyle\":{\"fontScale\":1,\"foregroundColor\":\"#4285F4FF\",\"backgroundColor\":\"#FFFFFFFF\"},\"mediaSessionId\":1}"

这些是我从Android Sender应用程序发送的不同颜色。我在
onLoad
方法中根本看不到任何
TextTrackStyle
。所以我不确定问题是出在Android端还是Chromecast端?

首先需要确定问题是出在发送方还是接收方。您提到的错误表示您发送了相同的消息/请求,而另一个消息/请求在队列中。通过查看连接到接收方的chrome调试器上的控制台日志,您应该能够看到发送方是否正在发送您想要的信息。我想你看到的是字幕,但不能设计它,对吗?是的,你是对的。我可以看到标题,但没有我的自定义样式。他们一直使用白色字体和黑色背景。我仍然得到这个错误2103。公司库是否可能以某种方式将某些默认TextTrackStyle应用于标题?我应该如何找到问题所在?我检查了Chromecast控制台,我可以看到,我实际上正在将样式发送到Chromecast接收器。我编辑了我的答案-从Chromecast接收器添加了控制台日志。在这种情况下,这似乎是接收器端的问题,与CastCompanionLibrary无关。我知道,使用侧面加载的VTT,你可以改变风格(android应用程序显示),所以这可能是使用嵌入式VTT的副作用;您可能希望在我们的问题跟踪程序上打开一张票据并提供信息;确保您在接收器上提供完整的日志。感谢您的时间和回答!实际上,我向Chromecast接收器添加了更多日志,现在我可以看到,Android端的TextTrackStyle是空的。它看起来像这样:“CustomTextTrackStyle:{}embedded”括号内应该有Json格式的my样式。即使当我尝试使用侧面加载的TTML格式时,无论我从Android发送什么,TextTrackStyle都是一样的。
 Received message: {"data":"{\"requestId\":4,\"type\":\"EDIT_TRACKS_INFO\",\"textTrackStyle\":{\"fontScale\":1,\"foregroundColor\":\"#4285F4FF\",\"backgroundColor\":\"#FFFFFFFF\"},\"mediaSessionId\":1}"