Android 开发 Camera2开发_3_处理预览和拍照偏暗问题
通过调整曝光解决
参考:https://stackoverflow.com/questions/28429071/camera-preview-is-too-dark-in-low-light-android/49643140#49643140
参考:https://blog.csdn.net/limingbocsdn/article/details/89176907
//设置预览请求的方式 previewBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_PREVIEW);...//自动对焦 previewBuilder.set(CaptureRequest.CONTROL_AF_MODE,CaptureRequest.CONTROL_AF_MODE_CONTINUOUS_PICTURE); //设置自动曝光帧率范围 previewBuilder.set(CaptureRequest.CONTROL_AE_TARGET_FPS_RANGE,getRange());//对焦触发器设置为空闲状态 previewBuilder.set(CaptureRequest.CONTROL_AF_TRIGGER,CaptureRequest.CONTROL_AF_TRIGGER_IDLE); captureSession.setRepeatingRequest(previewBuilder.build(),captureCallback, mainHandler);private Range<Integer> getRange() {CameraManager mCameraManager = (CameraManager) context.getSystemService(Context.CAMERA_SERVICE);CameraCharacteristics chars = null;try {chars = mCameraManager.getCameraCharacteristics(cameraID);} catch (CameraAccessException e) {e.printStackTrace();}Range<Integer>[] ranges = chars.get(CameraCharacteristics.CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES);Range<Integer> result = null;for (Range<Integer> range : ranges) {//帧率不能太低,大于10if (range.getLower()<10)continue;if (result==null)result = range;//FPS下限小于15,弱光时能保证足够曝光时间,提高亮度。range范围跨度越大越好,光源足够时FPS较高,预览更流畅,光源不够时FPS较低,亮度更好。else if (range.getLower()<=15 && (range.getUpper()-range.getLower())>(result.getUpper()-result.getLower()))result = range;}return result;}
转载于:https://www.cnblogs.com/guanxinjing/p/10974624.html
Android 开发 Camera2开发_3_处理预览和拍照偏暗问题相关推荐
- Android 音视频开发(三) -- Camera2 实现预览、拍照功能
音视频 系列文章 Android 音视频开发(一) – 使用AudioRecord 录制PCM(录音):AudioTrack播放音频 Android 音视频开发(二) – Camera1 实现预览.拍 ...
- android 相机预览的分辨率,Android开发 Camera2开发_2_预览分辨率或拍照分辨率的计算...
前言 不管在Camera1或者Camera2在适配不同手机/不同使用场景的情况下都需要计算摄像头里提供的分辨率列表中最合适的那一个分辨率.所以在需要大量机型适配的app,是不建议不经过计算直接自定义分 ...
- Android 音视频开发(二) -- Camera1 实现预览、拍照功能
音视频 系列文章 Android 音视频开发(一) – 使用AudioRecord 录制PCM(录音):AudioTrack播放音频 Android 音视频开发(二) – Camera1 实现预览.拍 ...
- Android开发 Camera2开发_1_拍照功能开发
Android开发 Camera2开发_1_拍照功能开发 介绍 google已经在Android5.1之后取消了对Camera1的更新,转而提供了功能更加强大的Camera2.虽然新版本依然可以使用C ...
- 从零开发一款相机 第五篇:Camera api1实现预览、拍照、录像功能
本课程内容由 @小驰笔记 出品,欢迎关注,获取更多交流信息~ 欢迎访问个人博客:www.xiaochibiji.com 这节课,我们主要讲解如果使用camera api1接口,实现预览.拍照以及录像功 ...
- OpenHarmony应用开发之如何创建DAYU200预览器
OpenHarmony应用开发之如何创建DAYU200预览器 大家都知道预览器是很好用的,那么如何配置呢, 只要关注这两个参数就好 width,height 1920*1080 DPI 为240 视频 ...
- BarTender破解版 标签打印二次开发二维码C#预览图
很多生产环节都需要条码打印的功能,这篇文章就介绍下如何使用C#实现条码打印的功能,希望对大家能有所帮助! 条码设计软件采用的是BarTender 10.1,在此基础上进行的二次开发. 运行成功的预览图 ...
- 记录安卓与uni-app混合开发遇到的坑——图片预览问题
记录安卓与uni-app混合开发遇到的坑--图片预览问题 一.场景描述 二.需求描述 三.问题描述 四.问题解决方式 五.奉上代码(组件) 一.场景描述 用uni-app开发嵌套在安卓里面使用 二.需 ...
- 谷歌发布 Android 8.1 首个开发者预览版,优化内存效率
今晨,谷歌推出了 Android 8.1 首个开发者预览版,此次升级涵盖了针对多个功能的提升优化,其中包含对 Android Go (设备运行内存小于等于 1 GB)和加速设备上对机器学习的全新神经网 ...
- Android摄像头:只拍摄SurfaceView预览界面特定区域内容(矩形框)---完整(原理:底层SurfaceView+上层绘制ImageView)...
Android摄像头:只拍摄SurfaceView预览界面特定区域内容(矩形框)---完整实现(原理:底层SurfaceView+上层绘制ImageView) 分类: Android开发 Androi ...
最新文章
- java调用ffmpeg,mencoder进行视频转换,读取时长等
- 【Matlab 图像】图像基础操作
- 学习进度 - 004
- 【tomcat】tomcat部署项目实验
- 【tensorflow】——tensorboard可视化计算图以及参数曲线图loss图
- Spark入门实战系列--8.Spark MLlib(上)--机器学习及SparkMLlib简介
- 如何在Mac上更改“终端”窗口光标?
- 18. RSS订阅(RSS Feeds)and price rule
- cloudera-scm-service 已死,但 pid 文件存在的解决办法
- 批发零售进销存 批发零售管理软件 批发零售店铺管理软件
- 读计算机网络得学五笔吗,打破无聊难学 另类五笔学习方法
- Universal Source_free Domain Adaption论文阅读笔记
- 华为手机USB调试搜不到设备
- 证明:无理数的无理数次方是否还是无理数
- 加拿大LMIA劳工批文有效期延长至18个月,为海外劳工在加拿大临时工作及移民创造便利条件
- Xcode怎么退回旧版本?
- Oracle序列的创建和使用
- C# 使用反射获取私有属性的方法
- Java读取配置文件中文乱码的问题
- 我的世界java我的世界启动侠_我的世界启动侠
热门文章
- stm32程序跑飞_mm32芯片使用心得(三)音频播放程序修改
- a4b5笔记本大小对比_【玩码】全新升级MX350独显 小米笔记本Pro 15 2020款为创造力而生...
- 【Python】如何在Python项目中使用相对路径正确的导入模块/包
- 【2019银川网络赛D:】Take Your Seat(概率--递推+思维)
- linux vnc服务器6,Linux(RHEL6\CENTOS6\OLE6) 下VNC-SERVER安装与配置
- mysql 全文搜索怎么设置_mysql 全文搜索 技巧
- 容器技术Docker K8s 29 容器服务ACK基础与进阶-弹性伸缩
- 无约束优化问题的相关讨论
- 2021-09-1017. 电话号码的字母组合
- 93. 复原IP地址