当前位置: 首页 > news >正文

相机从app启动流程

一、流程框架图

二、具体流程分析 

1、得到cameralist和对应的静态信息

目录如下:

 重点代码分析:

启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的准备工作。 

2、打开相机

重点代码分析:

通过openCamera启动相机

其中mStateCallback如下

private final CameraDevice.StateCallback mStateCallback = new CameraDevice.StateCallback() {@Overridepublic void onOpened(CameraDevice cameraDevice) {int id = Integer.parseInt(cameraDevice.getId());Log.d(TAG, "onOpened " + id);mCameraOpenCloseLock.release();if (mPaused) {return;}mCameraDevice[id] = cameraDevice;mCameraOpened[id] = true;if (isBackCamera() && getCameraMode() == DUAL_MODE && id == BAYER_ID) {Message msg = mCameraHandler.obtainMessage(OPEN_CAMERA, MONO_ID, 0);mCameraHandler.sendMessage(msg);} else {mCamerasOpened = true;mActivity.runOnUiThread(new Runnable() {@Overridepublic void run() {mUI.onCameraOpened(mCurrentSceneMode.getCurrentId());}});createSessions();}}@Overridepublic void onDisconnected(CameraDevice cameraDevice) {int id = Integer.parseInt(cameraDevice.getId());

相关文章:

  • Qt 窗口
  • STA(Station)模式与AP(Access Point)模式
  • VSCode 使用CMake 构建 Qt 5 窗口程序
  • [C++错误经验]case语句跳过变量初始化
  • DAY 26 函数专题1:函数定义与参数
  • Word VBA快速制作填空题
  • 基于 PyTorch 和 OpenCV 的实时表情检测系统
  • OPENCV的cvtColor和putText的讲解
  • 零基础设计模式——行为型模式 - 命令模式
  • Unity | AmplifyShaderEditor插件基础(第六集:平面波动shader)
  • java中word快速转pdf
  • 2.2.2 ASPICE的需求分析
  • 大话软工笔记—需求分析概述
  • Vue 3 + WebSocket 实战:公司通知实时推送功能详解
  • 测试微信模版消息推送
  • Yii2项目自动向GitLab上报Bug
  • Linux-08 ubuntu 的 chrome浏览器不能使用 搜狗 输入法,但是火狐可以
  • 【MATLAB第119期】基于MATLAB的KRR多输入多输出全局敏感性分析模型运用(无目标函数,考虑代理模型)
  • 原型模式深度解析:Java设计模式实战指南与克隆机制优化实践
  • C# dll版本冲突解决方案
  • 专业刷单网站建设/火星时代教育培训机构怎么样
  • 上海行业网站建设/百度软件商店
  • 济南品质网站建设费用/厦门网站推广优化哪家好
  • 网站开发jquery/如何在微信上做推广
  • 网站报价明细表/seo分析工具
  • 营销型网站开发制作/营销推广公司