摄像头SDK开发笔记

本文记录了摄像头SDK开发中的画面属性调整,如亮度、对比度等,并详细讲述了遇到的两个问题及其解决方案:1)短时间内重复拍照导致的异常;2)扫描二维码后无法顺利解析的修复方法,包括对SurfaceView、SurfaceHolder的正确管理和释放。此外,还强调了在Activity和Fragment生命周期中管理摄像头对象的重要性,以防止内存泄漏和影响再次打开。
摘要由CSDN通过智能技术生成

一、画面属性
主要有以下属性:brightness(亮度)、contrast(对比度)、saturation(饱和度)、gamma(伽玛校正)、gain(增益)、hue(色调)、powerlineFrequency(电力线频率)
开发时使用seekbar调整数值,但是seekbar只有max属性,没有min属性,所以采用一个偏差值来纠正取值范围,例如色调的set方法中的取值范围是-45到+45,那么把seekbar的最大值设为90,然后取值时采用 seekbar.getProgress()-45 的方法,使最终数值控制在标准范围。

二、遇到的问题:
1、java.lang.RuntimeException: takePicture failed
参考:https://blog.csdn.net/huashuke/article/details/78676572
原因:短时间重复拍照
解决:

private boolean isOnPictureTaken= false;

if (isOnPictureTaken) { 
  camera.takePicture(null, null, mPicture); 
  isOnPictureTaken= false;
}

在PictureCallback回调方法中的,isOnPictureTaken= true;

2、扫描二维码,第一次安装时,可以顺利获取到handler返回的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值