BaseCameraThe base camera interface.
CameraThe camera interface is used to control the flow of data to use cases, control the camera via the CameraControl, and publish the state of the camera via CameraInfo.
CameraCaptureResultThe result of a single image capture.
CameraControlThe CameraControl provides various asynchronous operations like zoom, focus and metering which affects output of all UseCases currently bound to that camera.
CameraControlInternalThe CameraControlInternal Interface.
CameraControlInternal.ControlUpdateListenerListener called when CameraControlInternal need to notify event.
CameraDeviceConfigConfiguration containing options for configuring a Camera device.
CameraDeviceConfig.Builder<B>Builder for a CameraDeviceConfig.
CameraDeviceSurfaceManagerCamera device manager to provide the guaranteed supported stream capabilities related info for all camera devices
CameraFactoryThe factory class that creates BaseCamera instances.
CameraFilterAn interface for filtering cameras.
CameraIdFilterA filter selects certain type of camera id from a camera id set.
CameraInfoAn interface for retrieving camera information.
CameraInfoInternalAn interface for retrieving camera information.
CameraProviderA CameraProvider provides basic access to a set of cameras such as querying for camera existence or information.
CameraXConfig.ProviderAn interface which can be implemented to provide the configuration for CameraX.
CaptureBundleA interface to return an ordered collection of CaptureStage.
CaptureConfig.OptionUnpackerInterface for unpacking a configuration into a CaptureConfig.Builder
CaptureProcessorA processing step of the image capture pipeline.
CaptureStageA CaptureConfig with an identifier.
ConfigA Configuration is a collection of options and values.
Config.ExtendableBuilderExtendable builders are used to add externally defined options to a configuration.
Config.OptionMatcherA callback for retrieving results of a Config.Option search.
ConfigProvider<C>A class which provides a Config object.
DeferrableSurface.OnSurfaceDetachedListenerThe listener to be called when surface is detached totally.
ExposureStateAn interface which contains the camera exposure related information.
ExtendableBuilder<T>Extendable builders are used to add externally defined options that can be passed to the implementation being built.
ImageAnalysis.AnalyzerInterface for analyzing images.
ImageCapture.OnImageSavedCallbackListener containing callbacks for image file I/O events.
ImageInfoMetadata for an image.
ImageInfoProcessorA processing step that updates the necessary CaptureStage based on the current ImageInfo.
ImageOutputConfigConfiguration containing options for configuring the output image data of a pipeline.
ImageOutputConfig.Builder<B>Builder for a ImageOutputConfig.
ImageProxyAn image proxy which has a similar interface as .
ImageProxy.PlaneProxyA plane proxy which has an analogous interface as .
ImageProxyBundleA set of ImageProxy which are mapped an identifier.
ImageReaderProxyAn image reader proxy which has an analogous interface as .
ImageReaderProxy.OnImageAvailableListenerA listener for newly available images.
ImageReaderProxyProviderProvider that provides a ImageReaderProxy instance.
MutableConfigMutableConfig is a Config that can be modified.
Observable<T>An observable stream which contains data or errors.
Observable.Observer<T>A callback that can receive new values and errors from an Observable.
Preview.SurfaceProviderA interface implemented by the application to provide a for Preview.
SessionConfig.ErrorListenerCallback for errors that occur when accessing the session config.
SessionConfig.OptionUnpackerInterface for unpacking a configuration into a SessionConfig.Builder
SurfaceRequest.TransformationInfoListenerListener that receives updates of the SurfaceRequest.TransformationInfo associated with the SurfaceRequest.
TargetConfig<T>Configuration containing options used to identify the target class and object being configured.
TargetConfig.Builder<T, B>Builder for a TargetConfig.
UseCase.EventCallbackCallback for when a UseCase transitions between attach/detach states.
UseCase.StateChangeCallbackCallback for when a UseCase transitions between active/inactive states.
UseCaseConfig<T>Configuration containing options for use cases.
UseCaseConfig.Builder<T, C, B>Builder for a UseCaseConfig.
UseCaseConfigFactoryA Repository for generating use case configurations.
UseCaseEventConfigConfiguration containing options pertaining to EventListener object.
UseCaseEventConfig.Builder<B>Builder for a UseCaseEventConfig.
VideoCapture.OnVideoSavedCallbackListener containing callbacks for video file I/O events.
ZoomStateAn interface which contains the zoom related information from a camera.


AppConfigConfiguration for adding implementation and user-specific behavior to CameraX.
AppConfig.BuilderA builder for generating AppConfig objects.
AspectRatioThe aspect ratio of the use case.
CameraCaptureCallbackA callback object for tracking the progress of a capture request submitted to the camera device.
CameraCaptureCallbacksDifferent implementations of CameraCaptureCallback.
CameraCaptureCallbacks.ComboCameraCaptureCallbackA CameraCaptureCallback which contains a list of CameraCaptureCallback and will propagate received callback to the list.
CameraCaptureFailureA report of failed capture for a single image capture.
CameraCaptureMetaDataThis class defines the enumeration constants used for querying the camera capture mode and results.
CameraCaptureResult.EmptyCameraCaptureResultAn implementation of CameraCaptureResult which always return default results.
CameraCaptureResultsUtility functionality for CameraCaptureResult.
CameraCaptureSessionStateCallbacksDifferent implementations of .
CameraDeviceStateCallbacksDifferent implementations of .
CameraIdFilterSetA CameraIdFilter which holds multiple CameraIdFilter and filters camera ids with all of them.
CameraOrientationUtilContains utility methods related to camera orientation.
CameraRepositoryA collection of BaseCamera instances.
CameraSelectorA set of requirements and priorities used to select a camera or return a filtered set of cameras.
CameraSelector.BuilderBuilder for a CameraSelector.
CameraStateRepresents the different states the camera can be in.
CameraState.StateErrorError that the camera has encountered.
CameraXMain interface for accessing CameraX library.
CameraXConfigA configuration for adding implementation and user-specific behavior to CameraX.
CameraXConfig.BuilderA builder for generating CameraXConfig objects.
CameraXThreadsStatic tag for creating CameraX threads.
CaptureConfigConfigurations needed for a capture request.
CaptureConfig.BuilderBuilder for easy modification/rebuilding of a CaptureConfig.
CaptureStage.DefaultCaptureStageA capture stage which contains no additional implementation options
Config.Option<T>An Config.Option is used to set and retrieve values for settings defined in a Config.
DeferrableSurfaceA reference to a whose creation can be deferred to a later time.
DeferrableSurfacesUtility functions for manipulating DeferrableSurface.
DevicePropertiesContainer of the device properties.
DisplayOrientedMeteringPointFactoryA MeteringPointFactory that can convert a View (x, y) into a MeteringPoint which can then be used to construct a FocusMeteringAction to start a focus and metering action.
ErrorHandlerHandler for sending and receiving error messages.
ExifUtility class for modifying metadata on JPEG files.
ExtendableUseCaseConfigFactoryA UseCaseConfigFactory that uses ConfigProviders to provide configurations.
FocusMeteringActionA configuration used to trigger a focus and/or metering action.
FocusMeteringAction.BuilderThe builder used to create the FocusMeteringAction.
FocusMeteringResultResult of the CameraControl.startFocusAndMetering(FocusMeteringAction).
ImageAnalysisA use case providing CPU accessible images for an app to perform image analysis on.
ImageAnalysis.BuilderBuilder for a ImageAnalysis.
ImageAnalysis.DefaultsProvides a base static default configuration for the ImageAnalysis.
ImageAnalysisConfigConfiguration for an image analysis use case.
ImageAnalysisConfig.BuilderBuilder for a ImageAnalysisConfig.
ImageCaptureA use case for taking a picture.
ImageCapture.BuilderBuilder for an ImageCapture.
ImageCapture.DefaultsProvides a base static default configuration for the ImageCapture
ImageCapture.MetadataHolder class for metadata that will be saved with captured images.
ImageCapture.OnImageCapturedCallbackCallback for when an image capture has completed.
ImageCapture.OutputFileOptionsOptions for saving newly captured image.
ImageCapture.OutputFileOptions.BuilderBuilder class for ImageCapture.OutputFileOptions.
ImageCapture.OutputFileResultsInfo about the saved image file.
ImageCaptureConfigConfiguration for an image capture use case.
ImageCaptureConfig.BuilderBuilder for a ImageCaptureConfig.
ImageFormatConstantsThis class used to constant values corresponding to the internal defined image format value used in
ImageReaderProxysDifferent implementations of ImageReaderProxy.
ImmediateSurfaceA DeferrableSurface which always returns immediately.
LensFacingCameraIdFilterA filter selects camera id with specified lens facing from a camera id set.
LoggerHandles logging requests inside CameraX.
MetadataImageReaderAn ImageReaderProxy which matches the incoming with its ImageInfo.
MeteringPointA MeteringPoint is used to specify a region which can then be converted to sensor coordinate system for focus and metering purpose.
MeteringPointFactoryA factory to create a MeteringPoint.
MultiValueSet<C>A value set implementation that store multiple values in type C.
MutableOptionsBundleA MutableOptionsBundle is an OptionsBundle which allows for insertion/removal.
OptionsBundleAn immutable implementation of Config.
PreviewA use case that provides a camera preview stream for displaying on-screen.
Preview.BuilderBuilder for a Preview.
Preview.DefaultsProvides a base static default configuration for the Preview
PreviewConfigConfiguration for a Preview use case.
PreviewConfig.BuilderBuilder for a PreviewConfig.
ResolutionInfoA ResolutionInfo allows the application to know the resolution information of a specific use case.
SafeCloseImageReaderProxyAn ImageReaderProxy that wraps another ImageReaderProxy to safely wait until all produced ImageProxy are closed before closing the ImageReaderProxy.
SensorOrientedMeteringPointFactoryA MeteringPointFactory that can create MeteringPoint by sensor oriented x, y , width and height.
SessionConfigConfigurations needed for a capture session.
SessionConfig.BuilderBuilder for easy modification/rebuilding of a SessionConfig.
SessionConfig.ValidatingBuilderBuilder for combining multiple instances of SessionConfig.
SingleImageProxyBundleAn ImageProxyBundle that contains a single ImageProxy.
SurfaceCombinationSurface configuration combination
SurfaceConfigSurface configuration type and size pair
SurfaceOrientedMeteringPointFactoryA MeteringPointFactory that can create MeteringPoint by surface oriented x, y on an area defined by (0, 0) - (width, height).
SurfaceRequestA completable, single-use request of a .
SurfaceRequest.ResultResult of providing a surface to a SurfaceRequest via SurfaceRequest.provideSurface(Surface, Executor, Consumer).
SurfaceRequest.TransformationInfoTransformation associated the preview output.
SurfaceSizeDefinitionCamera device surface size definition
TorchStateThe camera flash torch state.
UseCaseThe use case which all other use cases are built on top of.
UseCaseAttachStateCollection of use cases which are attached to a specific camera.
UseCaseGroupRepresents a collection of UseCase.
UseCaseGroup.BuilderA builder for generating UseCaseGroup.
VideoCaptureA use case for taking a video.
VideoCapture.BuilderBuilder for a VideoCapture.
VideoCapture.DefaultsProvides a base static default configuration for the VideoCapture
VideoCapture.MetadataHolder class for metadata that should be saved alongside captured video.
VideoCapture.OutputFileOptionsOptions for saving newly captured video.
VideoCapture.OutputFileOptions.BuilderBuilder class for VideoCapture.OutputFileOptions.
VideoCapture.OutputFileResultsInfo about the saved video file.
VideoCaptureConfigConfig for a video capture use case.
VideoCaptureConfig.BuilderBuilder for a VideoCaptureConfig.
ViewPortThe field of view of one or many UseCases.
ViewPort.BuilderBuilder for ViewPort.


BaseCamera.StateThe state of a camera within the process.
CameraCaptureFailure.ReasonThe capture result has been dropped this frame only due to an error in the framework.
CameraCaptureMetaData.AeStateAuto exposure (AE) state.
CameraCaptureMetaData.AfModeAuto focus (AF) mode.
CameraCaptureMetaData.AfStateAuto focus (AF) state.
CameraCaptureMetaData.AwbStateAuto white balance (AWB) state.
CameraCaptureMetaData.FlashStateFlash state.
CameraState.ErrorTypeTypes of errors the camera can encounter.
CameraState.TypeStates the camera can be in.
FlashModeThe flash mode options when taking a picture using ImageCapture.
SurfaceConfig.ConfigSizeThe Camera2 stream sizes for the surface.
SurfaceConfig.ConfigTypeThe Camera2 configuration type for the surface.

Annotation Types

CameraSelector.LensFacingThe direction the camera faces relative to device screen.
ExperimentalAnalyzerDenotes that the annotated API uses the experimental ImageAnalysis.Analyzer methods which allow additional features like overriding ImageAnalysis configuration and coordinates transformation.
ExperimentalCameraFilterDenotes that the annotated method uses an experimental API that customizes camera filters to select a specific camera.
ExperimentalCustomizableThreadsDenotes that the annotated method uses an experimental API that swaps the default threading implementation with a user-defined threading implementation.
ExperimentalExposureCompensationDenotes that the annotated method uses the experimental ExposureCompensation APIs that can control the exposure compensation of the camera.
ExperimentalGetImageDenotes that the annotated method uses the experimental ImageProxy.getImage() method.
ExperimentalUseCaseGroupDenotes that the annotated classes and methods uses the experimental feature which provides a grouping mechanism for UseCases.
FocusMeteringAction.MeteringModeFocus/Metering mode used to specify which 3A regions is activated for corresponding MeteringPoint.
ImageAnalysis.BackpressureStrategyHow to apply backpressure to the source producing images for analysis.
ImageAnalysis.OutputImageFormatSupported output image format for image analysis.
ImageCapture.CaptureModeCapture mode options for ImageCapture.
ImageCapture.FlashModeThe flash mode options when taking a picture using ImageCapture.
ImageCapture.FlashTypeThe flash type options when flash is required for taking a picture.
ImageCapture.ImageCaptureErrorDescribes the error that occurred during an image capture operation (such as ImageCapture.takePicture(Executor, ImageCapture.OnImageCapturedCallback)).
ImageOutputConfig.RotationValueValid integer rotation values.
SurfaceRequest.Result.ResultCodePossible result codes.
VideoCapture.VideoCaptureErrorDescribes the error that occurred during video capture operations.
ViewPort.LayoutDirectionLayoutDirection that defines the start and end of the ViewPort.ScaleType.
ViewPort.ScaleTypeScale types used to calculate the crop rect for a UseCase.