AudioTrackList

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

AudioTrackList 介面用於表示給定 HTML 媒體元素中包含的音訊軌道列表,列表中的每個軌道都由一個獨立的 AudioTrack 物件表示。

使用 HTMLMediaElement.audioTracks 獲取此物件的例項。可以使用陣列語法訪問單個軌道。

EventTarget AudioTrackList

例項屬性

此介面還繼承了其父介面 EventTarget 的屬性。

length 只讀

列表中軌道的數量。

例項方法

此介面還繼承了其父介面 EventTarget 的方法。

getTrackById()

返回 AudioTrackListid 與指定字串匹配的 AudioTrack。如果沒有找到匹配項,則返回 null

事件

addtrack

當媒體元素添加了新的音訊軌道時觸發。

change

當軌道被啟用或停用時觸發。

removetrack

當媒體元素移除了一個音訊軌道時觸發。

用法說明

除了能夠直接訪問媒體元素上的音訊軌道外,AudioTrackList 還允許您為 addtrackremovetrack 事件設定事件處理程式,以便您可以檢測到軌道何時被新增到媒體元素的流中或從媒體元素的流中移除。有關詳細資訊和示例,請參閱 addtrackremovetrack 事件。

示例

獲取媒體元素的音訊軌道列表

要獲取媒體元素的 AudioTrackList,請使用其 audioTracks 屬性。

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

監控軌道數量的變化

在此示例中,我們有一個應用程式,用於顯示有關可用通道數量的資訊。為了保持最新狀態,設定了 addtrackremovetrack 事件的處理程式。

js
audioTracks.onaddtrack = updateTrackCount;
audioTracks.onremovetrack = updateTrackCount;

function updateTrackCount(event) {
  trackCount = audioTracks.length;
  drawTrackCountIndicator(trackCount);
}

規範

規範
HTML
# audiotracklist-and-videotracklist-objects

瀏覽器相容性