setRemoteVideoConfig method
Future<int?>
setRemoteVideoConfig({
- required string streamId,
- required RemoteVideoConfig videoConfig,
@detail api
@brief 设置期望订阅的远端视频流的参数。
@param streamId 期望配置订阅参数的远端视频流 ID。
@param remoteVideoConfig 期望配置的远端视频流参数,参看 RemoteVideoConfig{@link #RemoteVideoConfig}。
@return 方法调用结果:
+ 0:成功。
+ !0:失败。
@note
+ 若使用 342 及以前版本的 SDK,调用该方法前请联系技术支持人员开启按需订阅功能。
+ 该方法仅在发布端调用 setLocalSimulcastMode{@link #RTCEngine#setLocalSimulcastMode} 开启了发送多路视频流的情况下生效,此时订阅端将收到来自发布端与期望设置的参数最相近的一路流;否则订阅端只会收到一路参数为分辨率 640px × 360px、帧率 15fps 的视频流。
+ 若发布端开启了推送多路流功能,但订阅端不对流参数进行设置,则默认接受发送端设置的分辨率最大的一路视频流。
+ 该方法需在进房后调用。
+ SDK 会根据发布端和所有订阅端的设置灵活调整视频流的参数,具体调整策略详见推送多路流文档。
Implementation
Future<int?> setRemoteVideoConfig(
{required string streamId,
required RemoteVideoConfig videoConfig}) async {
$a() => ($instance as $p_a.RTCRoom).setRemoteVideoConfig(
streamId, unpackObject<$p_a.RemoteVideoConfig>(videoConfig));
$i() => ($instance as $p_i.ByteRTCRoom).setRemoteVideoConfig(
streamId, unpackObject<$p_i.ByteRTCRemoteVideoConfig>(videoConfig));
if (Platform.isAndroid) {
return $a();
} else if (Platform.isIOS) {
return $i();
} else {
throw UnsupportedError(
'Not Support Platform ${Platform.operatingSystem}');
}
}