摄像头采集

  • iOS

更新时间不可用

setCameraStabilizationMode:

设置摄像头防抖模式。

Objective-C
- (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:

开始视频采集。

Objective-C
- (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: 中的 config 参数来设置视频采集配置。详见 AgoraCameraCapturerConfiguration。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类

stopCameraCapture:

停止视频采集。

Objective-C
- (int)stopCameraCapture:(AgoraVideoSourceType)sourceType NS_SWIFT_NAME(stopCameraCapture(_:));

调用 startCameraCapture:config: 方法通过一个或多个摄像头开始视频采集后,你可以调用该方法并设置 sourceType 参数以停止指定摄像头的视频采集。

  • 如果你正在使用本地视频合流功能,调用该方法可能会导致本地视频合流中断。
  • 在 iOS 上,如果你想禁用多摄像头采集,需要在调用该方法后调用 enableMultiCamera: 并将 enabled 设置为 NO。

参数

参数名描述
sourceType

视频源的类型,详见 AgoraVideoSourceType。

表格内容超出当前宽度,可横向滚动查看更多列。

返回值

  • 0:方法调用成功。
  • < 0:方法调用失败。详见错误码了解详情和解决建议。

所属接口类