Camera1.0和Camear2.0的区别
来源:互联网 发布:互盾数据恢复软件下载 编辑:程序博客网 时间:2024/06/17 00:55
1. Camera2是通过系统服务拿到CameraManager来管理camera设备对象,camera的一次预览、拍照都是向请求会话(CaptureSession.StateCallback,摄像头打开时由相机设备的输出surface组成)发送一次请求(CaptureRequest.Builder)。需要在它的回调onConfigured中进行处理,例如预览,如果不在此方法中写上CameraCaptureSession.setRepeatingRequest(mCaptureReqBuilder.build(), null, mHandler);那么预览就不会成功。
2. 此外,在创建会话,设置ImageReader监听,都需要传递一个Handler对象,这个Handler对象决定着这些会话、监听的回调方法会被在哪个线程中调用,如果传递的是NULL,那么回调会调用在当前线程。
闪关灯的控制方式
API并没有详细说明。
我测试了Parameters.FLASH_MODE_TORCH 和FLASH_MODE_ON:
Parameters.FLASH_MODE_TORCH : 闪光灯常开
Parameters.FLASH_MODE_ON : 拍照时闪光灯才打开
但是根据API文档的说明,需要注意的问题大概如下:
1. 只有当Android.flash.info.available = = true 时这种控制闪光灯才有效。
2. 会被自动曝光模式(CONTROL_AE_MODE)中的设置给覆盖。
我测试了几项:
a) CONTROL_AE_MODE设置为OFF、ON_AUTO_FLASH、ON_AUTO_FLASH_REDEYE、ON_ALWAYS_FLASH时,上述闪光灯控制方式不能打开。
b) CONTROL_AE_MODE设置为ON或者不设置时,上述闪光灯控制方式能打开。
1. Camera2是通过系统服务拿到CameraManager来管理camera设备对象,camera的一次预览、拍照都是向请求会话(CaptureSession.StateCallback,摄像头打开时由相机设备的输出surface组成)发送一次请求(CaptureRequest.Builder)。需要在它的回调onConfigured中进行处理,例如预览,如果不在此方法中写上CameraCaptureSession.setRepeatingRequest(mCaptureReqBuilder.build(), null, mHandler);那么预览就不会成功。
2. 此外,在创建会话,设置ImageReader监听,都需要传递一个Handler对象,这个Handler对象决定着这些会话、监听的回调方法会被在哪个线程中调用,如果传递的是NULL,那么回调会调用在当前线程。
闪关灯的控制方式
API并没有详细说明。
我测试了Parameters.FLASH_MODE_TORCH 和FLASH_MODE_ON:
Parameters.FLASH_MODE_TORCH : 闪光灯常开
Parameters.FLASH_MODE_ON : 拍照时闪光灯才打开
但是根据API文档的说明,需要注意的问题大概如下:
1. 只有当android.flash.info.available = = true 时这种控制闪光灯才有效。
2. 会被自动曝光模式(CONTROL_AE_MODE)中的设置给覆盖。
我测试了几项:
a) CONTROL_AE_MODE设置为OFF、ON_AUTO_FLASH、ON_AUTO_FLASH_REDEYE、ON_ALWAYS_FLASH时,上述闪光灯控制方式不能打开。
b) CONTROL_AE_MODE设置为ON或者不设置时,上述闪光灯控制方式能打开。
- Camera1.0和Camear2.0的区别
- Camera1.0和Camear2.0的区别
- android 手机拍照上传项目的开发-----Camera1.0(动态显示预览)
- camera1
- android camear2使用
- '/0'和"/0"的区别
- '\0'和"\0"的区别
- -128 和-0的区别
- NULL 和 0的区别
- NULL和'\0'的区别
- NULL和0的区别
- NULL和0的区别
- android 手机拍照上传项目的开发-----Camera1.2(图片文件的翻转及缩放操作)
- Android自定义相机之Camera1
- camera1 实时预览取帧
- web1.0和web2.0的区别
- AS2.0和AS3.0的区别
- USB2.0和USB3.0的区别
- D_D系统构建-开发文件目录结构
- 欢迎使用CSDN-markdown编辑器
- C++复习
- anaconda + tensorflow +ubuntu
- 使用 Servlet 读取表单数据
- Camera1.0和Camear2.0的区别
- Linux常用命令大全
- 过滤器
- AAA JAVA线程池学习以及队列拒绝策略
- AllJoy—IOS
- 一个字符串向右移问题
- bind error : Cannot assign requested address,该如何处理
- 定义装运点(shipping point)
- 数据交换