files/en-us/web/api/htmlmediaelement/addtexttrack/index.md
{{APIRef("HTML DOM")}}
The addTextTrack() method of the {{domxref("HTMLMediaElement")}} interface creates a new {{domxref("TextTrack")}} object and adds it to the media element. It fires an {{domxref("TextTrackList/addtrack_event", "addtrack")}} event on this media element's {{domxref("HTMLMediaElement/textTracks", "textTracks")}}. This method can't be used on a {{domxref("TextTrackList")}} interface, only an {{domxref("HTMLMediaElement")}}.
addTextTrack(kind)
addTextTrack(kind, label)
addTextTrack(kind, label, language)
kind
subtitles, captions, descriptions, chapters, or metadata).label
language
The newly created {{domxref("TextTrack")}} object.
None.
This example adds a new {{domxref("TextTrack")}} with the kind set to "subtitles", and adds a new {{domxref("VTTCue")}} to that.
const video = document.querySelector("video");
const newTrack = video.addTextTrack("subtitles");
newTrack.addCue(new VTTCue(3, 6, "Hello world!"));
console.log(newTrack.cues[0].text);
// "Hello world!"
{{Specifications}}
{{Compat}}