MediaStream: getTrackById() 方法

Baseline 已广泛支持

此功能已成熟,可跨多种设备和浏览器版本使用。自 2017 年 9 月以来,它已在浏览器中提供。

getTrackById()MediaStream 接口的一个方法,它返回一个 MediaStreamTrack 对象,该对象代表具有指定 ID 字符串的轨道。如果不存在具有指定 ID 的轨道,此方法将返回 null

语法

js
getTrackById(id)

参数

id

一个标识要返回的轨道的字符串。

返回值

如果找到一个 MediaStreamTrack.id 与指定的 id 字符串匹配的轨道,则返回该 MediaStreamTrack 对象。否则,返回值是 null

示例

此示例通过将主音频轨道的音量降低到 50% 并然后启用解说音轨来激活视频的解说音轨。

此示例假定两个轨道的 ID 是已知的(例如,从先前调用 MediaStreamTrack.id 获得的)。在实际应用中,您可能需要在首次获取流时存储这些 ID,因为它们是在浏览器中随机生成的。

js
const primaryAudioTrack = stream.getTrackById(
  "69f8520f-d94e-43f0-8a7c-77b1774f3b8f",
);
const commentaryTrack = stream.getTrackById(
  "b5410643-2549-491e-b0f7-f08a4ebe54b8",
);

primaryAudioTrack.applyConstraints({ volume: 0.5 });
commentaryTrack.enabled = true;

规范

规范
媒体捕获和流
# dom-mediastream-gettrackbyid

浏览器兼容性

另见