本文介绍了哪种类型的设备sopport INFO_SUPPORTED_HARDWARE_LEVEL_FULL?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要尝试手动设置曝光时间 iso



我发现,这解释了我们首先需要检查divice是否支持 HARDWARE_LEVEL_FULL ,如果是,则表示您可以设置手动设置。



并检查google提供的方法

 如果设备支持所需的硬件级别或更好。 
boolean isHardwareLevelSupported(CameraCharacteristics c,int requiredLevel){
int deviceLevel = c.get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL);
if(deviceLevel == CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY){
return requiredLevel == deviceLevel;
}
// deviceLevel不是LEGACY,可以使用数字排序
return requiredLevel< = deviceLevel;问题是:我已经检查了我的3个defferent设备,并且他们所有的设备都有

code> LEVEL_LEGACY
...这意味着我不能触摸手动设置...但因此我想知道设备支持 INFO_SUPPORTED_HARDWARE_LEVEL_FULL



也许我以错误的方式欺骗​​这个?

解决方案

所有FULL设备都支持手动控制(没有LEGACY设备支持手动控制) p>

但是,可能有一些限制级别的设备支持手动控制。更具体的检查是查找功能。



不幸的是,大量Android设备仍在使用较旧的相机HAL,并且只能通过camera2 API支持LEGACY级别。他们可能有通过旧的相机API调整灵敏度等的供应商自定义实现,但这些不是标准的或一般记录。


I need try to set manually exposure time and iso.

I found that answer on stack, which explain that the first we need to check if divice support HARDWARE_LEVEL_FULL and if yes it means that you can set your manual settings.

And for checking google provide a method

// Returns true if the device supports the required hardware level, or better.
boolean isHardwareLevelSupported(CameraCharacteristics c, int requiredLevel) {
 int deviceLevel = c.get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL);
 if (deviceLevel == CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL_LEGACY) {
     return requiredLevel == deviceLevel;
 }
 // deviceLevel is not LEGACY, can use numerical sort
 return requiredLevel <= deviceLevel;
} 

Question is : i have checked my 3 defferent devices and all of them had LEVEL_LEGACY... Which means that i can't touch manual settings... But therefore i am wondering whitch devices support INFO_SUPPORTED_HARDWARE_LEVEL_FULL?

Maybe i am cheking this in wrong way?

解决方案

All FULL devices will support manual controls (and no LEGACY device will support manual controls), so that's all correct.

However, there may be some LIMITED-level devices that do support manual controls. The more specific check is looking for the MANUAL_SENSOR capability.

Unfortunately, a large number of Android devices are still using older camera HALs, and can only support the LEGACY level through the camera2 API. They may have vendor custom implementations for adjusting sensitivity, etc, via the old camera API, but those are not standard or documented in general.

这篇关于哪种类型的设备sopport INFO_SUPPORTED_HARDWARE_LEVEL_FULL?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-15 03:24