摄像头采集
SetCameraStabilizationMode
设置摄像头防抖模式。
C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
int SetCameraStabilizationMode(FENUMWRAP_CAMERA_STABILIZATION_MODE mode);
注意
该方法仅适用于 iOS。
摄像头防抖模式默认关闭,你需要调用该方法开启并设置合适的防抖模式。
适用场景
在移动拍摄、暗光环境拍摄、手持拍摄时,你可以设置摄像头防抖模式,以减小摄像头晃动导致的影响,获得更加稳定、清晰的画面。
调用时机
该方法必须在摄像头成功开启后调用,即 SDK 触发 OnLocalVideoStateChanged 回调,返回本地视频状态为 LOCAL_VIDEO_STREAM_STATE_CAPTURING (1) 后。
调用限制
- 摄像头防抖只对视频分辨率大于 1280 × 720 以上的场景生效。
- 开启摄像头防抖后,摄像头防抖等级越高,相机的视角就越小、相机时延就越大。为保障用户体验,建议你将 mode 参数设置为 CAMERA_STABILIZATION_MODE_LEVEL_1。
参数
- mode
- 摄像头的防抖模式。详见 FENUMWRAP_CAMERA_STABILIZATION_MODE。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
StartCameraCapture
开始通过摄像头采集视频。
C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
int StartCameraCapture(EVIDEO_SOURCE_TYPE sourceType, const FCameraCapturerConfiguration& config);
详情
调用该方法可以通过指定 sourceType 同时开启多路摄像头采集。
信息
参数
- sourceType
视频源的类型。详见 EVIDEO_SOURCE_TYPE。
信息- iOS 设备最多支持 2 路摄像头采集的视频流(要求设备配备多摄像头或支持外接摄像头)。
- Android 设备最多支持 4 路摄像头采集的视频流(要求设备配备多摄像头或支持外接摄像头)。
- 桌面端最多支持 4 路摄像头采集的视频流。
- config
视频采集配置。详见 FCameraCapturerConfiguration。
信息在 iOS 平台上,该参数无实际作用。请使用 EnableMultiCamera 中的 config 参数设置视频采集配置。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
StopCameraCapture
停止通过摄像头采集视频。
C++
UFUNCTION(BlueprintCallable, Category = "Agora|IRtcEngine")
int StopCameraCapture(EVIDEO_SOURCE_TYPE sourceType);
详情
调用 StartCameraCapture 开启一路或多路摄像头采集的视频流后,你可以调用该方法,通过设置 sourceType 停止一路或多路摄像头的视频采集。
信息
注意
如果你正在使用本地合图功能,调用该方法停止通过第一个摄像头采集视频,会造成本地合图中断。
参数
- sourceType
- 视频源的类型,详见 EVIDEO_SOURCE_TYPE。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。