AudioTrackList: addtrack event

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

The addtrack event is fired when a track is added to an AudioTrackList.

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

js
addEventListener("addtrack", (event) => { })

onaddtrack = (event) => { }

Event type

Event properties

TrackEvent is based on Event, so properties of Event are also available on TrackEvent objects.

track Read only

The DOM track object the event is in reference to. If not null, this is always an object of one of the media track types: AudioTrack, VideoTrack, or TextTrack).

Description

Trigger

The addtrack event is called whenever a new track is added to the media element whose audio tracks are represented by the AudioTrackList object. This happens when tracks are added to the element when the media is first attached to the element; one addtrack event will occur for each audio track in the media resource.

This event is not cancelable and does not bubble.

Use cases

You can use this event to react to a new audio track becoming available. You may want to update your UI elements to allow for user selection of the new audio track, for example.

Examples

Using addEventListener():

js
const videoElement = document.querySelector("video");

videoElement.audioTracks.addEventListener("addtrack", (event) => {
  console.log(`Audio track: ${event.track.label} added`);
});

Using the onaddtrack event handler property:

js
const videoElement = document.querySelector("video");

videoElement.audioTracks.onaddtrack = (event) => {
  console.log(`Audio track: ${event.track.label} added`);
};

Specifications

Specification
HTML Standard
# event-media-addtrack
HTML Standard
# handler-tracklist-onaddtrack

Browser compatibility

BCD tables only load in the browser

See also