RTCRtpTransceiver

Baseline 广泛可用 *

此特性已成熟稳定,适用于多种设备和浏览器版本。自 2018 年 10 月起,它已在各浏览器中可用。

* 此特性的某些部分可能存在不同级别的支持。

WebRTC 接口 RTCRtpTransceiver 描述了一个永久配对的 RTCRtpSenderRTCRtpReceiver,以及一些共享状态。

每个 SDP 媒体部分描述了一个双向 SRTP(“安全实时传输协议”)流(如果存在,则不包括 RTCDataChannel 的媒体部分)。这种发送和接收 SRTP 流的配对对某些应用程序很重要,因此 RTCRtpTransceiver 用于表示这种配对,以及来自媒体部分的其它重要状态。每个非禁用状态的 SRTP 媒体部分始终由一个且仅一个 transceiver 表示。

Transceiver 使用其 mid 属性进行唯一标识,该属性与对应的 m-line 的媒体 ID (mid) 相同。如果 RTCRtpTransceivermid 非空,则它与 m-line **关联**;否则,它被视为解除关联。

实例属性

currentDirection 只读

一个只读字符串,表示 transceiver 当前协商的传输方向,如果 transceiver 从未参与过 offer/answer 交换,则为 null。要更改 transceiver 的传输方向,请设置 direction 属性的值。

direction

一个用于设置 transceiver 首选传输方向的字符串。

mid 只读

与此 transceiver 关联的 m-line 的媒体 ID。当应用本地或远程描述时,此关联会尽可能建立。如果未应用本地或远程描述,或者其关联的 m-line 被远程 offer 或任何 answer 拒绝,则此字段为 null

receiver 只读

负责接收和解码传入媒体的 RTCRtpReceiver 对象。

sender 只读

负责将数据编码并发送到远程对等方的 RTCRtpSender 对象。

stopped 已弃用

指示配对的 RTCRtpSenderRTCRtpReceiver 的发送和接收是否已永久禁用,无论是由于 SDP offer/answer,还是由于调用了 stop()

实例方法

setCodecPreferences()

配置 transceiver 的首选编解码器列表,覆盖 用户代理设置。

stop()

永久停止 RTCRtpTransceiver。关联的发送方停止发送数据,关联的接收方也停止接收和解码传入数据。

规范

规范
WebRTC:浏览器中的实时通信
# rtcrtptransceiver-interface

浏览器兼容性

另见