Camera Settings

Defined in package com.scandit.datacapture.core

CameraPosition

Added in version 8.6.0

WORLD_FACING

Added in version 8.6.0

The camera is attached at the back of the device and is facing away from the user.

USER_FACING

Added in version 8.6.0

The camera is attached on the front of the device and facing towards the user.

UNSPECIFIED

Added in version 8.6.0

The camera position is unspecified.

VideoResolution

Added in version 8.6.0

HD

Added in version 8.6.0

Resolution is 1280x720.

FULL_HD

Added in version 8.6.0

Resolution is 1920x1080.

UHD4K

Added in version 8.6.0

Resolution is 3840x2160. Please note: Usage of this resolution is not part of every license. If you encounter issues, please contact us at support@scandit.com.

QUAD_HD

Added in version 8.6.0

Resolution is around 2560x1440, actual resolution depends on hardware.

AUTO

Added in version 8.6.0

AUTO will select either HD or FULL_HD based on hardware capabilities. The chosen resolution may change in future versions of the software.

MAX_RESOLUTION

Added in version 8.6.0

MAX_RESOLUTION will select the highest resolution available for the device based on total pixel count. This provides the maximum possible image quality but may impact performance.

FocusRange

Added in version 8.6.0

Enumeration of possible focus ranges to use. This can be used to restrict the auto-focus system to only consider objects in a certain range to focus on.

FULL

Added in version 8.6.0

Use the full focus range supported by the camera.

NEAR

Added in version 8.6.0

Only focus on objects that are near to the camera.

FAR

Added in version 8.6.0

Only focus on objects that are far from the camera.

FocusGestureStrategy

Added in version 8.6.0

Enumeration of possible focus gesture strategies to use.

NONE

Added in version 8.6.0

No effect when performing a focus gesture.

MANUAL

Added in version 8.6.0

Focus on PoI and only change with next focus gesture.

MANUAL_UNTIL_CAPTURE

Added in version 8.6.0

Focus on PoI and reset to previous focus strategy on capture.

AUTO_ON_LOCATION

Added in version 8.6.0

Continuously focus on the location of the gesture and only change with next focus gesture.

MacroMode

Added in version 8.6.0

Enumeration of possible macro modes to use. This can be used to allow very small codes to be scanned on supported devices.

AUTO

Added in version 8.6.0

Automatically enable macro mode depending on focus position, zoom factor, and light level.

OFF

Added in version 8.6.0

Disables macro mode.

ON

Added in version 8.6.0

Enables macro mode.

CameraSettings
class CameraSettings

Added in version 8.6.0

Holds camera-specific settings such as preferred resolution, maximum frame rate etc. The defaults are chosen such that they work for a wide variety of use cases. You may apply custom settings to further optimize scan performance for your particular use case. There is typically no need to customize the camera settings beyond changing the preferred resolution.

CameraSettings()
CameraSettings()

Added in version 8.6.0

Creates new default camera settings. zoomFactor is set to 1 and preferredResolution is set to VideoResolution.FULL_HD.

CameraSettings()
CameraSettings(settings: CameraSettings)

Added in version 8.6.0

Creates a copy of the provided settings.

Holds camera related settings such as preview resolution and maximum frame rate to use.

preferredResolution
var preferredResolution: VideoResolution

Added in version 8.6.0

The preferred resolution to use for the camera. The camera will use the resolution that is closests to the resolution preference. For example, if only lower resolutions than the preferred resolution are available, the highest available resolution will be used.

The resolution chosen by the camera only takes the preferredResolution into account, it does not consider the resolution limit of your license key. When the device selects a resolution that is larger than what you have licensed, the data capture context will report a license status error.

The default value is VideoResolution.FULL_HD.

zoomFactor
var zoomFactor: Float

Added in version 8.6.0

The zoom factor to use for the camera. This value is a multiplier, a value of 1.0 means no zoom, while a value of 2.0 doubles the size of the image, but halves the field of view.

Values less than 1.0 are treated as 1.0. Values greater than the maximum available zoom factor are clamped to the maximum accepted value.

The default zoom factor is 1.0.

shouldPreferSmoothAutoFocus
var shouldPreferSmoothAutoFocus: Boolean

Added in version 8.6.0

Whether to prefer smooth auto-focus. The default settings have this turned off. Enable it to switch to a smoother (but potentially less reliable) auto-focus strategy. For some devices, this property has no effect.

focusRange
var focusRange: FocusRange

Added in version 8.6.0

The focus range to primarily use, if supported by the device.

focusGestureStrategy
var focusGestureStrategy: FocusGestureStrategy

Added in version 8.6.0

The focus gesture strategy to use.

zoomLevels
var zoomLevels: Set<Float>

Added in version 8.6.0

The set of zoom levels available for zoom gestures and controls. Each value corresponds to a zoom factor that will be applied to the camera when zooming in our out. The camera automatically filters this list based on the camera hardware capabilities, so zoom levels unsupported by the device are omitted.

The default value is [1, 2].

torchLevel
var torchLevel: Float

Added in version 8.6.0

The torch intensity level. This value must be a number between 0.0 and 1.0. If a number outside the range is provided, either 0.0 or 1.0 will be used instead. Setting the torch level to 0.0 is equivalent to having the torch off.

macroMode
var macroMode: MacroMode

Added in version 8.6.0

The macro mode to use, if supported by the device.

The default value is MacroMode.AUTO.

adaptiveExposure
var adaptiveExposure: Boolean

Added in version 8.6.0

Enables adaptive exposure optimization for low-light conditions. When enabled, the camera can trade frame rate for brighter images by allowing longer exposure times. In low-light environments, the frame rate may drop from approximately 30fps to 10fps, while the maximum exposure duration increases from ~33ms to up to 100ms. In well-lit conditions, this setting has no impact on frame rate or exposure.

This feature is particularly useful for scanning in challenging lighting conditions where image brightness is more critical than maintaining the highest frame rate.

The default value is false.

setProperty(name, value)
fun setProperty(name: String,
        value: Any?)

Added in version 8.6.0

Sets camera property to the provided value. Use this method to set properties that are not yet part of a stable API. Properties set through this method may or may not be used or change in a future release.

getProperty(name)
fun getProperty(name: String): Any?

Added in version 8.6.0

Retrieves the value of a previously set camera property. In case the property does not exist, null is returned.