大家好,我在将字幕添加到视频中时遇到了这个问题。
我将.vtt作为值放置在对象中,但似乎浏览器不喜欢其输出方式。我在这里遵循本指南
这是我的控制台上弹出的错误
{name: "", message: "Converting circular structure to JSON", error: TypeError: Converting circular structure to JSON at Object.stringify (native) at Object.<ano…}
captions-en.vtt
00:00:01.000 --> 00:00:15.000
What brings you to the land
of the gatekeepers?
00:00:15.500 --> 00:00:20.500
I'm searching for someone.
00:00:36.500 --> 00:00:39.000
A dangerous quest for a lone hunter.
00:00:41.500 --> 00:00:44.000
I've been alone for as long
as I can remember.
Java脚本
jwplayer("my-video").setup({
file: "<my-video-file>",
width: "100%",
aspectratio: "24:10",
primary: "flash",
tracks: [{
file: "/assets/captions/captions-en.vtt",
label: "English",
kind: "captions"
}]
});
我还确保保存为“ UTF-8”编码。
我还有其他步骤想念吗?像解析方法一样?
另请注意,我正在从AWS S3 Bucket流式传输视频。那是导致错误的原因,我必须在那里上载vtt文件吗?
错误在这篇文章中是相同的,但是他们展示了如何通过放置在字符串中来做到这一点。如果它来自vtt文件,我将如何处理?
另请注意,我正在从AWS S3 Bucket流式传输视频。那是导致错误的原因,我必须在那里上载vtt文件吗?
是的,无论视频出现在哪里,都可以上传VTT文件。VTT受到安全限制,以我自己的经验,我还没有使用与视频不同的VTT成功运行JWPlayer。
通过在https://quuz.org/webvtt/上运行该文件,确保您检查了VTT文件是否有效。
S3可能会将其默认设置content-type
为,以一般方式对待您的VTT application/octet-stream
。我不确定您如何使用S3,但是如果您可以在上传VTT后检查其属性,请查找以下属性:
Content-Type: binary/octet-stream
如果看到,则需要将其更改为:
Content-Type: text/vtt
如果您没有确定的过程和/或工具来检查S3上的VTT,请使用S3浏览器或Cloudberry S3 Explorer的免费版本。
关于该错误:
{name: "", message: "Converting circular structure to JSON", error: TypeError: Converting circular structure to JSON at Object.stringify (native) at Object.<ano…}
我不认为该错误与VTT文件有关。如果您看它的格式,则VTT与JSON没有任何相似之处,但是JW设置语法的结构非常相似。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句