5

我使用了与示例演示页面相同的标记,但默认参数并没有真正起作用。我没有看到任何字幕自动播放。我必须手动选择字幕并选择曲目。

    <track kind="subtitles" src="" srclang="en" label="English"  />
    <track kind="subtitles" src="" srclang="it" label="Italian" default />

我究竟做错了什么?或者这是一个错误?

4

6 回答 6

3

当播放器准备好时,您可以使用 javascript(jQuery) 自动触发标题菜单的点击事件。这将显示标题,而无需手动单击它。

videojs("vdoPlayer", {}, function(){
  // Player (this) is initialized and ready.
  $("li.vjs-menu-item").eq(2).trigger('click');
});

您可能必须根据您单击的菜单项更改 eq() 值。使用 console.log($("li.vjs-menu-item").eq(2).text()); 确定哪个菜单是哪个。

于 2013-10-08T05:41:41.617 回答
2

这对我在 iPad(Chrome、Safari)和 Windows 7 PC(FF、Chrome)上运行良好:

<track kind="captions" src="demo.captions.vtt" srclang="en" label="English" default></track>

我正在使用 videojs 4.6.2,也许自从提出这个问题以来它已经修复了。

于 2014-06-12T16:52:47.647 回答
0

尝试srclang="en"从英文字幕中删除。虽然这是一个错误,但删除它似乎已经解决了此问题页面上评论者“Crixo”的问题。

于 2013-08-01T17:09:27.053 回答
0

默认参数现在在 4.1.0 中似乎没有做任何事情。这里有一个问题

此外 - 根据我对 API 的理解,现在也没有一种很好的方法(无需编译您自己的播放器,并通过 export.js 公开更多的轨道功能)以编程方式以“安全”的方式选择您想要的默认轨道。

我的建议是取消注释错误中提到的行,进行一些测试,然后(假设一切正常)向 videojs 存储库提交拉取请求,启用默认轨道选择。

于 2013-07-29T23:51:41.080 回答
0

我在使用最新的 video.js 版本 4.1 时遇到了相同的行为。

默认字幕在 3.x 版本中可见 - 它们不再在 4.x 版本中!用户必须手动单击字幕图标并选择字幕语言才能看到字幕!默认参数的设置方式与 3.x 版本完全相同,无需用户手动干预即可正确显示字幕。

于 2013-07-01T17:57:40.693 回答
0

现在您可以默认打开它,如下所示:

const videoJsOptions: VideoJsPlayerOptions = {
    ...
    tracks: [
      {
        src: `/films/${props.film.id}/subtitles.vtt`,
        kind: "captions",
        srclang: "en",
        label: "English",
        default: true,
      },
    ],
  };
于 2021-07-28T13:18:44.540 回答