VideoTrack - 表示 <video> 元素中的单个视频轨道
VideoTrack 接口表示 <video> 元素中的单个视频轨道。访问 VideoTrack 对象最常见的用途是切换其 selected 属性,以使其成为其 <video> 元素的活动视频轨道。
属性
selected
一个布尔值,它控制视频轨道是否处于活动状态。在任何给定时间,只有一个视频轨道可以处于活动状态,因此将一个轨道设置为 true,则其他轨道将处于非活动状态。
id 只读
一个 DOMString,用于唯一标识媒体中的轨道。通过调用 VideoTrackList.getTrackById(),可以使用此 ID 在视频轨道列表中查找特定轨道。如果媒体支持根据媒体片段 URI 规范通过媒体片段进行搜索,则 ID 也可以用作 URL 的片段部分。
kind 只读
一个 DOMString,指定轨道所属的类别。例如,主视频轨道的 kind 为 "main"。
label 只读
一个 DOMString,它为轨道提供了易于阅读的标签。例如,其 kind 是 "sign"(手语)的轨道可能具有 “手语解释” 的标签。如果未提供标签,则此字符串为空。
language 只读
一个 DOMString,指定视频轨道的主要语言,如果未知,则为空字符串。该语言被指定为 BCP 47(RFC 5646)语言代码,例如 "en-US" 或 "pt-BR"。
sourceBuffer 只读
创建轨道的 SourceBuffer。如果轨道不是由 SourceBuffer 创建的,或者 SourceBuffer 已从其父媒体源的 MediaSource.sourceBuffers 属性中删除,则返回 null。
使用注意
要获取给定媒体元素的 VideoTrack,请使用元素的 videoTracks 属性,该属性将返回一个 VideoTrackList 对象,可以用来获取媒体中包含的各个轨道:
var el = document.querySelector("video");
var tracks = el.videoTracks;
然后,您可以使用数组语法或 forEach() 之类的函数访问媒体的各个轨道。
此第一个实例获取媒体上的第一个视频轨道:
var firstTrack = tracks[0];
下一个实例扫描媒体的所有视频轨道,激活用户首选语言(取自变量 userLanguage)中的第一个视频轨道。
for (var i = 0; i < tracks.length; i++) {
if (tracks[i].language === userLanguage) {
tracks[i].selected = true;
break;
}
});
language 为标准(RFC 5646)的格式。例如,对于美国英语,它将是 "en-US"。
规范
| 规范 | 状态 | 备注 |
|---|---|---|
| HTML Living Standard VideoTrack 的定义 |
现行的标准 | - |
桌面浏览器兼容性
| 特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| 基础支持 | 未知 | ≤18 | 未知 | 未知 | 未知 | 支持 |
id | 未知 | 12 | 未知 | 未知 | 未知 | 支持 |
kind | 未知 | 12 | 未知 | 未知 | 未知 | 支持 |
label | 未知 | 12 | 未知 | 未知 | 未知 | 支持 |
language | 未知 | 12 | 未知 | 未知 | 未知 | 支持 |
selected | 未知 | 12 | 未知 | 未知 | 未知 | 支持 |
sourceBuffer | 未知 | 12 | 未知 | 未知 | 未知 | 支持 |
移动浏览器兼容性
| 特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
|---|---|---|---|---|---|---|---|
| 基础支持 | 未知 | 未知 | 未知 | 未知 | 未知 | 未知 | 支持 |
id | 未知 | 未知 | 未知 | 未知 | 未知 | 未知 | 支持 |
kind | 未知 | 未知 | 未知 | 未知 | 未知 | 未知 | 支持 |
label | 未知 | 未知 | 未知 | 未知 | 未知 | 未知 | 支持 |
language | 未知 | 未知 | 未知 | 未知 | 未知 | 未知 | 支持 |
selected | 未知 | 未知 | 未知 | 未知 | 未知 | 未知 | 支持 |
sourceBuffer | 未知 | 未知 | 未知 | 未知 | 未知 | 未知 | 未知 |