摄像头采集
setCameraStabilizationMode:
设置摄像头防抖模式。
Objective-C
- (int) setCameraStabilizationMode:(AgoraCameraStabilizationMode)mode NS_SWIFT_NAME(setCameraStabilizationMode(_:));
自从
v4.3.1
摄像头防抖模式默认关闭,你需要调用该方法开启并设置合适的防抖模式。
适用场景
在移动拍摄、暗光环境拍摄、手持拍摄时,你可以设置摄像头防抖模式,以减小摄像头晃动导致的影响,获得更加稳定、清晰的画面。
调用时机
该方法必须在摄像头成功开启后调用,即 SDK 触发 rtcEngine:localVideoStateChangedOfState:reason:sourceType: 回调,返回本地视频状态为 AgoraVideoLocalStateCapturing (1) 后。
调用限制
- 摄像头防抖只对视频分辨率大于 1280 × 720 以上的场景生效。
- 开启摄像头防抖后,摄像头防抖等级越高,相机的视角就越小、相机时延就越大。为保障用户体验,建议你将 mode 参数设置为 AgoraCameraStabilizationModeLevel1。
参数
- mode
- 摄像头的防抖模式。详见 AgoraCameraStabilizationMode。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
startCameraCapture:config:
开始通过摄像头采集视频。
Objective-C
- (int)startCameraCapture:(AgoraVideoSourceType)sourceType config:(AgoraCameraCapturerConfiguration * _Nullable)config NS_SWIFT_NAME(startCameraCapture(_:config:));
详情
自从
v4.2.0
调用该方法可以通过指定 sourceType 同时开启多路摄像头采集。
信息
参数
- sourceType
视频源的类型。详见 AgoraVideoSourceType。
信息- iOS 设备最多支持 2 路摄像头采集的视频流(要求设备配备多摄像头或支持外接摄像头)。
- config
视频采集配置。详见 AgoraCameraCapturerConfiguration。
信息在 iOS 平台上,该参数无实际作用。请使用 enableMultiCamera:config: 中的 config 参数设置视频采集配置。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
stopCameraCapture:
停止通过摄像头采集视频。
Objective-C
- (int)stopCameraCapture:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(stopCameraCapture(_:));
详情
自从
v4.2.0
调用 startCameraCapture:config: 开启一路或多路摄像头采集的视频流后,你可以调用该方法,通过设置 sourceType 停止一路或多路摄像头的视频采集。
信息
注意
如果你正在使用本地合图功能,调用该方法停止通过第一个摄像头采集视频,会造成本地合图中断。
参数
- sourceType
- 视频源的类型,详见 AgoraVideoSourceType。
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。