跳到主要内容

摄像头设置

开关摄像头

在通话建立之后打开/关闭摄像头。

方法

JavaScript
CallLib.enableCamera();

参数说明

参数类型必填说明
isOpenBoolean是否开启摄像头
RCCallIWCameraNumber0: 未指定,1: 前置相机,2: 后置相机

示例代码

JavaScript
// 打开前置摄像头
CallLib.enableCamera(true, 1);

// 打开后置摄像头
CallLib.enableCamera(true, 2);

// 关闭摄像头
CallLib.enableCamera(false, 0);

切换前后置摄像头

在通话建立之后切换前后置摄像头,该方法适用于通过 SDK 打开 默认摄像头 的场景,视频默认打开前置摄像头。

方法

JavaScript
CallLib.switchCamera();

示例代码

JavaScript
// 切换前后置摄像头
CallLib.switchCamera();

视频参数设置

在通话前,使用 CallLib 中的 setVideoConfig 方法可以设置本地摄像头视频预览视图是否镜像显示。注意,该方法不影响远端的显示。

方法

JavaScript
CallLib.setVideoConfig();

参数说明

参数类型必填说明
profileRCCallIWVideoProfile通话视频参数
defaultCameraRCCallIWCamera默认打开的摄像头
cameraOrientationRCCallIWCameraOrientation摄像头方向
isPreviewMirrorBoolean本地摄像头采集是否镜像
enableHardwareDecoderBoolean是否采用硬解码,仅 Android 生效
hardwareDecoderColorNumber设置解码颜色空间,仅 Android 生效
enableHardwareEncoderBoolean设备是否采用硬编码,仅 Android 生效
enableHardwareEncoderHighProfileBoolean设置硬编码压缩等级是否为 MediaCodecInfo.CodecProfileLevel.AVCProfileHigh,仅 Android 生效
hardWareEncoderColorNumber设置硬解码颜色空间,该值必须是本设备H264解码器所支持的值,可以通过获取本机所支持的编解码器、颜色空间信息,仅 Android 生效
hardwareEncoderFrameRateNumber设置系统硬编码器的编码帧率,仅 Android 生效
hardwareEncoderBitrateModeRCCallIWVideoBitrateMode设置硬编码码率控制模式,仅 Android 系统 5.0 及以上版本设置有效,仅 Android 生效

示例代码

JavaScript
// 导包方式如下,按需导入即可
import {
RCCallIWCallType,
RCCallIWCamera,
RCCallIWVideoProfile,
RCCallIWCameraOrientation,
RCCallIWVideoBitrateMode
} from "../../uni_modules/RongCloud-CallWrapper/lib";

// 基础配置示例
CallLib.setVideoConfig({
profile: RCCallIWVideoProfile.PROFILE_720_1280, // 通话视频参数,默认 480_640
defaultCamera: RCCallIWCamera.FRONT, // 默认打开的摄像头,默认前置
isPreviewMirror: true // true:镜像 false: 非镜像,没有特殊需求不用设置
});

// 完整配置示例
CallLib.setVideoConfig({
profile: RCCallIWVideoProfile.PROFILE_720_1280, // 通话视频参数
defaultCamera: RCCallIWCamera.FRONT, // 默认打开的摄像头
cameraOrientation: RCCallIWCameraOrientation.PORTRAIT, // 摄像头方向
isPreviewMirror: true, // 本地摄像头采集是否镜像
enableHardwareDecoder: true, // 是否采用硬解码,仅 Android 生效,默认是true
enableHardwareEncoder: true, // 设备是否采用硬编码,仅 Android 生效,默认是true
hardwareDecoderColor: 0, // 设置解码颜色空间,仅 Android 生效
enableHardwareEncoderHighProfile: false, // 设置硬编码压缩等级,仅 Android 生效
hardWareEncoderColor: 0, // 设置硬解码颜色空间,仅 Android 生效
hardwareEncoderFrameRate: 30, // 设置系统硬编码器的编码帧率,仅 Android 生效
hardwareEncoderBitrateMode: RCCallIWVideoBitrateMode.BITRATE_MODE_CBR // 设置硬编码码率控制模式,仅 Android 生效
});