webrtc RTCConfiguration 能力描述

| 属性名                          | 类型                         | 描述                                                                                                                                                                      |
|---------------------------------|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `iceServers`                    | `NSArray<RTCIceServer *> *`   | ICE 服务器的列表,通常包括 STUN 和 TURN 服务器,用于在 NAT 或防火墙后建立连接。                                                                                         |
| `iceTransportPolicy`            | `RTCIceTransportPolicy`       | 控制 ICE 传输策略的枚举值。可以是 `all`、`relay` 或 `noHost`,用于决定是否使用中继服务器或仅限中继。                                                                     |
| `bundlePolicy`                  | `RTCBundlePolicy`             | 指定捆绑策略的枚举值,决定如何将多个媒体流捆绑在一个连接中。可选值包括 `balanced`、`max-compat` 和 `max-bundle`。                                                      |
| `rtcpMuxPolicy`                 | `RTCRtcpMuxPolicy`            | 指定是否使用 RTP 和 RTCP 复用。可选值包括 `require` 和 `negotiate`,大多数情况下为 `require`。                                                                          |
| `iceCandidatePoolSize`          | `int`                         | 指定 ICE 候选池的大小。值越大,`RTCPeerConnection` 在连接建立之前收集的 ICE 候选项越多。通常为 `0`,表示不使用预先收集的候选项。                                        |
| `tcpCandidatePolicy`            | `RTCTcpCandidatePolicy`       | 控制是否允许使用 TCP 作为 ICE 候选项。可选值包括 `enabled` 和 `disabled`。                                                                                              |
| `candidateNetworkPolicy`        | `RTCCandidateNetworkPolicy`   | 控制候选网络策略,决定是否允许基于 Wi-Fi、蜂窝网络等的候选项。                                                                                                          |
| `audioJitterBufferMaxPackets`   | `int`                         | 设置音频抖动缓冲区的最大数据包数。通常用于控制音频流的平滑性和延迟。                                                                                                    |
| `audioJitterBufferFastAccelerate`| `BOOL`                       | 启用或禁用音频抖动缓冲区的快速加速模式,这有助于减少初始延迟。                                                                                                         |
| `iceCheckMinInterval`           | `NSTimeInterval`              | 设置 ICE 检查的最小间隔,控制重新连接或进行候选项交换的频率。                                                                                                          |
| `sdpSemantics`                  | `RTCSdpSemantics`             | 指定 SDP 语法,控制如何生成和解析 SDP。可选值包括 `planB` 和 `unifiedPlan`,后者是现代 WebRTC 的推荐选项。                                                               |
| `disableIPV6`                   | `BOOL`                        | 指定是否禁用 IPv6。设置为 `YES` 时,WebRTC 将不使用 IPv6 地址。                                                                                                         |
| `disableIPV6OnWiFi`             | `BOOL`                        | 指定是否仅在 Wi-Fi 网络上禁用 IPv6。                                                                                                                                    |
| `enableDscp`                    | `BOOL`                        | 启用或禁用 DSCP (Differentiated Services Code Point),它有助于优先处理实时媒体流量。                                                                                   |
| `disableLinkLocalNetworks`      | `BOOL`                        | 禁用或启用本地链接网络,影响连接时是否考虑本地 IP 地址。                                                                                                               |
| `maxIPv6Networks`               | `int`                         | 设置最大 IPv6 网络数量。用于控制同时支持的 IPv6 网络接口数量。                                                                                                          |
| `mediaTransportSettings`        | `NSArray<RTCMediaTransportSettings *> *` | 设置媒体传输的相关配置,通常用于高级自定义场景。                                                                                                      |
| `cryptoOptions`                 | `RTCCryptoOptions *`          | 配置安全选项,如启用或禁用 SRTP (Secure Real-time Transport Protocol)。                                                                                                |
| `certificates`                  | `NSArray<RTCCertificate *> *` | 用于设置自定义的证书链,通常用于自签名证书的场景。                                                                                                                     |
| `sdpRemoteCandidatesIPv6Enabled`| `BOOL`                        | 控制是否启用 SDP 中远程候选项的 IPv6 地址。                                                                                                                            |

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容