RTCRtpTransceiver - 描述了 RTCRtpSender 和 RTCRtpReceiver 的永久配对,以及一些共享状态
RTCRtpTransceiver 是 WebRTC 的接口,描述了 RTCRtpSender 和 RTCRtpReceiver 的永久配对,以及一些共享状态。
每个 SDP 媒体部分都描述一个双向 SRTP(Secure Real Time Protocol)(“安全实时协议”)流(RTCDataChannel 的媒体部分除外,如果存在的话)。发送和接收 SRTP 流的这种配对对于某些应用程序非常重要,因此,使用 RTCRtpTransceiver 表示这种配对以及媒体部分的其他重要状态。每个不可禁用的 SRTP 媒体部分始终由一个收发器代表。
收发器使用其 mid 属性作为唯一标识,该属性与其对应的 m 线的媒体 ID(mid)相同。如果 RTCRtpTransceiver 的中间非零,则将其与 m 线关联;否则,它被视为已取消关联。
属性
currentDirection 只读
一个只读字符串,来自 RTCRtpTransceiverDirection 枚举,指示收发器的当前方向性;如果收发器已停止或从未参与过提议和回复,则为 null。要更改收发器的方向性,请设置 direction 属性的值。
direction
一个字符串,来自 RTCRtpTransceiverDirection 枚举,用于设置收发器的所需方向。
mid 只读
与此收发器关联的 m 线的媒体 ID。只要有可能,只要应用了本地或远程描述,就建立该关联。如果没有应用本地描述或远程描述,或者其关联的 m 行被远程提议或任何回复拒绝,则此字段为 null。
receiver 只读
一个 RTCRtpReceiver 对象,用于处理接收和解码传入的媒体。
sender 只读
一个 RTCRtpSender 对象,负责编码并将数据发送到远程对等方。
stopped
指示是否已永久禁用使用配对的 RTCRtpSender 和 RTCRtpReceiver 发送和接收。禁用是因为 SDP 提议 / 回复或由于调用了 stop()。
方法
setCodecPreferences()
一个包含 RTCRtpCodecParameters 对象的数组,这些对象包含了 用户代理 收发器编解码器使用的默认首选项。
stop()
永久停止 RTCRtpTransceiver。相关的发送方停止发送数据,并且相关的接收方同样停止接收和解码传入的数据。
规范
| 规范 | 状态 | 备注 |
|---|---|---|
| WebRTC 1.0: Real-time Communication Between Browsers RTCRtpTransceiver 的定义 |
候选推荐 | - |
桌面浏览器兼容性
| 特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| 基础支持 | 69 | ≤18 | 59 | 不支持 | 不支持 | 支持 |
currentDirection | 69 | 不支持 | 59 | 不支持 | 不支持 | 未知 |
direction | 69 | 不支持 | 59 | 不支持 | 不支持 | 支持 |
mid | 69 | 不支持 | 59 | 不支持 | 不支持 | 支持 |
receiver | 69 | 不支持 | 59 | 不支持 | 不支持 | 支持 |
sender | 69 | 不支持 | 59 | 不支持 | 不支持 | 支持 |
setCodecPreferences() | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 未知 |
stop() | 不支持 | 不支持 | 59 | 不支持 | 不支持 | 支持 |
stopped | 69 | 不支持 | 59 | 不支持 | 不支持 | 支持 |
移动浏览器兼容性
| 特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
|---|---|---|---|---|---|---|---|
| 基础支持 | 69 | 69 | 未知 | 59 | 未知 | 不支持 | 支持 |
currentDirection | 69 | 69 | 未知 | 59 | 未知 | 不支持 | 未知 |
direction | 69 | 69 | 未知 | 59 | 未知 | 不支持 | 支持 |
mid | 69 | 69 | 未知 | 59 | 未知 | 不支持 | 支持 |
receiver | 69 | 69 | 未知 | 59 | 未知 | 不支持 | 支持 |
sender | 69 | 69 | 未知 | 59 | 未知 | 不支持 | 支持 |
setCodecPreferences() | 不支持 | 不支持 | 未知 | 不支持 | 未知 | 不支持 | 未知 |
stop() | 不支持 | 不支持 | 未知 | 59 | 未知 | 不支持 | 支持 |
stopped | 69 | 69 | 未知 | 59 | 未知 | 不支持 | 支持 |