通过Blob网址在chromecast上显示来自opensubtitles.org的字幕不起作用

问题描述

我想在chromecast上显示opensubtitles.org的字幕(通过Android应用)。

我可以从opensubtitles api获得的唯一直接链接是.gz文件。 我现在要做的是,下载.gz文件,将其解压缩,将其从srt转换为vtt,并将字幕字符串从android应用发送至chromecast。在chromecast接收器上,我创建一个web / vtt blob网址并添加曲目。 不幸的是,当我单击Android应用程序中的字幕图标并选择字幕时,什么也没发生。有谁知道我可能做错了什么? chromecast是否不接受Blob网址?我想避免创建自己的(本地)服务器。

这是我的演员表接收者代码

        let subs = data.message; //this is the string containing the subtitles
        console.log("subs received: " + subs)

        let blob = new Blob([subs],{type: "text/vtt"});
        let url = URL.createObjectURL(blob);
        console.log("blob url created: " + url);

        let tracksManager = playerManager.getTextTracksManager();

        let track = tracksManager.createTrack();
        track.trackId = 9;
        track.type = cast.framework.messages.TrackType.TEXT;
        track.subtype = "SUBTITLES";
        track.name = "opensubtitles";
        track.language = "en-US";
        track.trackContentId = url;

        console.log("track created")

        tracksManager.addTracks([track]);

        console.log("track added")

这是chromecast日志:

subs received: WEBVTT

1
00:00:01.584 --> 00:00:05.379
Phew! Wow. It is raining
cats and dogs out there.

2
00:00:05.839 --> 00:00:07.214
Holy moly

...

blob url created: blob:https://example.com/729edd9b-8777-497d-adf5-ef3a83b6664d
track created
track added

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...