Android Camera App:点测光

我正在尝试使用Android手机实现点测光.
                parameter.set(“ auto-exposure”,“ spot-metering”);

但是,我对计量的工作方式有些困惑.如果我理解正确,则点测光的工作原理是选择一个用来设置曝光值的区域.

但是,当展平Camera.Parameters类并显示结果时,在自动曝光设置正确的情况下,测光区域为(0、0、0、0、0)[意味着宽度,高度和重量为零] -计量”.但是,在API中,“ getMeteringAreas()”文档指出计量区域不能具有零宽度和高度.

那么在测光区域为0的情况下如何使用“点测光”?我尝试将测光区域设置在右上角,但对曝光没有任何影响.

这使我相信auto-exposure = spot-metering与测光区域没有任何关系….这很奇怪.

如果不是这种情况,有人可以帮助我了解我在做什么错吗?如果您需要更多信息,我们将很乐意包含代码.

如果是这种情况(例如,测光区域与点测光无关),有人可以帮助我找出如何选择自动曝光测光器的点吗?我认为它默认为中心.

谢谢!

解决方法:

MeteringAreas参数用于自动对焦测光.

没有用于曝光测光模式的Android API.您需要找到适当的未公开参数名称和值进行设置(例如,通过native_getParameters转储所有参数).

例如,对于Samsung Galaxy Note 3,参数名称为测光,可接受的值为中心,矩阵和点.因此,您只需调用set(“ metering”,“ spot”);它神奇地工作.

上一篇:Spring Boot修改JSP不用重启的办法


下一篇:python合并pdf并添加书签