RTC SDK为您提供了摄像头管理的接口方法,您可以在音视频通话之前对摄像头进行管理,以确保设备是否正常工作。通过阅读本文,您可以了解摄像头管理的方法。

功能简介

阿里云RTC提供一系列摄像头管理方法,包括切换前后置摄像头、缩放镜头、曝光设置和对焦功能,您可以在加入频道前进行设置,帮助您在通话时使成像更清晰、大小与亮度更适宜。

实现方法

以下为常用的摄像头管理方法,更多信息,请参见AliRtcEngine接口

  • getCurrentCameraDirection:获取当前摄像头方向。
    public abstract AliRTCCameraDirection getCurrentCameraDirection();
    返回说明
    • 返回 CAMERA_REAR(0) 表示后置摄像头。
    • 返回 CAMERA_FRONT(1) 表示前置摄像头。
    • 返回 CAMERA_INVALID(-1) 表示无效。
    说明 此接口需要在摄像头打开之后调用,否则会返回 CAMERA_INVALID(-1)。
  • isCameraOn:检查摄像头是否打开。
    public abstract boolean isCameraOn();
    返回说明

    true表示摄像头已打开,false表示摄像头未打开。

  • switchCamera:切换前后摄像头(默认为前置摄像头)。
    public abstract int switchCamera();
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • setCameraZoom:设置摄像头缩放比例。
    public abstract int setCameraZoom(float zoom);
    参数说明
    参数类型描述
    zoomfloatzoom的级别。默认值为1.0。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • setCameraFlash:设置摄像头闪光灯是否打开。
    public abstract int setCameraFlash(boolean flash);
    参数说明
    参数类型描述
    flashboolean摄像头闪光灯是否打开,取值:
    • true:开启。
    • false(默认值):关闭。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • setCameraAutoFocusFaceModeEnabled:设置摄像头人脸对焦。
    public abstract boolean setCameraAutoFocusFaceModeEnabled(boolean enable);
    参数说明
    参数类型描述
    enableboolean是否开启摄像头人脸对焦,取值:
    • true:开启。
    • false(默认值):关闭。
    返回说明

    true表示方法调用成功,false方法调用失败。

  • isCameraAutoFocusFaceModeSupported:摄像头是否支持人脸聚焦。
    public abstract boolean isCameraAutoFocusFaceModeSupported();
    返回说明

    true表示支持,false表示不支持。

  • setCameraExposurePoint:设置摄像头曝光点。
    public abstract int setCameraExposurePoint(float pointX, float pointY);
    参数说明
    参数类型描述
    pointXfloat聚焦点X坐标。
    pointYfloat聚焦点Y坐标。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • setCameraFocusPoint:设置摄像头手动聚焦。
    public abstract int setCameraFocusPoint(float pointX, float pointY);
    参数说明
    参数类型描述
    pointXfloat聚焦点X坐标。
    pointYfloat聚焦点Y坐标。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。