@ -72,6 +72,20 @@ status_t Camera2Client::initialize(sp<CameraProviderManager> manager) {
return initializeImpl ( manager ) ;
}
bool Camera2Client : : isZslEnabledInStillTemplate ( ) {
bool zslEnabled = false ;
CameraMetadata stillTemplate ;
status_t res = mDevice - > createDefaultRequest ( CAMERA2_TEMPLATE_STILL_CAPTURE , & stillTemplate ) ;
if ( res = = OK ) {
camera_metadata_entry_t enableZsl = stillTemplate . find ( ANDROID_CONTROL_ENABLE_ZSL ) ;
if ( enableZsl . count = = 1 ) {
zslEnabled = ( enableZsl . data . u8 [ 0 ] = = ANDROID_CONTROL_ENABLE_ZSL_TRUE ) ;
}
}
return zslEnabled ;
}
template < typename TProviderPtr >
status_t Camera2Client : : initializeImpl ( TProviderPtr providerPtr )
{
@ -93,6 +107,8 @@ status_t Camera2Client::initializeImpl(TProviderPtr providerPtr)
__FUNCTION__ , mCameraId , strerror ( - res ) , res ) ;
return NO_INIT ;
}
l . mParameters . isDeviceZslSupported = isZslEnabledInStillTemplate ( ) ;
}
String8 threadName ;