subscribeStreamVideo method
@detail api
@valid since 3.60. 自 3.60 起,该接口替代了 subscribeStream 和 unsubscribeStream 方法来实现下述功能。如果你已升级至 3.60 及以上版本,且仍在使用这两个方法,请迁移至该接口。
@author xuyiling.x10
@brief 订阅/取消订阅房间内指定的远端视频流(通过摄像头采集的)。
@param streamId 目标远端视频流 ID。
@param subscribe 指定是否订阅该视频流。
- true: 订阅。
- false: 取消订阅。
@return 方法调用结果:
- 0:成功;
- <0:失败。具体失败原因参看 ByteRTCReturnStatus{@link #ByteRTCReturnStatus}。
@note
- 若当前用户在调用本接口时已经订阅该远端用户(手动订阅或自动订阅),则将根据本次传入的参数,更新订阅配置。
- 你必须先通过 rtcRoom:onUserPublishStreamVideo:info:isPublish:{@link #ByteRTCRoomDelegate#rtcRoom:onUserPublishStreamVideo:info:isPublish} 回调获取当前房间里的远端摄像头流信息,然后调用本方法按需订阅。
- 调用该方法后,你会收到 rtcRoom:onVideoSubscribeStateChanged:info:state:reason:{@link #ByteRTCRoomDelegate#rtcRoom:onVideoSubscribeStateChanged:info:state:reason} 通知方法调用结果。
- 成功订阅远端用户的媒体流后,订阅关系将持续到调用本方法取消订阅或本端用户退房。
- 关于其他调用异常,你会收到 rtcRoom:onVideoSubscribeStateChanged:info:state:reason:{@link #ByteRTCRoomDelegate#rtcRoom:onVideoSubscribeStateChanged:info:state:reason} 回调通知,具体异常原因参看 ByteRTCSubscribeStateChangeReason{@link #ByteRTCSubscribeStateChangeReason}。
@order 3
Implementation
FutureOr<int> subscribeStreamVideo(NSString streamId, BOOL subscribe) async {
return await nativeCall(
'subscribeStreamVideo:subscribe:', [streamId, subscribe]);
}