摄像头采集
- iOS
更新时间不可用
setCameraStabilizationMode:
设置摄像头防抖模式。
- (int) setCameraStabilizationMode:(AgoraCameraStabilizationMode)mode NS_SWIFT_NAME(setCameraStabilizationMode(_:));你需要调用该方法以开启防抖功能并设置合适的防抖模式。摄像头防抖模式默认关闭。
注:
- 摄像头防抖仅适用于分辨率大于 1280 × 720 的场景。
- 启用摄像头防抖后,防抖等级越高,摄像头的视野越小,延迟越大。为提升用户体验,建议将
mode参数设置为AgoraCameraStabilizationModeLevel1。
适用场景
在移动拍摄、低光环境或使用移动设备时,可以设置摄像头防抖模式,以减少抖动带来的影响,获得更稳定清晰的画面。
调用时机
你必须在摄像头成功开启后调用该方法,即 SDK 触发 rtcEngine:localVideoStateChangedOfState:reason:sourceType: 回调并返回本地视频状态为 AgoraVideoLocalStateCapturing(1)之后。
参数
| 参数名 | 描述 |
|---|---|
mode | 摄像头防抖模式,详见 AgoraCameraStabilizationMode。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
startCameraCapture:config:
开始视频采集。
- (int)startCameraCapture:(AgoraVideoSourceType)sourceType config:(AgoraCameraCapturerConfiguration * _Nullable)config NS_SWIFT_NAME(startCameraCapture(_:config:));你可以调用此方法并指定 sourceType 来开始从一个或多个摄像头进行视频采集。
注: 在 iOS 上,如果你想启用多摄像头采集,需要先调用 enableMultiCamera:config: 并将 enabled 设置为 YES,然后再调用此方法。
参数
| 参数名 | 描述 |
|---|---|
sourceType | 视频源的类型,详见 AgoraVideoSourceType。在 iOS 上,如果设备有多个摄像头或支持外接摄像头,你最多可以从 2 个摄像头采集视频。在 macOS 上,你最多可以从 4 个摄像头采集视频。 |
config | 视频采集的配置。在 iOS 上,此参数无实际作用。请使用 enableMultiCamera:config: 中的 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
stopCameraCapture:
停止视频采集。
- (int)stopCameraCapture:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(stopCameraCapture(_:));调用 startCameraCapture:config: 方法通过一个或多个摄像头开始视频采集后,你可以调用该方法并设置 sourceType 参数以停止指定摄像头的视频采集。
- 如果你正在使用本地视频合流功能,调用该方法可能会导致本地视频合流中断。
- 在 iOS 上,如果你想禁用多摄像头采集,需要在调用该方法后调用
enableMultiCamera:并将enabled设置为 NO。
参数
| 参数名 | 描述 |
|---|---|
sourceType | 视频源的类型,详见 AgoraVideoSourceType。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。