Javascript 通过blob url在chromecast上显示opensubtitles.org中的字幕不起作用
我想在我的chromecast上显示opensubtitles.org上的字幕(通过我的android应用程序) 我能从OpenSubtitletsAPI获得的唯一直接链接是一个.gz文件。 我现在正在做的是,我下载.gz文件,解包,将其从srt转换为vtt,并将字幕字符串从android应用程序发送到chromecast。在chromecast接收器上,我创建一个web/vtt blob url并添加曲目。 不幸的是,当我点击android应用程序中的字幕图标并选择字幕时,什么也没发生。有人知道我可能做错了什么吗?或者chromecast不接受blob URL?我想避免创建自己的(本地)服务器 这是我的演员接收代码:Javascript 通过blob url在chromecast上显示opensubtitles.org中的字幕不起作用,javascript,android,chromecast,google-cast,Javascript,Android,Chromecast,Google Cast,我想在我的chromecast上显示opensubtitles.org上的字幕(通过我的android应用程序) 我能从OpenSubtitletsAPI获得的唯一直接链接是一个.gz文件。 我现在正在做的是,我下载.gz文件,解包,将其从srt转换为vtt,并将字幕字符串从android应用程序发送到chromecast。在chromecast接收器上,我创建一个web/vtt blob url并添加曲目。 不幸的是,当我点击android应用程序中的字幕图标并选择字幕时,什么也没发生。有人知
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
提前谢谢