/Web APIs

AudioTrackList: addtrack event

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


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


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).



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.


Using addEventListener():


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

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

Using the onaddtrack event handler property:


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

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


Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
addtrack_event 37 7912–79 33 10 24 7 No 37 No No 7 No

See also

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.