setVideoDigitalZoomConfig method
@valid since 3.51
@detail api
@hiddensdk(audiosdk)
@author likai.666
@brief 设置本地摄像头数码变焦参数,包括缩放倍数,移动步长。
@param type 数码变焦参数类型,缩放系数或移动步长。参看 ZoomConfigType{@link #ZoomConfigType}。必填。
@param size 缩放系数或移动步长,保留到小数点后三位。默认值为 0。必填。
选择不同 type 时有不同的取值范围。当计算后的结果超过缩放和移动边界时,取临界值。
- ZOOM_FOCUS_OFFSET(0):缩放系数增量,范围为 0, 7。例如,设置为 0.5 时,如果调用 setVideoDigitalZoomControl{@link #RTCEngine#setVideoDigitalZoomControl} 选择 Zoom in,则缩放系数增加 0.5。缩放系数范围 1,8,默认为 1,原始大小。
- ZOOM_MOVE_OFFSET(1):移动百分比,范围为 0, 0.5,默认为 0,不移动。如果调用 setVideoDigitalZoomControl{@link #RTCEngine#setVideoDigitalZoomControl} 选择的是左右移动,则移动距离为 size x 原始视频宽度;如果选择的是上下移动,则移动距离为 size x 原始视频高度。例如,视频帧边长为 1080 px,设置为 0.5 时,实际移动距离为 0.5 x 1080 px = 540 px。
@return
- 0: 成功。
- < 0: 失败。查看 ReturnStatus{@link #ReturnStatus} 获得更多错误说明。
@note
- 每次调用本接口只能设置一种参数。如果缩放系数和移动步长都需要设置,分别调用本接口传入相应参数。
- 由于移动步长的默认值为 0 ,在调用 setVideoDigitalZoomControl{@link #RTCEngine#setVideoDigitalZoomControl} 或 startVideoDigitalZoomControl{@link #RTCEngine#startVideoDigitalZoomControl} 进行数码变焦操作前,应先调用本接口。
Implementation
Future<int?> setVideoDigitalZoomConfig(
{required ZoomConfigType type, required float size}) async {
$a() => ($instance as $p_a.RTCEngine).setVideoDigitalZoomConfig(
t_ZoomConfigType.code_to_android(type), size);
$i() => ($instance as $p_i.ByteRTCEngine)
.setVideoDigitalZoomConfig(t_ZoomConfigType.code_to_ios(type), size);
if (Platform.isAndroid) {
return $a();
} else if (Platform.isIOS) {
return $i();
} else {
throw UnsupportedError(
'Not Support Platform ${Platform.operatingSystem}');
}
}