由于平台限制,微信小程序 SDK 的媒体能力与其他端存在差异。
说明:可见用户可以发布和订阅媒体流。不可见用户只能订阅媒体流。进房后默认为可见用户,调用 setUserVisibility 切换用户身份。
| 项目 | 上限 |
|---|---|
| 单房间小程序端可见用户数 | 8 |
| 单房间小程序不可见用户数 | 10000 |
此限制决定了小程序端能够感知并订阅的远端用户范围。
示例
初始状态:一个房间内按顺序已加入了 22 位用户(用户 1~22)。此时,用户 A 以小程序端身份加入。
结果:用户 A 只会收到用户 1~20 的进房通知。用户 21、22 对其不可见,无法订阅。
有用户离开:可见名单中的用户 10 离开房间。
结果: 用户A 收到用户 10 的离开通知,其可见名单出现一个空位。服务端检测到空位后,向用户 A 补发用户 21 的进房通知,用户 A 可以看到用户 21 并可以订阅其流。但用户 22 对 A 依然不可见。
例如,房间内有 20 路流,小程序端用户订阅情况如下:
| 用户 | 订阅的流 |
|---|---|
| 用户 A(Android 小程序端) | 订阅流 1、2、3、4、5、6 |
| 用户 B | 订阅流 3、4、5、6、7 |
| 用户 C | 订阅流 6、7、8 |
如果用户 C 需要订阅流 9,由于房间内小程序端用户同时订阅流数已经达到 8 路,此时,对流 9 的订阅会失败。
如果用户 A,需要订阅流 7,由于用户 A 同时订阅流数已经达到 6 路,此时,对流 7 会失败。