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

浏览器兼容性