1# camera_input.h 2<!--Kit: Camera Kit--> 3<!--Subsystem: Multimedia--> 4<!--Owner: @qano--> 5<!--Designer: @leo_ysl--> 6<!--Tester: @xchaosioda--> 7<!--Adviser: @zengyawen--> 8 9## 概述 10 11声明相机输入概念。 12 13**引用文件:** <ohcamera/camera_input.h> 14 15**库:** libohcamera.so 16 17**系统能力:** SystemCapability.Multimedia.Camera.Core 18 19**起始版本:** 11 20 21**相关模块:** [OH_Camera](capi-oh-camera.md) 22 23## 汇总 24 25### 结构体 26 27| 名称 | typedef关键字 | 描述 | 28| -- | -- | -- | 29| [CameraInput_Callbacks](capi-oh-camera-camerainput-callbacks.md) | CameraInput_Callbacks | 相机输入错误事件的回调。 | 30| [Camera_Input](capi-oh-camera-camera-input.md) | Camera_Input | 相机输入对象。可以使用[OH_CameraManager_CreateCameraInput](capi-camera-manager-h.md#oh_cameramanager_createcamerainput)方法创建指针。 | 31 32### 函数 33 34| 名称 | typedef关键字 | 描述 | 35| -- | -- | -- | 36| [typedef void (\*OH_CameraInput_OnError)(const Camera_Input* cameraInput, Camera_ErrorCode errorCode)](#oh_camerainput_onerror) | OH_CameraInput_OnError | 在[CameraInput_Callbacks](capi-oh-camera-camerainput-callbacks.md)中被调用的相机输入错误回调。 | 37| [Camera_ErrorCode OH_CameraInput_RegisterCallback(Camera_Input* cameraInput, CameraInput_Callbacks* callback)](#oh_camerainput_registercallback) | - | 注册相机输入更改事件回调。 | 38| [Camera_ErrorCode OH_CameraInput_UnregisterCallback(Camera_Input* cameraInput, CameraInput_Callbacks* callback)](#oh_camerainput_unregistercallback) | - | 注销相机输入更改事件回调。 | 39| [Camera_ErrorCode OH_CameraInput_Open(Camera_Input* cameraInput)](#oh_camerainput_open) | - | 打开相机。 | 40| [Camera_ErrorCode OH_CameraInput_OpenSecureCamera(Camera_Input* cameraInput, uint64_t* secureSeqId)](#oh_camerainput_opensecurecamera) | - | 打开安全相机。 | 41| [Camera_ErrorCode OH_CameraInput_OpenConcurrentCameras(Camera_Input* cameraInput, Camera_ConcurrentType type)](#oh_camerainput_openconcurrentcameras) | - | 根据指定并发类型打开相机。 | 42| [Camera_ErrorCode OH_CameraInput_Close(Camera_Input* cameraInput)](#oh_camerainput_close) | - | 关闭相机。 | 43| [Camera_ErrorCode OH_CameraInput_Release(Camera_Input* cameraInput)](#oh_camerainput_release) | - | 释放相机输入实例。<br> 和[OH_CameraInput_Close](capi-camera-input-h.md#oh_camerainput_close)只需要调用其中一个,调用之后无须再调用[OH_CameraInput_Close](capi-camera-input-h.md#oh_camerainput_close)。 | 44 45## 函数说明 46 47### OH_CameraInput_OnError() 48 49``` 50typedef void (*OH_CameraInput_OnError)(const Camera_Input* cameraInput, Camera_ErrorCode errorCode) 51``` 52 53**描述** 54 55在[CameraInput_Callbacks](capi-oh-camera-camerainput-callbacks.md)中被调用的相机输入错误回调。 56 57**起始版本:** 11 58 59 60**参数:** 61 62| 参数项 | 描述 | 63| -- | -- | 64| const [Camera_Input](capi-oh-camera-camera-input.md)* cameraInput | 传递回调的Camera_Input。 | 65| [Camera_ErrorCode](capi-camera-h.md#camera_errorcode) errorCode | 相机输入的Camera_ErrorCode。 | 66 67**参考:** 68 69[CAMERA_SERVICE_FATAL_ERROR](capi-camera-h.md#camera_errorcode) 70 71### OH_CameraInput_RegisterCallback() 72 73``` 74Camera_ErrorCode OH_CameraInput_RegisterCallback(Camera_Input* cameraInput, CameraInput_Callbacks* callback) 75``` 76 77**描述** 78 79注册相机输入更改事件回调。 80 81**起始版本:** 11 82 83 84**参数:** 85 86| 参数项 | 描述 | 87| -- | -- | 88| [Camera_Input](capi-oh-camera-camera-input.md)* cameraInput | Camera_Input实例。 | 89| [CameraInput_Callbacks](capi-oh-camera-camerainput-callbacks.md)* callback | 要注册的相机输入更改事件回调。 | 90 91**返回:** 92 93| 类型 | 说明 | 94| -- | -- | 95| [Camera_ErrorCode](capi-camera-h.md#camera_errorcode) | CAMERA_OK:方法调用成功。<br> CAMERA_INVALID_ARGUMENT:参数丢失或参数类型不正确。 | 96 97### OH_CameraInput_UnregisterCallback() 98 99``` 100Camera_ErrorCode OH_CameraInput_UnregisterCallback(Camera_Input* cameraInput, CameraInput_Callbacks* callback) 101``` 102 103**描述** 104 105注销相机输入更改事件回调。 106 107**起始版本:** 11 108 109 110**参数:** 111 112| 参数项 | 描述 | 113| -- | -- | 114| [Camera_Input](capi-oh-camera-camera-input.md)* cameraInput | Camera_Input实例。 | 115| [CameraInput_Callbacks](capi-oh-camera-camerainput-callbacks.md)* callback | 要注销的相机输入更改事件回调。 | 116 117**返回:** 118 119| 类型 | 说明 | 120| -- | -- | 121| [Camera_ErrorCode](capi-camera-h.md#camera_errorcode) | CAMERA_OK:方法调用成功。<br> CAMERA_INVALID_ARGUMENT:参数丢失或参数类型不正确。 | 122 123### OH_CameraInput_Open() 124 125``` 126Camera_ErrorCode OH_CameraInput_Open(Camera_Input* cameraInput) 127``` 128 129**描述** 130 131打开相机。 132 133**起始版本:** 11 134 135 136**参数:** 137 138| 参数项 | 描述 | 139| -- | -- | 140| [Camera_Input](capi-oh-camera-camera-input.md)* cameraInput | 要打开的Camera_Input实例。 | 141 142**返回:** 143 144| 类型 | 说明 | 145| -- | -- | 146| [Camera_ErrorCode](capi-camera-h.md#camera_errorcode) | CAMERA_OK:方法调用成功。<br> CAMERA_INVALID_ARGUMENT:参数丢失或参数类型不正确。<br> CAMERA_CONFLICT_CAMERA:因冲突而无法使用相机。<br> CAMERA_DEVICE_DISABLED:由于安全原因禁用了相机。<br> CAMERA_SERVICE_FATAL_ERROR:相机服务出现致命错误。 | 147 148### OH_CameraInput_OpenSecureCamera() 149 150``` 151Camera_ErrorCode OH_CameraInput_OpenSecureCamera(Camera_Input* cameraInput, uint64_t* secureSeqId) 152``` 153 154**描述** 155 156打开安全相机。 157 158**起始版本:** 12 159 160 161**参数:** 162 163| 参数项 | 描述 | 164| -- | -- | 165| [Camera_Input](capi-oh-camera-camera-input.md)* cameraInput | 要打开的Camera_Input实例。 | 166| uint64_t* secureSeqId | 表示安全摄像头的序列值。 | 167 168**返回:** 169 170| 类型 | 说明 | 171| -- | -- | 172| [Camera_ErrorCode](capi-camera-h.md#camera_errorcode) | CAMERA_OK:方法调用成功。<br> CAMERA_INVALID_ARGUMENT:参数丢失或参数类型不正确。<br> CAMERA_CONFLICT_CAMERA:因冲突而无法使用相机。<br> CAMERA_DEVICE_DISABLED:由于安全原因禁用了相机。<br> CAMERA_SERVICE_FATAL_ERROR:相机服务出现致命错误。 | 173 174### OH_CameraInput_OpenConcurrentCameras() 175 176``` 177Camera_ErrorCode OH_CameraInput_OpenConcurrentCameras(Camera_Input* cameraInput, Camera_ConcurrentType type) 178``` 179 180**描述** 181 182根据指定并发类型打开相机。 183 184**起始版本:** 18 185 186 187**参数:** 188 189| 参数项 | 描述 | 190| -- | -- | 191| [Camera_Input](capi-oh-camera-camera-input.md)* cameraInput | 要打开的Camera_Input实例。 | 192| [Camera_ConcurrentType](capi-camera-h.md#camera_concurrenttype) type | 指定并发类型。 | 193 194**返回:** 195 196| 类型 | 说明 | 197| -- | -- | 198| [Camera_ErrorCode](capi-camera-h.md#camera_errorcode) | CAMERA_OK: 方法调用成功。<br> CAMERA_INVALID_ARGUMENT:参数丢失或参数类型不正确。<br> CAMERA_CONFLICT_CAMERA:因冲突而无法使用相机。<br> CAMERA_DEVICE_DISABLED:由于安全原因禁用了相机。<br> CAMERA_SERVICE_FATAL_ERROR:相机服务出现致命错误。 | 199 200### OH_CameraInput_Close() 201 202``` 203Camera_ErrorCode OH_CameraInput_Close(Camera_Input* cameraInput) 204``` 205 206**描述** 207 208关闭相机。 209 210**起始版本:** 11 211 212 213**参数:** 214 215| 参数项 | 描述 | 216| -- | -- | 217| [Camera_Input](capi-oh-camera-camera-input.md)* cameraInput | 要关闭的Camera_Input实例。 | 218 219**返回:** 220 221| 类型 | 说明 | 222| -- | -- | 223| [Camera_ErrorCode](capi-camera-h.md#camera_errorcode) | CAMERA_OK:方法调用成功。<br> CAMERA_INVALID_ARGUMENT:参数丢失或参数类型不正确。<br> CAMERA_SERVICE_FATAL_ERROR:相机服务出现致命错误。 | 224 225### OH_CameraInput_Release() 226 227``` 228Camera_ErrorCode OH_CameraInput_Release(Camera_Input* cameraInput) 229``` 230 231**描述** 232 233释放相机输入实例。<br> 和[OH_CameraInput_Close](capi-camera-input-h.md#oh_camerainput_close)只需要调用其中一个,调用之后无须再调用[OH_CameraInput_Close](capi-camera-input-h.md#oh_camerainput_close)。 234 235**起始版本:** 11 236 237 238**参数:** 239 240| 参数项 | 描述 | 241| -- | -- | 242| [Camera_Input](capi-oh-camera-camera-input.md)* cameraInput | 要释放的Camera_Input实例。 | 243 244**返回:** 245 246| 类型 | 说明 | 247| -- | -- | 248| [Camera_ErrorCode](capi-camera-h.md#camera_errorcode) | CAMERA_OK:方法调用成功。<br> CAMERA_INVALID_ARGUMENT:参数丢失或参数类型不正确。<br> CAMERA_SERVICE_FATAL_ERROR:相机服务出现致命错误。 | 249 250 251