AudioTrackList
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
TheAudioTrackList interface is used to represent a list of the audio tracks contained within a given HTML media element, with each track represented by a separateAudioTrack object in the list.
Retrieve an instance of this object withHTMLMediaElement.audioTracks. The individual tracks can be accessed using array syntax.
In this article
Instance properties
This interface also inherits properties from its parent interface,EventTarget.
lengthRead onlyThe number of tracks in the list.
Instance methods
This interface also inherits methods from its parent interface,EventTarget.
getTrackById()Returns the
AudioTrackfound within theAudioTrackListwhoseidmatches the specified string. If no match is found,nullis returned.
Events
addtrackFired when a new audio track has been added to the media element.
changeFired when a track has been enabled or disabled.
removetrackFired when a new audio track has been removed from the media element.
Usage notes
In addition to being able to obtain direct access to the audio tracks present on a media element,AudioTrackList lets you set event handlers on theaddtrack andremovetrack events, so that you can detect when tracks are added to or removed from the media element's stream. See theaddtrack andremovetrack events for details and examples.
Examples
>Getting a media element's audio track list
To get a media element'sAudioTrackList, use itsaudioTracks property.
const audioTracks = document.querySelector("video").audioTracks;Monitoring track count changes
In this example, we have an app that displays information about the number of channels available. To keep it up to date, handlers for theaddtrack andremovetrack events are set up.
audioTracks.onaddtrack = updateTrackCount;audioTracks.onremovetrack = updateTrackCount;function updateTrackCount(event) { trackCount = audioTracks.length; drawTrackCountIndicator(trackCount);}Specifications
| Specification |
|---|
| HTML> # audiotracklist-and-videotracklist-objects> |