如何获取前置摄像头的预览图像

如何获取前置摄像头的预览图像

HarmonyOS
2024-01-21 14:05:57
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
commonli

1. 使用系统相机框架camera模块获取物理摄像头信息。

let cameraManager = await camera.getCameraManager(context); 
let camerasInfo = await cameraManager.getSupportedCameras(); 
let cameraDevice = this.camerasInfo[0];

2. 创建并启动物理摄像头输入流通道。

let cameraInput = await cameraManager.createCameraInput(cameraDevice); 
await this.cameraInput.open();

3. 拿到物理摄像头信息查询摄像头支持预览流支持的输出格式,结合XComponent提供的surfaceId创建预览输出通道。

let outputCapability = await this.cameraManager.getSupportedOutputCapability(cameraDevice); 
let previewProfile = this.outputCapability.previewProfiles[0]; 
let previewOutput = await cameraManager.createPreviewOutput(previewProfile, previewId);

4. 创建相机会话,在会话中添加摄像头输入流和预览输出流,然后启动会话,预览画面就会在XComponent组件上送显。

let captureSession = await cameraManager.createCaptureSession(); 
await captureSession.beginConfig(); 
await captureSession.addInput(cameraInput); 
await captureSession.addOutput(previewOutput); 
await this.captureSession.commitConfig() 
await this.captureSession.start();

参考链接

拍照实现方案

分享
微博
QQ
微信
回复
2024-01-22 16:52:42
相关问题
HarmonyOS 前置摄像头开启
213浏览 • 1回复 待解决
相机预览及切换摄像头
1049浏览 • 1回复 待解决
HarmonyOS 摄像头预览画面方向错误
384浏览 • 1回复 待解决
摄像头获取yuv数据是否有旋转
634浏览 • 1回复 待解决
请问3.1如何调用摄像头
2401浏览 • 1回复 待解决
HarmonyOS 录制屏幕 录制摄像头咨询
457浏览 • 1回复 待解决
录制过程中HarmonyOS如何切换摄像头
437浏览 • 1回复 待解决
HiSpark_IPC_DIY 摄像头烧录失败
5694浏览 • 3回复 待解决
寻找鸿蒙系统灯控设备、鸿蒙摄像头
6039浏览 • 2回复 待解决
鸿蒙webview调用摄像头和麦克风
2248浏览 • 0回复 待解决