1# Distributed Camera 2 3 4## 概述 5 6Distributed Camera模块接口定义。 7 8Distributed Camera模块包括对分布式相机设备的操作、流的操作和各种回调等,这部分接口与Camera一致。 通过IDCameraProvider与Source SA通信交互,实现分布式功能。 9 10**起始版本:** 3.2 11 12 13## 汇总 14 15 16### 文件 17 18| 名称 | 描述 | 19| -------- | -------- | 20| [DCameraTypes.idl](_d_camera_types_8idl.md) | Distributed Camera模块HDI接口使用的数据类型。 | 21| [IDCameraProvider.idl](_i_d_camera_provider_8idl.md) | 分布式相机SA服务和分布式相机HDF服务之间传输接口调用,并为上层提供硬件驱动接口。 | 22| [IDCameraProviderCallback.idl](_i_d_camera_provider_callback_8idl.md) | 声明分布式相机SA服务的回调。调用者需要实现回调。 | 23 24 25### 类 26 27| 名称 | 描述 | 28| -------- | -------- | 29| struct [DHBase](_d_h_base.md) | 分布式硬件设备基础信息。 | 30| struct [DCameraSettings](_d_camera_settings.md) | 分布式相机控制设置。 | 31| struct [DCStreamInfo](_d_c_stream_info.md) | 分布式相机内部流信息,用于创建流时传入相关的配置参数。 | 32| struct [DCCaptureInfo](_d_c_capture_info.md) | 分布式相机内部捕获请求的信息。 | 33| struct [DCameraBuffer](_d_camera_buffer.md) | 分布式相机进程间传递数据的共享内存结构体。 | 34| struct [DCameraHDFEvent](_d_camera_h_d_f_event.md) | 分布式相机的通知事件。 | 35| interface [IDCameraProvider](interface_i_d_camera_provider.md) | 定义Distributed Camera设备基本的操作。 | 36| interface [IDCameraProviderCallback](interface_i_d_camera_provider_callback.md) | 定义Distributed Camera设备功能回调操作。 | 37 38 39### 枚举 40 41| 名称 | 描述 | 42| -------- | -------- | 43| [DCSettingsType](#dcsettingstype) {<br/>UPDATE_METADATA = 0 , ENABLE_METADATA = 1 , DISABLE_METADATA = 2 , METADATA_RESULT = 3 ,<br/>SET_FLASH_LIGHT = 4 , FPS_RANGE = 5 , UPDATE_FRAME_METADATA = 6<br/>} | 分布式相机metadata更新类型。 | 44| [DCamRetCode](#dcamretcode) {<br/>SUCCESS = 0 , CAMERA_BUSY = 1 , INVALID_ARGUMENT = 2 , METHOD_NOT_SUPPORTED = 3 ,<br/>CAMERA_OFFLINE = 4 , EXCEED_MAX_NUMBER = 5 , DEVICE_NOT_INIT = 6 , FAILED = 7<br/>} | HDI接口的返回值。 | 45| [DCEncodeType](#dcencodetype) {<br/>ENCODE_TYPE_NULL = 0 , ENCODE_TYPE_H264 = 1 , ENCODE_TYPE_H265 = 2 , ENCODE_TYPE_JPEG = 3 ,<br/>ENCODE_TYPE_MPEG4_ES = 4<br/>} | 流数据的编码类型。 | 46| [DCStreamType](#dcstreamtype) { CONTINUOUS_FRAME = 0 , SNAPSHOT_FRAME = 1 } | 内部流的类型。 | 47 48 49## 枚举类型说明 50 51 52### DCamRetCode 53 54``` 55enum DCamRetCode 56``` 57 58**描述** 59 60 61HDI接口的返回值。 62 63**起始版本:** 3.2 64 65| 枚举值 | 描述 | 66| -------- | -------- | 67| SUCCESS | 调用成功。 | 68| CAMERA_BUSY | 设备当前忙。 | 69| INVALID_ARGUMENT | 参数错误。 | 70| METHOD_NOT_SUPPORTED | 不支持当前调用方法。 | 71| CAMERA_OFFLINE | 设备已经下线。 | 72| EXCEED_MAX_NUMBER | 使能的分布式相机设备超过限制。 | 73| DEVICE_NOT_INIT | 设备没有初始化。 | 74| FAILED | 调用失败。 | 75 76 77### DCEncodeType 78 79``` 80enum DCEncodeType 81``` 82 83**描述** 84 85 86流数据的编码类型。 87 88**起始版本:** 3.2 89 90| 枚举值 | 描述 | 91| -------- | -------- | 92| ENCODE_TYPE_NULL | 未设置编码类型。 | 93| ENCODE_TYPE_H264 | 编码类型为H264。 | 94| ENCODE_TYPE_H265 | 编码类型为H265。 | 95| ENCODE_TYPE_JPEG | 编码类型为JPEG。 | 96| ENCODE_TYPE_MPEG4_ES | 编码类型为mpeg4-es。 | 97 98 99### DCSettingsType 100 101``` 102enum DCSettingsType 103``` 104 105**描述** 106 107 108分布式相机metadata更新类型。 109 110**起始版本:** 3.2 111 112| 枚举值 | 描述 | 113| -------- | -------- | 114| UPDATE_METADATA | 设置整包数据。 | 115| ENABLE_METADATA | 使能数据配置。 | 116| DISABLE_METADATA | 去使能数据配置。 | 117| METADATA_RESULT | 分布式相机返回结果。 | 118| SET_FLASH_LIGHT | 闪光灯设置。 | 119| FPS_RANGE | fps范围设置。 | 120| UPDATE_FRAME_METADATA | 帧数设置。 | 121 122 123### DCStreamType 124 125``` 126enum DCStreamType 127``` 128 129**描述** 130 131 132内部流的类型。 133 134**起始版本:** 3.2 135 136| 枚举值 | 描述 | 137| -------- | -------- | 138| CONTINUOUS_FRAME | 连续流。例如:预览流,录像流。 | 139| SNAPSHOT_FRAME | 单个捕获流。例如:拍照流。 | 140