VTTCue
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
TheVTTCue interface of theWebVTT API represents a cue that can be added to the text track associated with a particular video (or other media).
A cue defines the text to display in a particular timeslice of a video or audio track, along with display properties such as its size, alignment, and position.
In this article
Constructor
VTTCue()Returns a newly created
VTTCueobject that covers the given time range and has the given text.
Instance properties
This interface also inherits properties fromTextTrackCue.
VTTCue.regionA
VTTRegionobject describing the video's sub-region that the cue will be drawn onto, ornullif none is assigned.VTTCue.verticalAn enum representing the cue writing direction.
VTTCue.snapToLinestrueif theVTTCue.lineattribute indicates an integer number of lines orfalseif it represents a percentage of the video size.This istrueby default.VTTCue.lineRepresents the line positioning of the cue. This can be the string
autoor a number whose interpretation depends on the value ofVTTCue.snapToLines.VTTCue.lineAlignAn enum representing the alignment of the VTT cue.
VTTCue.positionRepresents the indentation of the cue within the line.This can be the string
auto, a number representing the percentage of theVTTCue.region, or the video size ifVTTCue.regionisnull.VTTCue.positionAlignAn enum representing the alignment of the cue.This is used to determine what the
VTTCue.positionis anchored to.The default isauto.VTTCue.sizeRepresents the size of the cue, as a percentage of the video size.
VTTCue.alignAn enum representing the alignment of all the lines of text within the cue box.
VTTCue.textA string representing the contents of the cue.
Instance methods
getCueAsHTML()Returns the cue text as a
DocumentFragment.
Example
>HTML
The following example adds a newTextTrack to the video, then adds cues using theTextTrack.addCue() method, with aVTTCue object as the value.
<video controls src="/shared-assets/videos/friday.mp4"></video>CSS
video { width: 420px; height: 300px;}JavaScript
let video = document.querySelector("video");let track = video.addTextTrack("captions", "Captions", "en");track.mode = "showing";track.addCue(new VTTCue(0, 0.9, "Hildy!"));track.addCue(new VTTCue(1, 1.4, "How are you?"));track.addCue(new VTTCue(1.5, 2.9, "Tell me, is the lord of the universe in?"));track.addCue(new VTTCue(3, 4.2, "Yes, he's in - in a bad humor"));track.addCue(new VTTCue(4.3, 6, "Somebody must've stolen the crown jewels"));console.log(track.cues);Result
Specifications
| Specification |
|---|
| WebVTT: The Web Video Text Tracks Format> # the-vttcue-interface> |