gpt4 book ai didi

来自 WEBVTT 的 RDF/JSON 的 Javascript 解析器

转载 作者:数据小太阳 更新时间:2023-10-29 06:13:20 27 4
gpt4 key购买 nike

晚上好。

开门见山 - 我需要一个脚本,从 WEBVTT 文件中的特定时间间隔获取 RDF/JSON 结构。有这种东西吗?

RDF/JSON 是 Talis 指定的文件结构,如下所示:

{ "S" : { "P" : [ O ] } }

WEBVTT 实现上述结构如下:

0
00:00:00,000 --> 00:00:46,119
{ "S" : { "P" : [ O ] } }

1
00:00:48,000 --> 00:00:50,211
{ "S" : { "P" : [ O ] } }

...

我会在查看视频文件时使用这样的文件,当我点击时间轴的某个部分时,脚本会获取相应的 RDF/JSON 代码(我现在可以这样做,有一个 WEBVTT 解析器已经),然后解析器从 RDF/JSON 结构中获取对象中请求的信息。

当我看到 jQuery 实现了 getJson 时,我真的很高兴,但它只适用于“普通”json 文件。

最好的办法可能是只写脚本,但我的时间和知识非常有限,所以我想听听任何人可能知道的任何建议或解决方案。

最佳答案

我已经为我的 <track> 编写了一个 WebVTT 解析器/HTML5 视频字幕 polyfill Captionator .

随意挑选开发分支的源代码(它具有最好的 WebVTT 合规性,因此最好查看它而不是稳定分支。)

解析器代码从这里开始: https://github.com/cgiffard/Captionator/blob/captioncrunch/js/captionator.js#L1686

但最终,您所描述的内容似乎大致符合 metadata 的预期用例。轨道类型(如 WHATWG's TimedTextTrack spec 中所述。)您可以使用 Captionator (我也很乐意向您推荐另一个库,但我不知道还有什么没有与整个视频播放器,或者实现您需要的 TimedTextTrack JS API) 为其提供支持 - TextTrack.oncuechange事件和 TextTrack.activeCues当用户在视频时间轴内搜索时,列表使您能够监听提示的变化。然后您可以获得每个提示的文本(减去提示元数据和标题)并将其解析为 JSON。只需像下面这样设置字幕轨道:

<video src="myvideo.webm" poster="poster.jpg" width="512" height="288">
<track kind="metadata" src="meta.webvtt" type="text/webvtt" srclang="en" label="Metadata Track" default />
</video>

然后,包含字幕库,根据 documentation 对其进行初始化,选择您的轨道并设置事件处理程序。您可以像这样访问单个提示的文本:

var cueText = document.getElementById("video").tracks[0].activeCues[0].getCueAsSource();

然后只是:

var RDFData = JSON.parse(cueText);

祝你好运:)

关于来自 WEBVTT 的 RDF/JSON 的 Javascript 解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6905167/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com