# Interfaces (Others) > **NOTE** > > The initial APIs of this module are supported since API version 10. Newly added APIs will be marked with a superscript to indicate their earliest API version. ## CameraDevice Describes the camera device information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | |---------------------------------|-------------------------------------| ---- |----|---------- | | cameraId | string | Yes | No | Camera ID.| | cameraPosition | [CameraPosition](arkts-apis-camera-e.md#cameraposition) | Yes | No | Camera position. | | cameraType | [CameraType](arkts-apis-camera-e.md#cameratype) | Yes | No | Camera type. | | connectionType | [ConnectionType](arkts-apis-camera-e.md#connectiontype) | Yes | No | Camera connection type.| | cameraOrientation12+ | number | Yes | No | Camera installation angle, which does not change as the screen rotates. The value ranges from 0° to 360°, measured in degrees.| | hostDeviceName15+ | string | Yes | No | Remote device name.| | hostDeviceType15+ | [HostDeviceType](arkts-apis-camera-e.md#hostdevicetype15) | Yes | No | Remote device type.| ## CameraStatusInfo Describes the camera status information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only | Optional | Description | | ------ | ----------------------------- | --------- |------------ | ---------- | | camera | [CameraDevice](arkts-apis-camera-i.md#cameradevice) | No | No | Camera device.| | status | [CameraStatus](arkts-apis-camera-e.md#camerastatus) | No | No | Camera status.| ## FoldStatusInfo12+ Describes the fold state information about a foldable device. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only | Optional | Description | | ------ | ----------------------------- | --------- |------------ | ---------- | | supportedCameras | [Array](arkts-apis-camera-i.md#cameradevice) | Yes | No | List of cameras supported in the current fold state.| | foldStatus | [FoldStatus](arkts-apis-camera-e.md#foldstatus12) | Yes | No | Fold state.| ## Profile Describes the camera profile. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | -------- | ----------------------------- |---- | ---- | ------------- | | format | [CameraFormat](arkts-apis-camera-e.md#cameraformat) | Yes | No | Output format. | | size | [Size](#size) | Yes | No | Resolution.
The size setting corresponds to the camera's resolution width and height, rather than the actual dimensions of the output image. | ## FrameRateRange Describes the frame rate range. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | -------- | ----------------------------- |----- |---| -------------- | | min | number | Yes | No| Minimum frame rate. | | max | number | Yes | No| Maximum frame rate. | ## VideoProfile Describes the video configuration information. It inherits from [Profile](#profile). **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | ------------------------- | ----------------------------------------- | --- | ---- |----------- | | frameRateRange | [FrameRateRange](arkts-apis-camera-i.md#frameraterange) | Yes | No | Frame rate range, in units of frames per second (FPS).| ## CameraOutputCapability Describes the camera output capability. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | ----------------------------- | --------------------------------------------------- | ---- | ---- |-------------------| | previewProfiles | Array\<[Profile](#profile)\> | Yes | No| Supported preview profiles. | | photoProfiles | Array\<[Profile](#profile)\> | Yes | No| Supported photo profiles. | | videoProfiles | Array\<[VideoProfile](#videoprofile)\> | Yes | No| Supported video profiles. | | supportedMetadataObjectTypes | Array\<[MetadataObjectType](arkts-apis-camera-e.md#metadataobjecttype)\> | Yes | No| Supported metadata object types.| ## TorchStatusInfo11+ Describes the flashlight status information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | ---------------- | ---------- | ---- | ---- | ----------- | | isTorchAvailable | boolean | Yes | No | Whether the flashlight is available. **true** if available, **false** otherwise.| | isTorchActive | boolean | Yes | No | Whether the flashlight is activated. **true** if activated, **false** otherwise.| | torchLevel | number | Yes | No | Flashlight brightness level. The value range is [0, 1]. A larger value indicates a greater luminance. | ## Size Describes the output capability. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional | Description | | ------ | ------ | ---- |-----| ------------ | | height | number | No | No | Image height, in pixels.| | width | number | No | No | Image width, in pixels.| ## Point Describes the point coordinates, which are used for focus and exposure configuration. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only | Optional | Description | | ------ | ------ | ------ | ------ | ------------ | | x | number | No | No | X coordinate of a point. | | y | number | No | No | Y coordinate of a point. | ## CameraConcurrentInfo18+ Describes the camera's concurrency information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional | Description | | ------ | ------ |----|-----| ------------ | | device | [CameraDevice](arkts-apis-camera-i.md#cameradevice) | Yes | No | Concurrent camera device.| | type | [CameraConcurrentType](arkts-apis-camera-e.md#cameraconcurrenttype18) | Yes | No | Concurrency type.| | modes | Array\<[SceneMode](arkts-apis-camera-e.md#scenemode11) \> | Yes | No | Scene mode.| | outputCapabilities | Array\<[CameraOutputCapability](#cameraoutputcapability) \> | Yes | No | Output capabilities of the camera.| ## Location Describes the geolocation information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional |Description | | ------------ | ------ | ---- |-----|------------ | | latitude | number | No | No |Latitude, in degrees. | | longitude | number | No | No |Longitude, in degrees. | | altitude | number | No | No |Altitude, in meters. | ## PhotoCaptureSetting Describes the settings for taking an image. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | -------- | ------------------------------- | ---- | ---- |------------------------------------------------------------------------------------------------------------------------------| | quality | [QualityLevel](arkts-apis-camera-e.md#qualitylevel) | No | Yes | Image quality (low by default). | | rotation | [ImageRotation](arkts-apis-camera-e.md#imagerotation) | No | Yes | Rotation angle of the image. The default value is **0**, indicating clockwise rotation. | | location | [Location](#location) | No | Yes | Geolocation information of the image (depending on the device hardware information by default). | | mirror | boolean | No | Yes | Whether mirror photography is enabled (disabled by default). Before using this enumerated value, call [isMirrorSupported](arkts-apis-camera-PhotoOutput.md#ismirrorsupported) to check whether mirror photography is supported. **true** if enabled, **false** otherwise.| ## FrameShutterInfo Describes the frame shutter information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | --------- | ------ | ---- | ---- | ---------- | | captureId | number | No | No | ID of this capture action.| | timestamp | number | No | No | Timestamp when the frame shutter event is triggered.| ## FrameShutterEndInfo12+ Describes the frame shutter end information during capture. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | --------- | ------ | ---- | ---- | ---------- | | captureId | number | No | No | ID of this capture action.| ## CaptureStartInfo11+ Describes the capture start information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | ---------- | ------ | ---- | ---- | --------- | | captureId | number | No | No | ID of this capture action.| | time | number | No | No | Estimated duration when the sensor captures frames at the bottom layer in a single capture. If **–1** is reported, there is no estimated duration. | ## CaptureEndInfo Describes the capture end information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | ---------- | ------ | ---- | ---- | ---------| | captureId | number | No | No | ID of this capture action.| | frameCount | number | No | No | Number of frames captured.| ## AutoDeviceSwitchStatus13+ Describes the information about the automatic camera switch status. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional| Description | | ---------- |---------| ---- | ---- |-------------------------| | isDeviceSwitched | boolean | Yes | No | Whether the camera is automatically switched. **true** if auto-switched, **false** otherwise. | | isDeviceCapabilityChanged | boolean | Yes | No | Whether the camera capability is changed after the camera is automatically switched. **true** if changed, **false** otherwise.| ## Rect Describes a rectangle. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only | Optional | Description | | -------- | ------ | ------ |-----| --------------------- | | topLeftX | number | No | No | X-axis coordinate of the upper left corner of the rectangle. | | topLeftY | number | No | No | Y-axis coordinate of the upper left corner of the rectangle. | | width | number | No | No | Width of the rectangle, which is a relative value. The value range is [0, 1]. | | height | number | No | No | Height of the rectangle, which is a relative value. The value range is [0, 1]. | ## MetadataObject Describes the camera metadata, which is the data source of [CameraInput](arkts-apis-camera-CameraInput.md). The metadata is obtained through metadataOutput.on('metadataObjectsAvailable'). **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only| Optional|Description | | ----------- | ------------------------------------------- | ---- | ---- | ----------------- | | type | [MetadataObjectType](arkts-apis-camera-e.md#metadataobjecttype) | Yes | No | Metadata object type. | | timestamp | number | Yes | No | Current timestamp, in milliseconds.| | boundingBox | [Rect](#rect) | Yes | No | Metadata rectangle. | ## SmoothZoomInfo11+ Describes the smooth zoom information. **Atomic service API**: This API can be used in atomic services since API version 19. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only | Optional | Description | | -------- | ---------- | -------- | -------- | ---------- | | duration | number | No | No | Total duration of smooth zoom, in ms.| ## ControlCenterStatusInfo20+ Describes the effect status information of a camera controller. **Atomic service API**: This API can be used in atomic services since API version 20. **System capability**: SystemCapability.Multimedia.Camera.Core | Name | Type | Read-only | Optional | Description | | -------- | ---------- | -------- | -------- | ---------- | | effectType | [ControlCenterEffectType](arkts-apis-camera-e.md#controlcentereffecttype20) | Yes | No | Effect type of the camera controller.| | isActive | boolean | Yes| No| Whether the camera controller is activated. **true** if activated, **false** otherwise.|