摄像头
打开/关闭摄像头
调用 RCRTCEngine
下的 enableCamera
打开/关闭摄像头。默认开启前置摄像头,可以通过传入第二个参数指定开启的摄像头。
提示
对于 Android 嵌入式设备或使用外接摄像头的情况,建议设置 onEnableCamera
回调方法以确保设备开启成功。
-
示例代码:
设置回调
engine.onEnableCamera = (bool enable, int code, String? errMsg) {
if (code != 0) {
// 操作失败
} else {
// 操作成功
}
};开启摄像头
engine.enableCamera(true);
开启指定摄像头
engine.enableCamera(true, RCRTCCamera.back);
关闭摄像头
engine.enableCamera(false);
切换摄像头
调用 RCRTCEngine
下的 switchCamera
切换前后摄像头。通过设置 onSwitchCamera
回调方法来监听是否成功切换摄像头。
-
示例代码:
设置回调
engine.onSwitchCamera = (RCRTCCamera camera, int code, String? errMsg) {
if (code != 0) {
// 切换失败
} else {
// 切换成功
}
};切换摄像头
engine.switchCamera();
设置视频参数
调用 RCRTCEngine
下的 setVideoConfig
设置视频参数。视频参数对象通过 RCRTCVideoConfig.create()
方法来创建。
-
示例代码:
RCRTCVideoConfig config = RCRTCVideoConfig.create(
minBitrate: 500,
maxBitrate: 2200,
fps: RCRTCVideoFps.fps_24,
resolution: RCRTCVideoResolution.resolution_720_1280,
mirror: false,
);
engine.setVideoConfig(config);
手动对焦
调用 RCRTCEngine
下的 isCameraFocusSupported
来判断摄像头是否支持区域对焦。
提示
对于支持的设备,可调用 setCameraFocusPositionInPreview
进行手动对焦,设置对焦的坐标原点为视频区域的左上角。
-
示例代码:
bool supported = await engine.isCameraFocusSupported();
if (supported) {
engine.setCameraFocusPositionInPreview(100, 100);
}
区域测光
调用 RCRTCEngine
下的 isCameraExposurePositionSupported
来判断摄像头是否支持区域测光。
提示
对于支持的设备,可调用 setCameraExposurePositionInPreview
进行区域测光设置,设置测光的坐标原点为视频区域的左上角。
-
示例代码:
bool supported = await engine.isCameraExposurePositionSupported();
if (supported) {
engine.setCameraExposurePositionInPreview(100, 100);
}
采集方向
调用 RCRTCEngine
下的 setCameraCaptureOrientation
来设置摄像头采集角度。
-
示例代码:
engine.setCameraCaptureOrientation(RCRTCCameraCaptureOrientation.landscape_right);