ScanbotSupportedSurfaceCombination

class ScanbotSupportedSurfaceCombination(context: Context, cameraMetadata: <Error class: unknown class>, encoderProfilesProvider: <Error class: unknown class>, featureCombinationQuery: <Error class: unknown class>)

Camera device supported surface configuration combinations

{@link android.hardware.camera2.CameraDevice#createCaptureSession} defines the default guaranteed stream combinations for different hardware level devices. It defines what combination of surface configuration type and size pairs can be supported for different hardware level camera devices. This structure is used to store a list of surface combinations that are guaranteed to support for this camera device.

Constructors

Link copied to clipboard
constructor(context: Context, cameraMetadata: <Error class: unknown class>, encoderProfilesProvider: <Error class: unknown class>, featureCombinationQuery: <Error class: unknown class>)

Types

Link copied to clipboard
data class BestSizesAndMaxFpsForConfigs(val bestSizes: List<Size>, val bestSizesForStreamUseCase: List<Size>?, val maxFpsForBestSizes: Int, val maxFpsForStreamUseCase: Int, val maxFpsForAllSizes: Int)
Link copied to clipboard
object Companion
Link copied to clipboard
data class FeatureSettings(val cameraMode: Int, val requiredMaxBitDepth: Int, val hasVideoCapture: Boolean = false, val videoStabilization: <Error class: unknown class> = VideoStabilization.UNSPECIFIED, val isUltraHdrOn: Boolean = false, val isHighSpeedOn: Boolean = false, val isFeatureComboInvocation: Boolean = false, val requiresFeatureComboQuery: Boolean = false, val targetFpsRange: Range<Int> = FRAME_RATE_RANGE_UNSPECIFIED, val isStrictFpsRequired: Boolean = false)

A collection of feature settings related to the Camera2 capabilities exposed by CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES and device features exposed by PackageManager.hasSystemFeature.

Functions

Applies resolution selection order related workarounds.

Link copied to clipboard
fun checkSupported(featureSettings: ScanbotSupportedSurfaceCombination.FeatureSettings, surfaceConfigList: List<<Error class: unknown class>>, dynamicRangesBySurfaceConfig: Map<<Error class: unknown class>, <Error class: unknown class>> = emptyMap(), newUseCaseConfigs: List<<Error class: unknown class><out <Error class: unknown class>>> = emptyList(), useCasesPriorityOrder: List<Int> = emptyList()): Boolean

Check whether the input surface configuration list is under the capability of any combination of this object.

Link copied to clipboard
fun getQueryableFcqCombinations(cameraMetadata: <Error class: unknown class>, videoStabilization: <Error class: unknown class>): List<<Error class: unknown class>>
Link copied to clipboard
fun getSuggestedStreamSpecifications(cameraMode: Int, attachedSurfaces: List<<Error class: unknown class>>, newUseCaseConfigsSupportedSizeMap: Map<<Error class: unknown class><out <Error class: unknown class>>, List<Size>>, videoStabilization: <Error class: unknown class> = VideoStabilization.UNSPECIFIED, hasVideoCapture: Boolean = false, isFeatureComboInvocation: Boolean, findMaxSupportedFrameRate: Boolean): <Error class: unknown class>

Finds the suggested stream specification of the newly added UseCaseConfig.

Link copied to clipboard
fun getUpdatedSurfaceSizeDefinitionByFormat(format: Int): <Error class: unknown class>

Updates the surface size definition for the specified format then return it.

Link copied to clipboard

Return true if the given feature settings is appropriate for stream use case usage.

Link copied to clipboard
fun transformSurfaceConfig(cameraMode: Int, imageFormat: Int, size: Size, streamUseCase: <Error class: unknown class>): <Error class: unknown class>

Transform to a SurfaceConfig object with image format and size info