1e41f4b71Sopenharmony_ci# Camera (V1_2) 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci 4e41f4b71Sopenharmony_ci## 概述 5e41f4b71Sopenharmony_ci 6e41f4b71Sopenharmony_ciCamera模块接口定义。Camera模块涉及相机设备的操作、流的操作、离线流的操作和各种回调等。 7e41f4b71Sopenharmony_ci 8e41f4b71Sopenharmony_ci**起始版本:** 4.1 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci 11e41f4b71Sopenharmony_ci## 汇总 12e41f4b71Sopenharmony_ci 13e41f4b71Sopenharmony_ci 14e41f4b71Sopenharmony_ci### 文件 15e41f4b71Sopenharmony_ci 16e41f4b71Sopenharmony_ci| 名称 | 描述 | 17e41f4b71Sopenharmony_ci| -------- | -------- | 18e41f4b71Sopenharmony_ci| [ICameraDevice.idl](_i_camera_device_8idl_v12.md) | Camera设备操作接口。 | 19e41f4b71Sopenharmony_ci| [ICameraHost.idl](_i_camera_host_8idl_v12.md) | Camera服务的管理类,对上层提供HDI接口。 | 20e41f4b71Sopenharmony_ci| [ICameraHostCallback.idl](_i_camera_host_callback_8idl_v12.md) | ICameraHost的回调接口,提供Camera设备和闪关灯状态变化的回调函数,回调函数由调用者实现。 | 21e41f4b71Sopenharmony_ci| [IImageProcessService.idl](_i_image_process_service_8idl_v12.md) | 声明用于图像处理服务的API。 | 22e41f4b71Sopenharmony_ci| [IStreamOperator.idl](_i_stream_operator_8idl_v12.md) | 流的操作接口。 | 23e41f4b71Sopenharmony_ci| [IStreamOperatorCallback.idl](_i_stream_operator_callback_8idl_v12.md) | [IStreamOperator](interface_i_stream_operator_v12.md)相关的回调,这些回调均由调用者实现。 | 24e41f4b71Sopenharmony_ci| [Types.idl](camera_types_8idl_v12.md) | Camera模块HDI接口使用的数据类型。 | 25e41f4b71Sopenharmony_ci 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci### 类 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci| 名称 | 描述 | 30e41f4b71Sopenharmony_ci| -------- | -------- | 31e41f4b71Sopenharmony_ci| interface [ICameraDevice](interface_i_camera_device_v12.md) | 定义Camera设备基本的操作。 | 32e41f4b71Sopenharmony_ci| interface [ICameraHost](interface_i_camera_host_v12.md) | 定义Camera设备功能操作。 | 33e41f4b71Sopenharmony_ci| interface [ICameraHostCallback](interface_i_camera_host_callback_v12.md) | 定义Camera设备功能回调操作。 | 34e41f4b71Sopenharmony_ci| interface [IImageProcessCallback](interface_i_image_process_callback_v12.md) | 定义声明图像处理回调。 | 35e41f4b71Sopenharmony_ci| interface [IImageProcessService](interface_i_image_process_service_v12.md) | 声明图像处理进程服务。 | 36e41f4b71Sopenharmony_ci| interface [IImageProcessSession](interface_i_image_process_session_v12.md) | 图像处理会话进程。 | 37e41f4b71Sopenharmony_ci| interface [IStreamOperator](interface_i_stream_operator_v12.md) | 定义Camera设备流操作。 | 38e41f4b71Sopenharmony_ci| interface [IStreamOperatorCallback](interface_i_stream_operator_callback_v12.md) | 定义Camera设备流回调操作。 | 39e41f4b71Sopenharmony_ci| struct [ImageBufferInfo](_image_buffer_info_v12.md) | 定义 ImageBufferInfo,它由[IImageProcessCallback::OnProcessDone](interface_i_image_process_callback_v12.md#onprocessdone) 使用。 | 40e41f4b71Sopenharmony_ci| struct [CaptureStartedInfo](_capture_started_info_v12.md) | 定义CaptureStartedInfo,该信息由[IStreamOperatorCallback::OnCaptureStartedV1_2](interface_i_stream_operator_callback_v12.md#oncapturestartedv1_2)使用。 | 41e41f4b71Sopenharmony_ci 42e41f4b71Sopenharmony_ci 43e41f4b71Sopenharmony_ci### 枚举 44e41f4b71Sopenharmony_ci 45e41f4b71Sopenharmony_ci| 名称 | 描述 | 46e41f4b71Sopenharmony_ci| -------- | -------- | 47e41f4b71Sopenharmony_ci| [CamRetCode](#camretcode) {<br/>NO_ERROR = 0, CAMERA_BUSY = -1, INSUFFICIENT_RESOURCES = -2, INVALID_ARGUMENT = -3, METHOD_NOT_SUPPORTED = -4, CAMERA_CLOSED = -5, DEVICE_ERROR = -6, NO_PERMISSION = -7 ,DEVICE_CONFLICT = -8<br/>} | HDI接口的返回值。 | 48e41f4b71Sopenharmony_ci| [ExtendedStreamInfoType_V1_2](#extendedstreaminfotype_v1_2) { EXTENDED_STREAM_INFO_QUICK_THUMBNAIL = 0 , EXTENDED_STREAM_INFO_SKETCH = 1 } | 扩展流信息的类型。 | 49e41f4b71Sopenharmony_ci| [OperationMode_V1_2](#operationmode_v1_2) {<br/>NORMAL = 0 , CAPTURE = 1 , VIDEO = 2 , PORTRAIT = 3 ,<br/>NIGHT = 4 , PROFESSIONAL = 5 , SLOW_MOTION = 6 , SCAN_CODE = 7 , CAPTURE_MACRO = 8 , VIDEO_MACRO = 9 , SUPER_STAB = 10<br/>} | 流使用模式。 | 50e41f4b71Sopenharmony_ci| [DeferredDeliveryImageType](#deferreddeliveryimagetype) { NONE = 0 , STILL_IMAGE = 1 , MOVING_IMAGE = 2 } | 延迟拍照的类型。 | 51e41f4b71Sopenharmony_ci| [SessionStatus](#sessionstatus) {<br/>SESSION_STATUS_READY = 0 , SESSION_STATUS_READY_SPACE_LIMIT_REACHED = 1 , SESSSON_STATUS_NOT_READY_TEMPORARILY = 2 , SESSION_STATUS_NOT_READY_OVERHEAT = 3 ,<br/>SESSION_STATUS_NOT_READY_PREEMPTED = 4<br/>} | 会话状态的类型。 | 52e41f4b71Sopenharmony_ci| [ErrorCode](#errorcode) {<br/>TIMEOUT = 0 , ERROR = 1 , BUSY = 3 , HIGH_TEMPERATURE = 4 ,<br/>ABORT = 5<br/>} | 错误代码的类型。 | 53e41f4b71Sopenharmony_ci| [ExecutionMode](#executionmode) { HIGH_PREFORMANCE = 0 , BALANCED = 1 , LOW_POWER = 2 } | 执行模式的类型。 | 54e41f4b71Sopenharmony_ci 55e41f4b71Sopenharmony_ci 56e41f4b71Sopenharmony_ci## 枚举类型说明 57e41f4b71Sopenharmony_ci 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ci### CamRetCode 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_ci``` 62e41f4b71Sopenharmony_cienum CamRetCode 63e41f4b71Sopenharmony_ci``` 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ci**描述** 66e41f4b71Sopenharmony_ci 67e41f4b71Sopenharmony_ciHDI接口的返回值。 68e41f4b71Sopenharmony_ci 69e41f4b71Sopenharmony_ci**起始版本:** 4.1 70e41f4b71Sopenharmony_ci 71e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 72e41f4b71Sopenharmony_ci| -------- | -------- | 73e41f4b71Sopenharmony_ci| NO_ERROR | 调用成功。 | 74e41f4b71Sopenharmony_ci| CAMERA_BUSY | 设备当前忙。 | 75e41f4b71Sopenharmony_ci| INSUFFICIENT_RESOURCES | 资源不足。 | 76e41f4b71Sopenharmony_ci| INVALID_ARGUMENT | 参数错误。 | 77e41f4b71Sopenharmony_ci| METHOD_NOT_SUPPORTED | 不支持当前调用方法。 | 78e41f4b71Sopenharmony_ci| CAMERA_CLOSED | Camera设备已经关闭。 | 79e41f4b71Sopenharmony_ci| DEVICE_ERROR | 驱动层发生严重错误。 | 80e41f4b71Sopenharmony_ci| NO_PERMISSION | 无权限访问设备。 | 81e41f4b71Sopenharmony_ci| DEVICE_CONFLICT | 设备冲突。 | 82e41f4b71Sopenharmony_ci 83e41f4b71Sopenharmony_ci 84e41f4b71Sopenharmony_ci### DeferredDeliveryImageType 85e41f4b71Sopenharmony_ci 86e41f4b71Sopenharmony_ci``` 87e41f4b71Sopenharmony_cienum DeferredDeliveryImageType 88e41f4b71Sopenharmony_ci``` 89e41f4b71Sopenharmony_ci 90e41f4b71Sopenharmony_ci**描述** 91e41f4b71Sopenharmony_ci 92e41f4b71Sopenharmony_ci延迟拍照的类型。 93e41f4b71Sopenharmony_ci 94e41f4b71Sopenharmony_ci**起始版本:** 4.1 95e41f4b71Sopenharmony_ci 96e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 97e41f4b71Sopenharmony_ci| -------- | -------- | 98e41f4b71Sopenharmony_ci| NONE | 不支持延迟拍照。 | 99e41f4b71Sopenharmony_ci| STILL_IMAGE | 支持静止图像。 | 100e41f4b71Sopenharmony_ci| MOVING_IMAGE | 支持动态图像。 | 101e41f4b71Sopenharmony_ci 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_ci### ErrorCode 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ci``` 106e41f4b71Sopenharmony_cienum ErrorCode 107e41f4b71Sopenharmony_ci``` 108e41f4b71Sopenharmony_ci 109e41f4b71Sopenharmony_ci**描述** 110e41f4b71Sopenharmony_ci 111e41f4b71Sopenharmony_ci错误代码的类型。 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_ci**起始版本:** 4.1 114e41f4b71Sopenharmony_ci 115e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 116e41f4b71Sopenharmony_ci| -------- | -------- | 117e41f4b71Sopenharmony_ci| TIMEOUT | 超时。 | 118e41f4b71Sopenharmony_ci| ERROR | 错误。 | 119e41f4b71Sopenharmony_ci| BUSY | 忙碌。 | 120e41f4b71Sopenharmony_ci| HIGH_TEMPERATURE | 高温。 | 121e41f4b71Sopenharmony_ci| ABORT | 中止。 | 122e41f4b71Sopenharmony_ci 123e41f4b71Sopenharmony_ci 124e41f4b71Sopenharmony_ci### ExecutionMode 125e41f4b71Sopenharmony_ci 126e41f4b71Sopenharmony_ci``` 127e41f4b71Sopenharmony_cienum ExecutionMode 128e41f4b71Sopenharmony_ci``` 129e41f4b71Sopenharmony_ci 130e41f4b71Sopenharmony_ci**描述** 131e41f4b71Sopenharmony_ci 132e41f4b71Sopenharmony_ci执行模式的类型。 133e41f4b71Sopenharmony_ci 134e41f4b71Sopenharmony_ci**起始版本:** 4.1 135e41f4b71Sopenharmony_ci 136e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 137e41f4b71Sopenharmony_ci| -------- | -------- | 138e41f4b71Sopenharmony_ci| HIGH_PREFORMANCE | 高性能模式。 | 139e41f4b71Sopenharmony_ci| BALANCED | 平衡模式。 | 140e41f4b71Sopenharmony_ci| LOW_POWER | 低功耗模式。 | 141e41f4b71Sopenharmony_ci 142e41f4b71Sopenharmony_ci 143e41f4b71Sopenharmony_ci### ExtendedStreamInfoType_V1_2 144e41f4b71Sopenharmony_ci 145e41f4b71Sopenharmony_ci``` 146e41f4b71Sopenharmony_cienum ExtendedStreamInfoType_V1_2 147e41f4b71Sopenharmony_ci``` 148e41f4b71Sopenharmony_ci 149e41f4b71Sopenharmony_ci**描述** 150e41f4b71Sopenharmony_ci 151e41f4b71Sopenharmony_ci扩展流信息的类型。 152e41f4b71Sopenharmony_ci 153e41f4b71Sopenharmony_ci**起始版本:** 4.1 154e41f4b71Sopenharmony_ci 155e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 156e41f4b71Sopenharmony_ci| -------- | -------- | 157e41f4b71Sopenharmony_ci| EXTENDED_STREAM_INFO_QUICK_THUMBNAIL | 快速缩略图的扩展流信息。 | 158e41f4b71Sopenharmony_ci| EXTENDED_STREAM_INFO_SKETCH | sketch的扩展流信息。 | 159e41f4b71Sopenharmony_ci 160e41f4b71Sopenharmony_ci 161e41f4b71Sopenharmony_ci### OperationMode_V1_2 162e41f4b71Sopenharmony_ci 163e41f4b71Sopenharmony_ci``` 164e41f4b71Sopenharmony_cienum OperationMode_V1_2 165e41f4b71Sopenharmony_ci``` 166e41f4b71Sopenharmony_ci 167e41f4b71Sopenharmony_ci**描述** 168e41f4b71Sopenharmony_ci 169e41f4b71Sopenharmony_ci流使用模式。 170e41f4b71Sopenharmony_ci 171e41f4b71Sopenharmony_ci**起始版本:** 4.1 172e41f4b71Sopenharmony_ci 173e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 174e41f4b71Sopenharmony_ci| -------- | -------- | 175e41f4b71Sopenharmony_ci| NORMAL | 普通模式,支持照片和视频场景 | 176e41f4b71Sopenharmony_ci| CAPTURE | 拍摄模式,专用于照片场景 如果实现了此模式,则不应再实现 NORMAL 模式 | 177e41f4b71Sopenharmony_ci| VIDEO | 视频模式,专用于视频秒控 如果实现了此模式,则不应再实现 NORMAL 模式 | 178e41f4b71Sopenharmony_ci| PORTRAIT | 人像模式,专用于人像照片拍摄 | 179e41f4b71Sopenharmony_ci| NIGHT | 夜间模式,专用于夜间拍摄场景 | 180e41f4b71Sopenharmony_ci| PROFESSIONAL | 专业模式,专用于专业拍照场景 | 181e41f4b71Sopenharmony_ci| SLOW_MOTION | 慢动作模式,专用于捕捉慢动作 | 182e41f4b71Sopenharmony_ci| SCAN_CODE | 扫描模式,专用于扫码 | 183e41f4b71Sopenharmony_ci| CAPTURE_MACRO | 微距模式,专用于微距拍照 | 184e41f4b71Sopenharmony_ci| VIDEO_MACRO | 微距模式,专用于微距录像 | 185e41f4b71Sopenharmony_ci| SUPER_STAB | 超级防抖模式,专用于使用超级防抖模式 | 186e41f4b71Sopenharmony_ci 187e41f4b71Sopenharmony_ci 188e41f4b71Sopenharmony_ci### SessionStatus 189e41f4b71Sopenharmony_ci 190e41f4b71Sopenharmony_ci``` 191e41f4b71Sopenharmony_cienum SessionStatus 192e41f4b71Sopenharmony_ci``` 193e41f4b71Sopenharmony_ci 194e41f4b71Sopenharmony_ci**描述** 195e41f4b71Sopenharmony_ci 196e41f4b71Sopenharmony_ci会话状态的类型。 197e41f4b71Sopenharmony_ci 198e41f4b71Sopenharmony_ci**起始版本:** 4.1 199e41f4b71Sopenharmony_ci 200e41f4b71Sopenharmony_ci| 枚举值 | 描述 | 201e41f4b71Sopenharmony_ci| -------- | -------- | 202e41f4b71Sopenharmony_ci| SESSION_STATUS_READY | 会话已准备就绪。 | 203e41f4b71Sopenharmony_ci| SESSION_STATUS_READY_SPACE_LIMIT_REACHED | 会话已准备就绪,但已达到存储限制。 | 204e41f4b71Sopenharmony_ci| SESSSON_STATUS_NOT_READY_TEMPORARILY | 会话暂时未就绪。 | 205e41f4b71Sopenharmony_ci| SESSION_STATUS_NOT_READY_OVERHEAT | 由于过热,会话未就绪。 | 206e41f4b71Sopenharmony_ci| SESSION_STATUS_NOT_READY_PREEMPTED | 由于被抢占,会话未就绪。 | 207