摄像头采集
setCameraStabilizationMode
设置摄像头防抖模式。
C++
virtual int setCameraStabilizationMode(CAMERA_STABILIZATION_MODE mode) = 0;
摄像头防抖模式默认关闭。你需要调用该方法开启防抖功能,并设置合适的防抖模式。
信息
- 摄像头防抖仅适用于分辨率大于 1280 × 720 的视频场景。
- 启用摄像头防抖后,防抖等级越高,摄像头的视野越小,延迟越大。为提升用户体验,建议将
mode参数设置为CAMERA_STABILIZATION_MODE_LEVEL_1。 - 该方法仅适用于 iOS 平台。
适用场景
在移动拍摄、低光环境或使用移动设备时,可以设置摄像头防抖模式,以减少抖动带来的影响,获得更稳定清晰的画面。
调用时机
该方法需在摄像头成功开启后调用,即 SDK 触发 onLocalVideoStateChanged 回调并返回本地视频状态为 LOCAL_VIDEO_STREAM_STATE_CAPTURING(1)之后。
参数
- mode
- 摄像头防抖模式,详见 CAMERA_STABILIZATION_MODE。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
startCameraCapture
开始视频采集。
C++
virtual int startCameraCapture(VIDEO_SOURCE_TYPE sourceType, const CameraCapturerConfiguration& config) = 0;
你可以调用该方法并指定 sourceType,从一个或多个摄像头开始采集视频。
信息
参数
- sourceType
- 视频源类型,详见 VIDEO_SOURCE_TYPE。信息
- 在 iOS 设备上,如果设备有多个摄像头或支持外接摄像头,最多可同时采集 2 路视频。
- 在 Android 设备上,如果设备有多个摄像头或支持外接摄像头,最多可同时采集 4 路视频。
- 在桌面平台上,最多可同时采集 4 路视频。
- config
- 视频采集配置,详见 CameraCapturerConfiguration。信息在 iOS 平台上,该参数无实际作用。请使用 enableMultiCamera 方法中的
config参数设置视频采集配置。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
stopCameraCapture
停止视频采集。
C++
virtual int stopCameraCapture(VIDEO_SOURCE_TYPE sourceType) = 0;
调用 startCameraCapture 开始通过一个或多个摄像头采集视频后,你可以调用此方法并设置 sourceType 参数以停止指定摄像头的视频采集。
信息
如果你正在使用本地视频混流功能,调用此方法可能会导致本地视频混流中断。 在 iOS 平台上,如果你想禁用多摄像头采集,需要在调用此方法后调用 enableMultiCamera 并将
enabled 设置为 false。参数
- sourceType
- 视频源类型,详见 VIDEO_SOURCE_TYPE。
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。