AudioTrackList - 表示给定 HTML 媒体元素中包含的音频轨道列表

AudioTrackList 接口用于表示给定 HTML 媒体元素中包含的音频轨道列表,每个轨道由列表中单独的 AudioTrack 对象表示。

可以使用 HTMLMediaElement.audioTracks 检索此对象的实例。可以使用数组语法访问各个轨道。

属性

此接口还从其父接口 EventTarget 继承了属性。

length 只读

列表中的轨道数。

方法

此接口还从其父接口 EventTarget 继承了方法。

getTrackById()

返回在 AudioTrackList 中找到的 id 匹配指定字符串的 AudioTrack。如果找不到匹配项,则返回 null

事件处理程序

onaddtrack

触发 addtrack 事件时要调用的事件处理程序,指示新的音轨已添加到媒体元素。

onchange

触发 change 事件时要调用的事件处理程序。通过更改其 enabled 标志来启用或禁用一个或多个轨道时,会发生这种情况。

onremovetrack

触发 removetrack 事件时调用的事件处理程序,指示已从媒体元素中删除了音轨。

事件

addtrack

当新的音轨已添加到媒体元素时触发。也可以通过 onaddtrack 属性处理。

change

在启用或禁用轨道时触发。也可以通过 onchange 属性处理。

removetrack

从媒体元素中移除新的音轨时触发。也可以通过 onremovetrack)属性处理。

使用注意

除了能够直接访问媒体元素上存在的音频轨道之外,AudioTrackList 还允许您在 addtrackremovetrack 上设置事件处理程序事件,以便您可以检测何时在媒体元素的流中添加轨道或从中删除轨道。有关详细信息和实例,请参见 onaddtrackonremovetrack

实例

获取媒体元素的音轨列表

要获取媒体元素的 AudioTrackList,请使用其 audioTracks 属性。

var audioTracks = document.querySelector("video").audioTracks;

监视轨道数量更改

在此实例中,我们有一个应用程序,用于显示有关可用频道数的信息。为了保持最新状态,我们设置了 addtrackremovetrack 事件的处理程序来监听它的变化。

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

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

规范

规范 状态 备注
HTML Living Standard
AudioTrackList 的定义
现行的标准 -
HTML5
AudioTrackList 的定义
推荐 -

桌面浏览器兼容性

特性ChromeEdgeFirefoxInternet ExplorerOperaSafari
基础支持45123310326.1
addtrack 事件45123310326.1
change 事件45123310326.1
getTrackById45123310326.1
length45123310326.1
onaddtrack45123310326.1
onchange45123310326.1
onremovetrack45123310326.1
removetrack 事件45123310326.1

移动浏览器兼容性

特性AndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
基础支持4545 未知33 未知327
addtrack 事件4545 未知33 未知327
change 事件4545 未知33 未知327
getTrackById4545 未知33 未知327
length4545 未知33 未知327
onaddtrack4545 未知33 未知327
onchange4545 未知33 未知327
onremovetrack4545 未知33 未知327
removetrack 事件4545 未知33 未知327