MediaStreamTrack
Baseline 广泛可用 *
MediaStreamTrack 接口是 Media Capture and Streams API 的一部分,代表流中的单个媒体轨道;通常,这些是音频或视频轨道,但也可能存在其他轨道类型。
一些用户代理会继承此接口,以提供更精确的信息或功能,例如 CanvasCaptureMediaStreamTrack。
实例属性
除了下面列出的属性之外,MediaStreamTrack 还有可约束的属性,可以使用 applyConstraints() 设置,并使用 getConstraints() 和 getSettings() 访问。请参阅 功能、约束和设置,了解如何正确处理可约束的属性。不正确地操作将导致代码不可靠。
MediaStreamTrack.contentHint-
一个字符串,Web 应用程序可以使用它来提供轨道所包含内容的类型提示,以指导 API 消费者如何处理它。允许的值取决于
MediaStreamTrack.kind属性的值。 MediaStreamTrack.enabled-
一个布尔值,如果轨道已启用(允许渲染媒体源流),则其值为
true;如果已禁用(不渲染媒体源流,而是静音和黑屏),则其值为false。如果轨道已断开连接,则可以更改此值,但不再起作用。注意:您可以通过将
enabled设置为false来实现标准的“静音”功能。muted属性指的是由于技术问题而没有媒体的情况。 MediaStreamTrack.id只读-
返回一个包含轨道唯一标识符(GUID)的字符串;它由浏览器生成。
MediaStreamTrack.kind只读-
如果轨道是音频轨道,则返回设置为
"audio"的字符串;如果轨道是视频轨道,则返回"video"的字符串。如果轨道与源分离,则不会更改。 MediaStreamTrack.label只读-
返回一个用户代理分配的标识轨道源的字符串,例如
"internal microphone"。该字符串可以为空,并且在没有连接源时为空。当轨道与源分离时,标签不会改变。 MediaStreamTrack.muted只读-
返回一个布尔值,指示轨道是否因技术问题而无法提供媒体数据。
注意:您可以通过将
enabled设置为false来实现标准的“静音”功能,并通过将其再次设置为true来取消媒体静音。 MediaStreamTrack.readyState只读-
返回一个枚举字符串,表示轨道的状态。它将是以下值之一:
"live"表示已连接输入,并且正在尽最大努力提供实时数据。在这种情况下,可以使用enabled属性来打开或关闭数据输出。"ended"表示输入不再提供数据,并且永远不会提供新数据。
实例方法
MediaStreamTrack.applyConstraints()-
允许应用程序指定
MediaStreamTrack的任意数量的可约束属性的理想值和/或可接受值的范围。 MediaStreamTrack.clone()-
返回
MediaStreamTrack的副本。 MediaStreamTrack.getCapabilities()-
返回一个对象,详细说明与
MediaStreamTrack关联的每个可约束属性的可接受值或值范围。 MediaStreamTrack.getConstraints()-
返回一个
MediaTrackConstraints对象,其中包含当前为轨道设置的约束;返回值与使用applyConstraints()最后设置的约束匹配。 MediaStreamTrack.getSettings()-
返回一个
MediaTrackSettings对象,其中包含MediaStreamTrack的每个可约束属性的当前值。 MediaStreamTrack.stop()-
停止播放与轨道关联的源,源和轨道都将断开连接。轨道状态将设置为
ended。
事件
使用 addEventListener() 或将事件监听器分配给此接口的 oneventname 属性来监听这些事件
ended-
当轨道播放结束时(当
readyState的值更改为ended时)发送到MediaStreamTrack,除非轨道是通过调用MediaStreamTrack.stop来结束的。 mute-
当
muted属性的值更改为true时发送到MediaStreamTrack,表明轨道暂时无法提供数据(例如,当网络出现服务故障时)。 unmute-
当数据再次可用时发送到轨道,结束
muted状态。
规范
| 规范 |
|---|
| 媒体捕获和流 # mediastreamtrack |
浏览器兼容性
加载中…