使用 Video.js 从 VTT 章节轨道获取提示
Getting the cues from a VTT chapters track with Video.js
我想从我的 Video.js 对象中加载的章节文件中获取提示。我已经找到了获取曲目的方法,但我需要 id
才能访问它。
player.textTracks().getTrackById(<trackID>);
我发现 id
在 Video.js 5.14.0 库中的定义位置:
// video.js/dist/video.js (line 19195)
var trackProps = {
id: options.id || 'vjs_track_' + Guid.newGUID(),
kind: options.kind || '',
label: options.label || '',
language: options.language || ''
};
看来你可以通过将对象传递给函数来定义自己的id
:
// video.js/dist/video.js (line 19178)
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
我加载章节轨道如下:
<track kind="chapters" src="chapters.vtt" srclang="en" default>
我了解到您可以动态添加曲目文件,但您必须重新加载 Video.js 对象。
您可以获取所有曲目,然后获取 chapters
:
类型的曲目
player.on('loadedmetadata', function () {
var tracks = player.textTracks(),
chapterTrack;
for (var i=0; tracks.length > i; i++) {
if ('chapters' === tracks[i].kind) {
chapterTrack = tracks[i];
}
}
console.log(chapterTrack.cues);
});
https://github.com/videojs/video.js/blob/master/docs/guides/text-tracks.md#working-with-text-tracks
我想从我的 Video.js 对象中加载的章节文件中获取提示。我已经找到了获取曲目的方法,但我需要 id
才能访问它。
player.textTracks().getTrackById(<trackID>);
我发现 id
在 Video.js 5.14.0 库中的定义位置:
// video.js/dist/video.js (line 19195)
var trackProps = {
id: options.id || 'vjs_track_' + Guid.newGUID(),
kind: options.kind || '',
label: options.label || '',
language: options.language || ''
};
看来你可以通过将对象传递给函数来定义自己的id
:
// video.js/dist/video.js (line 19178)
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
我加载章节轨道如下:
<track kind="chapters" src="chapters.vtt" srclang="en" default>
我了解到您可以动态添加曲目文件,但您必须重新加载 Video.js 对象。
您可以获取所有曲目,然后获取 chapters
:
player.on('loadedmetadata', function () {
var tracks = player.textTracks(),
chapterTrack;
for (var i=0; tracks.length > i; i++) {
if ('chapters' === tracks[i].kind) {
chapterTrack = tracks[i];
}
}
console.log(chapterTrack.cues);
});
https://github.com/videojs/video.js/blob/master/docs/guides/text-tracks.md#working-with-text-tracks