Share via


CameraMetadata Class

Definition

The base class for camera controls and information.

[Android.Runtime.Register("android/hardware/camera2/CameraMetadata", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "TKey" })]
public abstract class CameraMetadata : Java.Lang.Object
[<Android.Runtime.Register("android/hardware/camera2/CameraMetadata", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "TKey" })>]
type CameraMetadata = class
    inherit Object
Inheritance
CameraMetadata
Derived
Attributes

Remarks

The base class for camera controls and information.

This class defines the basic key/value map used for querying for camera characteristics or capture results, and for setting camera request parameters.

All instances of CameraMetadata are immutable. Beginning with API level 32, the list of keys returned by #getKeys() may change depending on the state of the device, as may the values returned by any key with #get throughout the lifetime of the object. For information on whether a specific value is fixed, see the documentation for its key.

Java documentation for android.hardware.camera2.CameraMetadata.

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Constructors

CameraMetadata(IntPtr, JniHandleOwnership)

A constructor used when creating managed representations of JNI objects; called by the runtime.

Fields

AutomotiveLensFacingExteriorFront
Obsolete.

The camera device faces the front of the vehicle body frame.

AutomotiveLensFacingExteriorLeft
Obsolete.

The camera device faces the left side of the vehicle body frame.

AutomotiveLensFacingExteriorOther
Obsolete.

The camera device faces the outside of the vehicle body frame but not exactly one of the exterior sides defined by this enum.

AutomotiveLensFacingExteriorRear
Obsolete.

The camera device faces the rear of the vehicle body frame.

AutomotiveLensFacingExteriorRight
Obsolete.

The camera device faces the right side of the vehicle body frame.

AutomotiveLensFacingInteriorOther
Obsolete.

The camera device faces the inside of the vehicle body frame but not exactly one of seats described by this enum.

AutomotiveLensFacingInteriorSeatRow1Center
Obsolete.

The camera device faces the center seat of the first row.

AutomotiveLensFacingInteriorSeatRow1Left
Obsolete.

The camera device faces the left side seat of the first row.

AutomotiveLensFacingInteriorSeatRow1Right
Obsolete.

The camera device faces the right seat of the first row.

AutomotiveLensFacingInteriorSeatRow2Center
Obsolete.

The camera device faces the center seat of the second row.

AutomotiveLensFacingInteriorSeatRow2Left
Obsolete.

The camera device faces the left side seat of the second row.

AutomotiveLensFacingInteriorSeatRow2Right
Obsolete.

The camera device faces the right side seat of the second row.

AutomotiveLensFacingInteriorSeatRow3Center
Obsolete.

The camera device faces the center seat of the third row.

AutomotiveLensFacingInteriorSeatRow3Left
Obsolete.

The camera device faces the left side seat of the third row.

AutomotiveLensFacingInteriorSeatRow3Right
Obsolete.

The camera device faces the right seat of the third row.

AutomotiveLocationExteriorFront
Obsolete.

The camera device exists outside of the vehicle body frame and on its front side.

AutomotiveLocationExteriorLeft
Obsolete.

The camera device exists outside and on left side of the vehicle body frame.

AutomotiveLocationExteriorOther
Obsolete.

The camera exists outside of the vehicle body frame but not exactly on one of the exterior locations this enum defines.

AutomotiveLocationExteriorRear
Obsolete.

The camera device exists outside of the vehicle body frame and on its rear side.

AutomotiveLocationExteriorRight
Obsolete.

The camera device exists outside and on right side of the vehicle body frame.

AutomotiveLocationExtraFront
Obsolete.

The camera device exists outside of the extra vehicle's body frame and on its front side.

AutomotiveLocationExtraLeft
Obsolete.

The camera device exists outside and on left side of the extra vehicle body.

AutomotiveLocationExtraOther
Obsolete.

The camera device exists on an extra vehicle, such as the trailer, but not exactly on one of front, rear, left, or right side.

AutomotiveLocationExtraRear
Obsolete.

The camera device exists outside of the extra vehicle's body frame and on its rear side.

AutomotiveLocationExtraRight
Obsolete.

The camera device exists outside and on right side of the extra vehicle body.

AutomotiveLocationInterior
Obsolete.

The camera device exists inside of the vehicle cabin.

ControlAfSceneChangeDetected

Scene change is detected within the AF region(s).

ControlAfSceneChangeNotDetected

Scene change is not detected within the AF region(s).

ControlAutoframingOff
Obsolete.

Disable autoframing.

ControlAutoframingOn
Obsolete.

Enable autoframing to keep people in the frame's field of view.

ControlAutoframingStateConverged
Obsolete.

Auto-framing has reached a stable state (frame/fov is not being adjusted).

ControlAutoframingStateFraming
Obsolete.

Auto-framing is in process - either zooming in, zooming out or pan is taking place.

ControlAutoframingStateInactive
Obsolete.

Auto-framing is inactive.

ControlExtendedSceneModeBokehContinuous
Obsolete.

Bokeh effect must not slow down capture rate relative to sensor raw output, and the effect is applied to all processed streams no larger than the maximum streaming dimension.

ControlExtendedSceneModeBokehStillCapture
Obsolete.

High quality bokeh mode is enabled for all non-raw streams (including YUV, JPEG, and IMPLEMENTATION_DEFINED) when capture intent is STILL_CAPTURE.

ControlExtendedSceneModeDisabled
Obsolete.

Extended scene mode is disabled.

ControlModeUseExtendedSceneMode
Obsolete.

Use a specific extended scene mode.

ControlSettingsOverrideOff
Obsolete.

No keys are applied sooner than the other keys when applying CaptureRequest settings to the camera device.

ControlSettingsOverrideZoom
Obsolete.

Zoom related keys are applied sooner than the other keys in the CaptureRequest.

ControlVideoStabilizationModePreviewStabilization
Obsolete.

Preview stabilization, where the preview in addition to all other non-RAW streams are stabilized with the same quality of stabilization, is enabled.

DistortionCorrectionModeFast

Lens distortion correction is applied without reducing frame rate relative to sensor output.

DistortionCorrectionModeHighQuality

High-quality distortion correction is applied, at the cost of possibly reduced frame rate relative to sensor output.

DistortionCorrectionModeOff

No distortion correction is applied.

LensPoseReferenceAutomotive

The value of CameraCharacteristics#LENS_POSE_TRANSLATION android.lens.poseTranslation is relative to the origin of the automotive sensor coordinate system, which is at the center of the rear axle.

LensPoseReferenceGyroscope

The value of CameraCharacteristics#LENS_POSE_TRANSLATION android.lens.poseTranslation is relative to the position of the primary gyroscope of this Android device.

LensPoseReferencePrimaryCamera

The value of CameraCharacteristics#LENS_POSE_TRANSLATION android.lens.poseTranslation is relative to the optical center of the largest camera device facing the same direction as this camera.

LensPoseReferenceUndefined

The camera device cannot represent the values of CameraCharacteristics#LENS_POSE_TRANSLATION android.lens.poseTranslation and CameraCharacteristics#LENS_POSE_ROTATION android.lens.poseRotation accurately enough.

LogicalMultiCameraSensorSyncTypeApproximate

A software mechanism is used to synchronize between the physical cameras.

LogicalMultiCameraSensorSyncTypeCalibrated

The camera device supports frame timestamp synchronization at the hardware level, and the timestamp of a physical stream image accurately reflects its start-of-exposure time.

RequestAvailableCapabilitiesColorSpaceProfiles
Obsolete.

The device supports querying the possible combinations of color spaces, image formats, and dynamic range profiles supported by the camera and requesting a particular color space for a session via android.hardware.camera2.params.SessionConfiguration#setColorSpace .

RequestAvailableCapabilitiesDynamicRangeTenBit
Obsolete.

The device supports one or more 10-bit camera outputs according to the dynamic range profiles specified in android.hardware.camera2.params.DynamicRangeProfiles#getSupportedProfiles .

RequestAvailableCapabilitiesOfflineProcessing
Obsolete.

The camera device supports the OFFLINE_PROCESSING use case.

RequestAvailableCapabilitiesRemosaicReprocessing
Obsolete.

The device supports reprocessing from the RAW_SENSOR format with a bayer pattern given by CameraCharacteristics#SENSOR_INFO_BINNING_FACTOR android.sensor.info.binningFactor (m x n group of pixels with the same color filter) to a remosaiced regular bayer pattern.

RequestAvailableCapabilitiesStreamUseCase
Obsolete.

The camera device supports selecting a per-stream use case via android.hardware.camera2.params.OutputConfiguration#setStreamUseCase so that the device can optimize camera pipeline parameters such as tuning, sensor mode, or ISP settings for a specific user scenario.

RequestAvailableCapabilitiesSystemCamera
Obsolete.

The camera device is only accessible by Android's system components and privileged applications.

RequestAvailableCapabilitiesUltraHighResolutionSensor
Obsolete.

This camera device is capable of producing ultra high resolution images in addition to the image sizes described in the CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP android.scaler.streamConfigurationMap.

ScalerAvailableStreamUseCasesCroppedRaw
Obsolete.

Cropped RAW stream when the client chooses to crop the field of view.

ScalerAvailableStreamUseCasesDefault
Obsolete.

Default stream use case.

ScalerAvailableStreamUseCasesPreview
Obsolete.

Live stream shown to the user.

ScalerAvailableStreamUseCasesPreviewVideoStill
Obsolete.

One single stream used for combined purposes of preview, video, and still capture.

ScalerAvailableStreamUseCasesStillCapture
Obsolete.

Still photo capture.

ScalerAvailableStreamUseCasesVideoCall
Obsolete.

Long-running video call optimized for both power efficiency and video quality.

ScalerAvailableStreamUseCasesVideoRecord
Obsolete.

Recording video clips.

ScalerRotateAndCrop180
Obsolete.

Processed images are rotated by 180 degrees.

ScalerRotateAndCrop270
Obsolete.

Processed images are rotated by 270 degrees clockwise, and then cropped to the original aspect ratio.

ScalerRotateAndCrop90
Obsolete.

Processed images are rotated by 90 degrees clockwise, and then cropped to the original aspect ratio.

ScalerRotateAndCropAuto
Obsolete.

The camera API automatically selects the best concrete value for rotate-and-crop based on the application's support for resizability and the current multi-window mode.

ScalerRotateAndCropNone
Obsolete.

No rotate and crop is applied.

SensorPixelModeDefault
Obsolete.

This is the default sensor pixel mode.

SensorPixelModeMaximumResolution
Obsolete.

In this mode, sensors typically do not bin pixels, as a result can offer larger image sizes.

SensorReadoutTimestampHardware
Obsolete.

This camera device supports the onReadoutStarted callback as well as outputting readout timestamps.

SensorReadoutTimestampNotSupported
Obsolete.

This camera device doesn't support readout timestamp and onReadoutStarted callback.

StatisticsOisDataModeOff

Do not include OIS data in the capture result.

StatisticsOisDataModeOn

Include OIS data in the capture result.

Properties

Class

Returns the runtime class of this Object.

(Inherited from Object)
Handle

The handle to the underlying Android instance.

(Inherited from Object)
JniIdentityHashCode (Inherited from Object)
JniPeerMembers
Keys

Returns a list of the keys contained in this map.

PeerReference (Inherited from Object)
ThresholdClass

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

ThresholdType

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

Methods

Clone()

Creates and returns a copy of this object.

(Inherited from Object)
Dispose() (Inherited from Object)
Dispose(Boolean) (Inherited from Object)
Equals(Object)

Indicates whether some other object is "equal to" this one.

(Inherited from Object)
GetHashCode()

Returns a hash code value for the object.

(Inherited from Object)
JavaFinalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

(Inherited from Object)
Notify()

Wakes up a single thread that is waiting on this object's monitor.

(Inherited from Object)
NotifyAll()

Wakes up all threads that are waiting on this object's monitor.

(Inherited from Object)
SetHandle(IntPtr, JniHandleOwnership)

Sets the Handle property.

(Inherited from Object)
ToArray<T>() (Inherited from Object)
ToString()

Returns a string representation of the object.

(Inherited from Object)
UnregisterFromRuntime() (Inherited from Object)
Wait()

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>.

(Inherited from Object)
Wait(Int64, Int32)

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed.

(Inherited from Object)
Wait(Int64)

Causes the current thread to wait until it is awakened, typically by being <em>notified</em> or <em>interrupted</em>, or until a certain amount of real time has elapsed.

(Inherited from Object)

Explicit Interface Implementations

IJavaPeerable.Disposed() (Inherited from Object)
IJavaPeerable.DisposeUnlessReferenced() (Inherited from Object)
IJavaPeerable.Finalized() (Inherited from Object)
IJavaPeerable.JniManagedPeerState (Inherited from Object)
IJavaPeerable.SetJniIdentityHashCode(Int32) (Inherited from Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) (Inherited from Object)
IJavaPeerable.SetPeerReference(JniObjectReference) (Inherited from Object)

Extension Methods

JavaCast<TResult>(IJavaObject)

Performs an Android runtime-checked type conversion.

JavaCast<TResult>(IJavaObject)
GetJniTypeName(IJavaPeerable)

Applies to