1# image_source_mdk.h 2<!--Kit: Image Kit--> 3<!--Subsystem: Multimedia--> 4<!--Owner: @aulight02--> 5<!--Designer: @liyang_bryan--> 6<!--Tester: @xchaosioda--> 7<!--Adviser: @zengyawen--> 8 9## 概述 10 11声明将ImageSource解码成像素位图的方法。 12 13**库:** libimage_source_ndk.z.so 14 15**系统能力:** SystemCapability.Multimedia.Image.Core 16 17**引用文件:** <multimedia/image_framework/image_source_mdk.h> 18 19**起始版本:** 10 20 21**相关模块:** [Image](capi-image.md) 22 23## 汇总 24 25### 结构体 26 27| 名称 | typedef关键字 | 描述 | 28| -- | -- | -- | 29| [OhosImageRegion](capi-image-ohosimageregion.md) | - | 定义图像源解码的范围选项。是[OhosImageDecodingOps](capi-image-ohosimagedecodingops.md)的成员变量。 | 30| [ImageSourceNative_](capi-image-imagesourcenative-.md) | ImageSourceNative | 为图像源方法定义native层图像源对象。 | 31| [OhosImageSourceOps](capi-image-ohosimagesourceops.md) | - | 定义图像源选项信息。此选项给[OH_ImageSource_CreateFromUri](capi-image-source-mdk-h.md#oh_imagesource_createfromuri)、[OH_ImageSource_CreateFromFd](capi-image-source-mdk-h.md#oh_imagesource_createfromfd)、[OH_ImageSource_CreateFromData](capi-image-source-mdk-h.md#oh_imagesource_createfromdata)和[OH_ImageSource_CreateIncremental](#oh_imagesource_createincremental)接口使用。 | 32| [OhosImageDecodingOps](capi-image-ohosimagedecodingops.md) | - | 定义图像源解码选项。此选项给[OH_ImageSource_CreatePixelMap](#oh_imagesource_createpixelmap)和[OH_ImageSource_CreatePixelMapList](#oh_imagesource_createpixelmaplist)接口使用。 | 33| [OhosImageSourceInfo](capi-image-ohosimagesourceinfo.md) | - | 定义图像源信息,由[OH_ImageSource_GetImageInfo](#oh_imagesource_getimageinfo)获取。 | 34| [OhosImageSource](capi-image-ohosimagesource.md) | - | 定义图像源输入资源,每次仅接收一种类型。由[OH_ImageSource_CreateFromUri](capi-image-source-mdk-h.md#oh_imagesource_createfromuri)、[OH_ImageSource_CreateFromFd](capi-image-source-mdk-h.md#oh_imagesource_createfromfd)和[OH_ImageSource_CreateFromData](capi-image-source-mdk-h.md#oh_imagesource_createfromdata)获取。 | 35| [OhosImageSourceDelayTimeList](capi-image-ohosimagesourcedelaytimelist.md) | - | 定义图像源延迟时间列表。由[OH_ImageSource_GetDelayTime](#oh_imagesource_getdelaytime)获取。 | 36| [OhosImageSourceSupportedFormat](capi-image-ohosimagesourcesupportedformat.md) | - | 定义图像源支持的格式字符串。此选项给[OhosImageSourceSupportedFormatList](capi-image-ohosimagesourcesupportedformatlist.md)和[OH_ImageSource_GetSupportedFormats](#oh_imagesource_getsupportedformats)接口使用。 | 37| [OhosImageSourceSupportedFormatList](capi-image-ohosimagesourcesupportedformatlist.md) | - | 定义图像源支持的格式字符串列表。由[OH_ImageSource_GetSupportedFormats](#oh_imagesource_getsupportedformats)获取。 | 38| [OhosImageSourceProperty](capi-image-ohosimagesourceproperty.md) | - | 定义图像源属性键值字符串。此选项给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。 | 39| [OhosImageSourceUpdateData](capi-image-ohosimagesourceupdatedata.md) | - | 定义图像源更新数据选项,由[OH_ImageSource_UpdateData](#oh_imagesource_updatedata)获取。 | 40 41### 函数 42 43| 名称 | 描述 | 44| -- | -- | 45| [int32_t OH_ImageSource_Create(napi_env env, struct OhosImageSource* src, struct OhosImageSourceOps* ops, napi_value *res)](#oh_imagesource_create) | 通过给定的信息OhosImageSource和OhosImageSourceOps结构体,获取JavaScript native层API ImageSource对象。 | 46| [int32_t OH_ImageSource_CreateFromUri(napi_env env, char* uri, size_t size, struct OhosImageSourceOps* ops, napi_value *res)](#oh_imagesource_createfromuri) | 通过给定的标识符URI和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取JavaScript native层API ImageSource对象。 | 47| [int32_t OH_ImageSource_CreateFromFd(napi_env env, int32_t fd, struct OhosImageSourceOps* ops, napi_value *res)](#oh_imagesource_createfromfd) | 通过给定的文件描述符fd和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取JavaScript native层API ImageSource对象。 | 48| [int32_t OH_ImageSource_CreateFromData(napi_env env, uint8_t* data, size_t dataSize, struct OhosImageSourceOps* ops, napi_value *res)](#oh_imagesource_createfromdata) | 通过给定的图像源缓冲区资源data和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取JavaScript native层API ImageSource对象。 | 49| [int32_t OH_ImageSource_CreateFromRawFile(napi_env env, RawFileDescriptor rawFile, struct OhosImageSourceOps* ops, napi_value *res)](#oh_imagesource_createfromrawfile) | 通过给定的资源描述符[RawFileDescriptor](../apis-localization-kit/capi-rawfile-rawfiledescriptor.md)和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取JavaScript native层API ImageSource对象。 | 50| [int32_t OH_ImageSource_CreateIncremental(napi_env env, struct OhosImageSource* source, struct OhosImageSourceOps* ops, napi_value *res)](#oh_imagesource_createincremental) | 通过给定的信息[OhosImageSource](capi-image-ohosimagesource.md)和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构,获取增量类型的JavaScript Native API ImageSource对象,图像数据应通过[OH_ImageSource_UpdateData](#oh_imagesource_updatedata)更新。| 51| [int32_t OH_ImageSource_CreateIncrementalFromData(napi_env env, uint8_t* data, size_t dataSize, struct OhosImageSourceOps* ops, napi_value *res)](#oh_imagesource_createincrementalfromdata) | 通过给定的图像源缓冲区资源data和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取增量类型的JavaScript Native API ImageSource对象,图像数据应通过[OH_ImageSource_UpdateData](#oh_imagesource_updatedata)更新。 | 52| [int32_t OH_ImageSource_GetSupportedFormats(struct OhosImageSourceSupportedFormatList* res)](#oh_imagesource_getsupportedformats) | 获取所有支持的解码格式元标记。 | 53| [ImageSourceNative* OH_ImageSource_InitNative(napi_env env, napi_value source)](#oh_imagesource_initnative) | 从输入JavaScript native层ImageSource对象中,转换成[ImageSourceNative](capi-image-imagesourcenative-.md)值。 | 54| [int32_t OH_ImageSource_CreatePixelMap(const ImageSourceNative* native, struct OhosImageDecodingOps* ops, napi_value *res)](#oh_imagesource_createpixelmap) | 通过一个给定的选项[OhosImageDecodingOps](capi-image-ohosimagedecodingops.md)结构体,从ImageSource中解码JavaScript native层PixelMap对象。 | 55| [int32_t OH_ImageSource_CreatePixelMapList(const ImageSourceNative* native, struct OhosImageDecodingOps* ops, napi_value *res)](#oh_imagesource_createpixelmaplist) | 通过一个给定的选项[OhosImageDecodingOps](capi-image-ohosimagedecodingops.md)结构体结构体,从ImageSource中解码所有的JavaScript native层PixelMap对象列表。 | 56| [int32_t OH_ImageSource_GetDelayTime(const ImageSourceNative* native, struct OhosImageSourceDelayTimeList* res)](#oh_imagesource_getdelaytime) | 从ImageSource(如GIF图像源)获取延迟时间列表。 | 57| [int32_t OH_ImageSource_GetFrameCount(const ImageSourceNative* native, uint32_t *res)](#oh_imagesource_getframecount) | 从ImageSource中获取帧计数。 | 58| [int32_t OH_ImageSource_GetImageInfo(const ImageSourceNative* native, int32_t index, struct OhosImageSourceInfo* info)](#oh_imagesource_getimageinfo) | 通过索引从ImageSource获取图像源信息。 | 59| [int32_t OH_ImageSource_GetImageProperty(const ImageSourceNative* native, struct OhosImageSourceProperty* key, struct OhosImageSourceProperty* value)](#oh_imagesource_getimageproperty) | 通过关键字从ImageSource中获取图像源属性。 | 60| [int32_t OH_ImageSource_UpdateData(const ImageSourceNative* native, struct OhosImageSourceUpdateData* data)](#oh_imagesource_updatedata) | 为了增量类型的ImageSource更新源数据。 | 61| [int32_t OH_ImageSource_Release(ImageSourceNative* native)](#oh_imagesource_release) | 释放native层图像源 <b>ImageSourceNative</b>。 | 62 63### 变量 64 65| 名称 | 描述 | 66| -- | -- | 67| const char* OHOS_IMAGE_PROPERTY_BITS_PER_SAMPLE = "BitsPerSample" | 定义每个样本比特的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 68| const char* OHOS_IMAGE_PROPERTY_ORIENTATION = "Orientation" | 定义方向的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 69| const char* OHOS_IMAGE_PROPERTY_IMAGE_LENGTH = "ImageLength" | 定义图像长度的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 70| const char* OHOS_IMAGE_PROPERTY_IMAGE_WIDTH = "ImageWidth" | 定义图像宽度的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 71| const char* OHOS_IMAGE_PROPERTY_GPS_LATITUDE = "GPSLatitude" | 定义GPS纬度的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 72| const char* OHOS_IMAGE_PROPERTY_GPS_LONGITUDE = "GPSLongitude" | 定义GPS经度的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 73| const char* OHOS_IMAGE_PROPERTY_GPS_LATITUDE_REF = "GPSLatitudeRef" | 定义GPS纬度参考的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 74| const char* OHOS_IMAGE_PROPERTY_GPS_LONGITUDE_REF = "GPSLongitudeRef" | 定义GPS经度参考的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 75| const char* OHOS_IMAGE_PROPERTY_DATE_TIME_ORIGINAL = "DateTimeOriginal" | 定义初始日期时间的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 76| const char* OHOS_IMAGE_PROPERTY_EXPOSURE_TIME = "ExposureTime" | 定义曝光时间的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 77| const char* OHOS_IMAGE_PROPERTY_SCENE_TYPE = "SceneType" | 定义场景类型的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 78| const char* OHOS_IMAGE_PROPERTY_ISO_SPEED_RATINGS = "ISOSpeedRatings" | 定义ISO速度等级的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 79| const char* OHOS_IMAGE_PROPERTY_F_NUMBER = "FNumber" | 定义FNumber的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 80| const char* OHOS_IMAGE_PROPERTY_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel" | 定义每个像素的压缩比特的图像属性关键字。<br>此标签给[OH_ImageSource_GetImageProperty](#oh_imagesource_getimageproperty)和[OH_ImageSource_ModifyImageProperty](#oh_imagesource_modifyimageproperty)接口使用。<br>**起始版本:** 10 | 81 82## 函数说明 83 84### OH_ImageSource_Create() 85 86``` 87int32_t OH_ImageSource_Create(napi_env env, struct OhosImageSource* src, struct OhosImageSourceOps* ops, napi_value *res) 88``` 89 90**描述** 91 92通过给定的信息OhosImageSource和OhosImageSourceOps结构体,获取JavaScript native层API ImageSource对象。 93 94**起始版本:** 10 95 96**废弃版本:** 11 97 98**替代接口:** [OH_ImageSource_CreateFromUri](#oh_imagesource_createfromuri),[OH_ImageSource_CreateFromFd](#oh_imagesource_createfromfd),[OH_ImageSource_CreateFromData](#oh_imagesource_createfromdata) 99 100**参数:** 101 102| 参数项 | 描述 | 103| -- | -- | 104| napi_env env | 表明JNI环境的指针。 | 105| struct OhosImageSource* src | 表明创建一个图像源的信息。 | 106| struct [OhosImageSourceOps](capi-image-ohosimagesourceops.md)* ops | 表明创建一个图像源的选项。 | 107| napi_value *res | 表明JavaScript native层API ImageSource对象的指针。 | 108 109**返回:** 110 111| 类型 | 说明 | 112| -- | -- | 113| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br>IMAGE_RESULT_BAD_PARAMETER:参数错误。<br>IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br>IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br>IMAGE_RESULT_SOURCE_DATA_INCOMPLETE:图像源数据不完整。<br>IMAGE_RESULT_SOURCE_DATA:图像源数据错误。<br>IMAGE_RESULT_GET_DATA_ABNORMAL:图像获取数据错误。<br>IMAGE_RESULT_TOO_LARGE:图像数据太大。<br>IMAGE_RESULT_DECODE_FAILED:解码失败。<br>IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br>IMAGE_RESULT_DECODE_EXIF_UNSUPPORT:图像解码EXIF不支持。<br>IMAGE_RESULT_PROPERTY_NOT_EXIST:图像属性不存在。<br>IMAGE_RESULT_FILE_DAMAGED:文件损坏。<br>IMAGE_RESULT_FILE_FD_ERROR:文件FD错误。<br>IMAGE_RESULT_STREAM_SIZE_ERROR:数据流错误。<br>IMAGE_RESULT_SEEK_FAILED:查找文件失败。<br>IMAGE_RESULT_PEEK_FAILED:速览文件失败。<br>IMAGE_RESULT_FREAD_FAILED:读取文件失败。 | 114 115### OH_ImageSource_CreateFromUri() 116 117``` 118int32_t OH_ImageSource_CreateFromUri(napi_env env, char* uri, size_t size,struct OhosImageSourceOps* ops, napi_value *res) 119``` 120 121**描述** 122 123通过给定的标识符URI和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取JavaScript native层API ImageSource对象。 124 125**起始版本:** 11 126 127 128**参数:** 129 130| 参数项 | 描述 | 131| -- | -- | 132| napi_env env | 表明JNI环境的指针。 | 133| char* uri | 表明图像源资源标识符,接受文件资源或者base64资源。当前文件资源只支持绝对路径。 | 134| size_t size | 表明图像源资源URI的长度。| 135| struct [OhosImageSourceOps](capi-image-ohosimagesourceops.md)* ops | 表明创建一个图像源的选项。 | 136| napi_value *res | 表明JavaScript native层API ImageSource对象的指针。 | 137 138**返回:** 139 140| 类型 | 说明 | 141| -- | -- | 142| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。 | 143 144### OH_ImageSource_CreateFromFd() 145 146``` 147int32_t OH_ImageSource_CreateFromFd(napi_env env, int32_t fd,struct OhosImageSourceOps* ops, napi_value *res) 148``` 149 150**描述** 151 152通过给定的文件描述符fd和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取JavaScript native层API ImageSource对象。 153 154**起始版本:** 11 155 156 157**参数:** 158 159| 参数项 | 描述 | 160| -- | -- | 161| napi_env env | 表明JNI环境的指针。 | 162| int32_t fd | 表明图像源文件资源描述符。 | 163| struct [OhosImageSourceOps](capi-image-ohosimagesourceops.md)* ops | 表明创建一个图像源的选项。 | 164| napi_value *res | 表明JavaScript native层API ImageSource对象的指针。 | 165 166**返回:** 167 168| 类型 | 说明 | 169| -- | -- | 170| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。 | 171 172### OH_ImageSource_CreateFromData() 173 174``` 175int32_t OH_ImageSource_CreateFromData(napi_env env, uint8_t* data, size_t dataSize,struct OhosImageSourceOps* ops, napi_value *res) 176``` 177 178**描述** 179 180通过给定的图像源缓冲区资源data和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取JavaScript native层API ImageSource对象。 181 182**起始版本:** 11 183 184 185**参数:** 186 187| 参数项 | 描述 | 188| -- | -- | 189| napi_env env | 表明JNI环境的指针。 | 190| uint8_t* data | 表明图像源缓冲区资源,接受格式化包缓冲区或者base64缓冲区。 | 191| size_t dataSize | 表明图像源缓冲区资源大小。 | 192| struct [OhosImageSourceOps](capi-image-ohosimagesourceops.md)* ops | 表明创建一个图像源的选项。 | 193| napi_value *res | 表明JavaScript native层API ImageSource对象的指针。 | 194 195**返回:** 196 197| 类型 | 说明 | 198| -- | -- | 199| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。 | 200 201### OH_ImageSource_CreateFromRawFile() 202 203``` 204int32_t OH_ImageSource_CreateFromRawFile(napi_env env, RawFileDescriptor rawFile,struct OhosImageSourceOps* ops, napi_value *res) 205``` 206 207**描述** 208 209通过给定的资源描述符[RawFileDescriptor](../apis-localization-kit/capi-rawfile-rawfiledescriptor.md)和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取JavaScript native层API ImageSource对象。 210 211**起始版本:** 11 212 213 214**参数:** 215 216| 参数项 | 描述 | 217| -- | -- | 218| napi_env env | 表明JNI环境的指针。 | 219| [RawFileDescriptor](../apis-localization-kit/capi-rawfile-rawfiledescriptor.md) rawFile | 表明图像源资源描述符。 | 220| struct [OhosImageSourceOps](capi-image-ohosimagesourceops.md)* ops | 表明创建一个图像源的选项。 | 221| napi_value *res | 表明JavaScript native层API ImageSource对象的指针。 | 222 223**返回:** 224 225| 类型 | 说明 | 226| -- | -- | 227| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。 | 228 229 230### OH_ImageSource_CreateIncremental() 231 232``` 233int32_t OH_ImageSource_CreateIncremental(napi_env env, struct OhosImageSource* source, struct OhosImageSourceOps* ops, napi_value *res) 234``` 235 236**描述** 237 238通过给定的信息[OhosImageSource](capi-image-ohosimagesource.md)和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构,获取增量类型的JavaScript Native API ImageSource对象,图像数据应通过[OH_ImageSource_UpdateData](#oh_imagesource_updatedata)更新。 239 240**起始版本:** 10 241 242**废弃版本:** 11 243 244**替代接口:** [OH_ImageSource_CreateIncrementalFromData](#oh_imagesource_createincrementalfromdata) 245 246 247**参数:** 248 249| 参数项 | 描述 | 250| -- | -- | 251| napi_env env | 表明JNI环境的指针。 | 252| struct [OhosImageSource](capi-image-ohosimagesource.md)* source | 表明创建一个图像源的信息,只接收缓冲区类型。 | 253| struct [OhosImageSourceOps](capi-image-ohosimagesourceops.md)* ops | 表明创建一个图像源的选项。 | 254| napi_value *res | 表明JavaScript native层API ImageSource对象的指针。 | 255 256**返回:** 257 258| 类型 | 说明 | 259| -- | -- | 260| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。 | 261 262### OH_ImageSource_CreateIncrementalFromData() 263 264``` 265int32_t OH_ImageSource_CreateIncrementalFromData(napi_env env, uint8_t* data, size_t dataSize,struct OhosImageSourceOps* ops, napi_value *res) 266``` 267 268**描述** 269 270通过给定的图像源缓冲区资源data和[OhosImageSourceOps](capi-image-ohosimagesourceops.md)结构体,获取增量类型的JavaScript Native API ImageSource对象,图像数据应通过[OH_ImageSource_UpdateData](#oh_imagesource_updatedata)更新。 271 272**起始版本:** 11 273 274 275**参数:** 276 277| 参数项 | 描述 | 278| -- | -- | 279| napi_env env | 表明JNI环境的指针。 | 280| uint8_t* data | 表明图像源缓冲区资源,接受格式化包缓冲区或者base64缓冲区。 | 281| size_t dataSize | 表明图像源缓冲区资源大小。 | 282| struct [OhosImageSourceOps](capi-image-ohosimagesourceops.md)* ops | 表明创建一个图像源的选项。 | 283| napi_value *res | 表明JavaScript native层API ImageSource对象的指针。 | 284 285**返回:** 286 287| 类型 | 说明 | 288| -- | -- | 289| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。 | 290 291### OH_ImageSource_GetSupportedFormats() 292 293``` 294int32_t OH_ImageSource_GetSupportedFormats(struct OhosImageSourceSupportedFormatList* res) 295``` 296 297**描述** 298 299获取所有支持的解码格式元标记。 300 301**起始版本:** 10 302 303 304**参数:** 305 306| 参数项 | 描述 | 307| -- | -- | 308| struct OhosImageSourceSupportedFormatList* res | 表明指向[OhosImageSourceSupportedFormatList](capi-image-ohosimagesourcesupportedformatlist.md)结构的列表指针。<br>当supportedFormatList为nullptr并且size以res为0作为输入时,它将以ressize返回支持的格式大小。<br>为了获得所有的格式标记,它需要比supportedFormatList中的结果大小大的足够空间,还需要为[OhosImageSourceSupportedFormat](capi-image-ohosimagesourcesupportedformat.md)项目中的每个格式提供足够的空间。 | 309 310**返回:** 311 312| 类型 | 说明 | 313| -- | -- | 314| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_CHECK_FORMAT_ERROR:检查格式不对。 | 315 316### OH_ImageSource_InitNative() 317 318``` 319ImageSourceNative* OH_ImageSource_InitNative(napi_env env, napi_value source) 320``` 321 322**描述** 323 324从输入JavaScript native层ImageSource对象中,转换成[ImageSourceNative](capi-image-imagesourcenative-.md)值。 325 326**起始版本:** 10 327 328 329**参数:** 330 331| 参数项 | 描述 | 332| -- | -- | 333| napi_env env | 表明JNI环境的指针。 | 334| napi_value source | 表明JavaScript native层API ImageSource对象的指针。 | 335 336**返回:** 337 338| 类型 | 说明 | 339| -- | -- | 340| [ImageSourceNative](capi-image-imagesourcenative-.md)* | 如果操作成功返回[ImageSourceNative](capi-image-imagesourcenative-.md)指针;如果操作失败,返回空指针。 | 341 342**参考:** 343 344[OH_ImageSource_Release](#oh_imagesource_release) 345 346### OH_ImageSource_CreatePixelMap() 347 348``` 349int32_t OH_ImageSource_CreatePixelMap(const ImageSourceNative* native,struct OhosImageDecodingOps* ops, napi_value *res) 350``` 351 352**描述** 353 354通过一个给定的选项[OhosImageDecodingOps](capi-image-ohosimagedecodingops.md)结构体,从ImageSource中解码JavaScript native层PixelMap对象。 355 356**起始版本:** 10 357 358 359**参数:** 360 361| 参数项 | 描述 | 362| -- | -- | 363| const [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 364| struct [OhosImageDecodingOps](capi-image-ohosimagedecodingops.md)* ops | 表明为了解码图像源的选项。 | 365| napi_value *res | 表明JavaScript native层PixelMap对象的指针。 | 366 367**返回:** 368 369| 类型 | 说明 | 370| -- | -- | 371| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br> IMAGE_RESULT_CREATE_DECODER_FAILED:创建解码器失败。<br> IMAGE_RESULT_CREATE_ENCODER_FAILED:创建编码器失败。<br> IMAGE_RESULT_CHECK_FORMAT_ERROR:检查格式不对。<br> IMAGE_RESULT_THIRDPART_SKIA_ERROR:skia错误。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。<br> IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST:共享内存错误。<br> IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL:共享内存数据异常。<br> IMAGE_RESULT_DECODE_ABNORMAL:图片解码异常。<br> IMAGE_RESULT_MALLOC_ABNORMAL:图像错误。<br> IMAGE_RESULT_DATA_UNSUPPORT:图片初始化错误。<br> IMAGE_RESULT_INIT_ABNORMAL:图片输入数据错误。<br> IMAGE_RESULT_CROP:裁剪错误。<br> IMAGE_RESULT_UNKNOWN_FORMAT:图片格式未知。<br> IMAGE_RESULT_PLUGIN_REGISTER_FAILED:注册插件失败。<br> IMAGE_RESULT_PLUGIN_CREATE_FAILED:创建插件失败。<br> IMAGE_RESULT_ENCODE_FAILED:增加位图失败。<br> IMAGE_RESULT_HW_DECODE_UNSUPPORT:不支持图片硬解码。<br> IMAGE_RESULT_HW_DECODE_FAILED:硬解码失败。<br>IMAGE_RESULT_ERR_IPC:ipc失败。<br> IMAGE_RESULT_INDEX_INVALID:索引无效。<br> IMAGE_RESULT_ALPHA_TYPE_ERROR:硬解码失败。<br> IMAGE_RESULT_ALLOCATER_TYPE_ERROR:硬解码失败。 | 372 373### OH_ImageSource_CreatePixelMapList() 374 375``` 376int32_t OH_ImageSource_CreatePixelMapList(const ImageSourceNative* native,struct OhosImageDecodingOps* ops, napi_value *res) 377``` 378 379**描述** 380 381通过一个给定的选项[OhosImageDecodingOps](capi-image-ohosimagedecodingops.md)结构体,从ImageSource中解码所有的JavaScript native层PixelMap对象列表。 382 383**起始版本:** 10 384 385 386**参数:** 387 388| 参数项 | 描述 | 389| -- | -- | 390| const [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 391| struct [OhosImageDecodingOps](capi-image-ohosimagedecodingops.md)* ops | 表明为了解码图像源的选项。 | 392| napi_value *res | 表明JavaScript native层PixelMap列表对象的指针。 | 393 394**返回:** 395 396| 类型 | 说明 | 397| -- | -- | 398| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br> IMAGE_RESULT_CREATE_DECODER_FAILED:创建解码器失败。<br> IMAGE_RESULT_CREATE_ENCODER_FAILED:创建编码器失败。<br> IMAGE_RESULT_CHECK_FORMAT_ERROR:检查格式不对。<br> IMAGE_RESULT_THIRDPART_SKIA_ERROR:skia错误。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。<br> IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST:共享内存错误。<br> IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL:共享内存数据异常。<br> IMAGE_RESULT_DECODE_ABNORMAL:图片解码异常。<br> IMAGE_RESULT_MALLOC_ABNORMAL:图像错误。<br> IMAGE_RESULT_DATA_UNSUPPORT:图片初始化错误。<br> IMAGE_RESULT_INIT_ABNORMAL:图片输入数据错误。<br> IMAGE_RESULT_CROP:裁剪错误。<br> IMAGE_RESULT_UNKNOWN_FORMAT:图片格式未知。<br> IMAGE_RESULT_PLUGIN_REGISTER_FAILED:注册插件失败。<br> IMAGE_RESULT_PLUGIN_CREATE_FAILED:创建插件失败。<br> IMAGE_RESULT_ENCODE_FAILED:增加位图失败。<br> IMAGE_RESULT_HW_DECODE_UNSUPPORT:不支持图片硬解码。<br> IMAGE_RESULT_HW_DECODE_FAILED:硬解码失败。<br>IMAGE_RESULT_ERR_IPC:ipc失败。<br> IMAGE_RESULT_INDEX_INVALID:索引无效。<br> IMAGE_RESULT_ALPHA_TYPE_ERROR:硬解码失败。<br> IMAGE_RESULT_ALLOCATER_TYPE_ERROR:硬解码失败。<br> IMAGE_RESULT_DECODE_EXIF_UNSUPPORT:解码的EXIF不支持。<br> IMAGE_RESULT_PROPERTY_NOT_EXIST:图片属性不存在。 | 399 400### OH_ImageSource_GetDelayTime() 401 402``` 403int32_t OH_ImageSource_GetDelayTime(const ImageSourceNative* native,struct OhosImageSourceDelayTimeList* res) 404``` 405 406**描述** 407 408从ImageSource(如GIF图像源)获取延迟时间列表。 409 410**起始版本:** 10 411 412 413**参数:** 414 415| 参数项 | 描述 | 416| -- | -- | 417| const [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 418| struct [OhosImageSourceDelayTimeList](capi-image-ohosimagesourcedelaytimelist.md)* res | 表明延迟时间列表OhosImageSourceDelayTimeList的指针。<br>当输入的res中delayTimeList是空指针并且size是0时,将通过res的size中返回延迟时间列表大小为了获取延迟时间,需要比返回的delayTimeList大小值大的足够空间。 | 419 420**返回:** 421 422| 类型 | 说明 | 423| -- | -- | 424| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br> IMAGE_RESULT_CREATE_DECODER_FAILED:创建解码器失败。<br> IMAGE_RESULT_THIRDPART_SKIA_ERROR:skia错误。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。<br> IMAGE_RESULT_DECODE_ABNORMAL:图片解码异常。<br> IMAGE_RESULT_DATA_UNSUPPORT:图片初始化错误。<br> IMAGE_RESULT_UNKNOWN_FORMAT:图片格式未知。<br> IMAGE_RESULT_PLUGIN_REGISTER_FAILED:注册插件失败。<br> IMAGE_RESULT_PLUGIN_CREATE_FAILED:创建插件失败。<br> IMAGE_RESULT_INDEX_INVALID:索引无效。<br> IMAGE_RESULT_DECODE_EXIF_UNSUPPORT:解码的EXIF不支持。<br> IMAGE_RESULT_PROPERTY_NOT_EXIST:图片属性不存在。 | 425 426### OH_ImageSource_GetFrameCount() 427 428``` 429int32_t OH_ImageSource_GetFrameCount(const ImageSourceNative* native, uint32_t *res) 430``` 431 432**描述** 433 434从ImageSource中获取帧计数。 435 436**起始版本:** 10 437 438 439**参数:** 440 441| 参数项 | 描述 | 442| -- | -- | 443| const [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 444| uint32_t *res | 表明帧计数的指针。 | 445 446**返回:** 447 448| 类型 | 说明 | 449| -- | -- | 450| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br> IMAGE_RESULT_CREATE_DECODER_FAILED:创建解码器失败。<br> IMAGE_RESULT_THIRDPART_SKIA_ERROR:skia错误。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。<br> IMAGE_RESULT_DECODE_ABNORMAL:图片解码异常。<br> IMAGE_RESULT_DATA_UNSUPPORT:图片初始化错误。<br> IMAGE_RESULT_UNKNOWN_FORMAT:图片格式未知。<br> IMAGE_RESULT_PLUGIN_REGISTER_FAILED:注册插件失败。<br> IMAGE_RESULT_PLUGIN_CREATE_FAILED:创建插件失败。<br> IMAGE_RESULT_INDEX_INVALID:索引无效。<br> IMAGE_RESULT_DECODE_EXIF_UNSUPPORT:解码的EXIF不支持。<br> IMAGE_RESULT_PROPERTY_NOT_EXIST:图片属性不存在。 | 451 452### OH_ImageSource_GetImageInfo() 453 454``` 455int32_t OH_ImageSource_GetImageInfo(const ImageSourceNative* native, int32_t index,struct OhosImageSourceInfo* info) 456``` 457 458**描述** 459 460通过索引从ImageSource获取图像源信息。 461 462**起始版本:** 10 463 464 465**参数:** 466 467| 参数项 | 描述 | 468| -- | -- | 469| const [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 470| int32_t index | 表明帧计数的指针。 | 471| struct [OhosImageSourceInfo](capi-image-ohosimagesourceinfo.md)* info | 表明图像源信息OhosImageSourceInfo的指针。 | 472 473**返回:** 474 475| 类型 | 说明 | 476| -- | -- | 477| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br>OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br> IMAGE_RESULT_CREATE_DECODER_FAILED:创建解码器失败。<br> IMAGE_RESULT_THIRDPART_SKIA_ERROR:skia错误。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。<br> IMAGE_RESULT_DECODE_ABNORMAL:图片解码异常。<br> IMAGE_RESULT_DATA_UNSUPPORT:图片初始化错误。<br> IMAGE_RESULT_UNKNOWN_FORMAT:图片格式未知。<br> IMAGE_RESULT_PLUGIN_REGISTER_FAILED:注册插件失败。<br> IMAGE_RESULT_PLUGIN_CREATE_FAILED:创建插件失败。<br> IMAGE_RESULT_INDEX_INVALID:索引无效。<br> IMAGE_RESULT_DECODE_EXIF_UNSUPPORT:解码的EXIF不支持。<br> IMAGE_RESULT_PROPERTY_NOT_EXIST:图片属性不存在。 | 478 479### OH_ImageSource_GetImageProperty() 480 481``` 482int32_t OH_ImageSource_GetImageProperty(const ImageSourceNative* native, struct OhosImageSourceProperty* key, struct OhosImageSourceProperty* value) 483``` 484 485**描述** 486 487通过关键字从ImageSource中获取图像源属性。 488 489**起始版本:** 10 490 491 492**参数:** 493 494| 参数项 | 描述 | 495| -- | -- | 496| const [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 497| struct [OhosImageSourceProperty](capi-image-ohosimagesourceproperty.md)* key | 表明属性关键字OhosImageSourceProperty的指针。 | 498| struct [OhosImageSourceProperty](capi-image-ohosimagesourceproperty.md)* value | 表明作为结果的属性值OhosImageSourceProperty的指针。当输入的value中value是空指针并且size是0时,将通过value中的size返回属性值的大小。为了获取属性值,需要比value中的结果大小大的足够的空间。 | 499 500**返回:** 501 502| 类型 | 说明 | 503| -- | -- | 504| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br> OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br> IMAGE_RESULT_CREATE_DECODER_FAILED:创建解码器失败。<br> IMAGE_RESULT_THIRDPART_SKIA_ERROR:skia错误。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。<br> IMAGE_RESULT_DECODE_ABNORMAL:图片解码异常。<br> IMAGE_RESULT_DATA_UNSUPPORT:图片初始化错误。<br> IMAGE_RESULT_UNKNOWN_FORMAT:图片格式未知。<br> IMAGE_RESULT_PLUGIN_REGISTER_FAILED:注册插件失败。<br> IMAGE_RESULT_PLUGIN_CREATE_FAILED:创建插件失败。<br> IMAGE_RESULT_INDEX_INVALID:索引无效。<br> IMAGE_RESULT_DECODE_EXIF_UNSUPPORT:解码的EXIF不支持。<br> IMAGE_RESULT_PROPERTY_NOT_EXIST:图片属性不存在。 | 505 506### OH_ImageSource_ModifyImageProperty() 507 508``` 509int32_t OH_ImageSource_ModifyImageProperty(const ImageSourceNative* native, struct OhosImageSourceProperty* key, struct OhosImageSourceProperty* value) 510``` 511 512**描述** 513 514通过关键字为ImageSource修改图像源属性。 515 516**起始版本:** 10 517 518 519**参数:** 520 521| 参数项 | 描述 | 522| -- | -- | 523| const [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 524| struct [OhosImageSourceProperty](capi-image-ohosimagesourceproperty.md)* key | 表明属性关键字OhosImageSourceProperty的指针。 | 525| struct [OhosImageSourceProperty](capi-image-ohosimagesourceproperty.md)* value | 为了修改表明属性值OhosImageSourceProperty的指针。 | 526 527**返回:** 528 529| 类型 | 说明 | 530| -- | -- | 531| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br> OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br> IMAGE_RESULT_CREATE_DECODER_FAILED:创建解码器失败。<br> IMAGE_RESULT_THIRDPART_SKIA_ERROR:skia错误。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。<br> IMAGE_RESULT_DECODE_ABNORMAL:图片解码异常。<br> IMAGE_RESULT_DATA_UNSUPPORT:图片初始化错误。<br> IMAGE_RESULT_UNKNOWN_FORMAT:图片格式未知。<br> IMAGE_RESULT_PLUGIN_REGISTER_FAILED:注册插件失败。<br> IMAGE_RESULT_PLUGIN_CREATE_FAILED:创建插件失败。<br> IMAGE_RESULT_INDEX_INVALID:索引无效。<br> IMAGE_RESULT_DECODE_EXIF_UNSUPPORT:解码的EXIF不支持。<br> IMAGE_RESULT_PROPERTY_NOT_EXIST:图片属性不存在。 | 532 533### OH_ImageSource_UpdateData() 534 535``` 536int32_t OH_ImageSource_UpdateData(const ImageSourceNative* native, struct OhosImageSourceUpdateData* data) 537``` 538 539**描述** 540 541为了增量类型的ImageSource更新源数据。 542 543**起始版本:** 10 544 545 546**参数:** 547 548| 参数项 | 描述 | 549| -- | -- | 550| const [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 551| struct [OhosImageSourceUpdateData](capi-image-ohosimagesourceupdatedata.md)* data | 表明更新数据信息OhosImageSourceUpdateData的指针。 | 552 553**返回:** 554 555| 类型 | 说明 | 556| -- | -- | 557| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br> OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DECODE_FAILED:解码失败。<br> IMAGE_RESULT_DECODE_HEAD_ABNORMAL:图像解码头错误。<br> IMAGE_RESULT_CREATE_DECODER_FAILED:创建解码器失败。<br> IMAGE_RESULT_CREATE_ENCODER_FAILED:创建编码器失败。<br> IMAGE_RESULT_CHECK_FORMAT_ERROR:检查格式不对。<br> IMAGE_RESULT_THIRDPART_SKIA_ERROR:Skia第三方库出错。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。<br> IMAGE_RESULT_ERR_SHAMEM_NOT_EXIST:共享内存不存在。<br> IMAGE_RESULT_ERR_SHAMEM_DATA_ABNORMAL:共享内存数据异常。<br> IMAGE_RESULT_DECODE_ABNORMAL:图片解码异常。<br> IMAGE_RESULT_MALLOC_ABNORMAL:图像内存分配异常。<br> IMAGE_RESULT_DATA_UNSUPPORT:图片初始化错误。<br> IMAGE_RESULT_INIT_ABNORMAL:图片输入数据错误。<br> IMAGE_RESULT_CROP:裁剪失败。<br> IMAGE_RESULT_UNKNOWN_FORMAT:图片格式未知。<br> IMAGE_RESULT_PLUGIN_REGISTER_FAILED:注册插件失败。<br> IMAGE_RESULT_PLUGIN_CREATE_FAILED:创建插件失败。<br> IMAGE_RESULT_ENCODE_FAILED:增加位图失败。<br> IMAGE_RESULT_HW_DECODE_UNSUPPORT:不支持图片硬解码。<br> IMAGE_RESULT_HW_DECODE_FAILED:硬解码失败。<br> IMAGE_RESULT_ERR_IPC:IPC操作失败。<br> IMAGE_RESULT_INDEX_INVALID:索引无效。<br> IMAGE_RESULT_ALPHA_TYPE_ERROR:Alpha类型错误。<br> IMAGE_RESULT_ALLOCATER_TYPE_ERROR:内存分配器类型错误。 | 558 559### OH_ImageSource_Release() 560 561``` 562int32_t OH_ImageSource_Release(ImageSourceNative* native) 563``` 564 565**描述** 566 567释放native层图像源ImageSourceNative。 568 569**起始版本:** 10 570 571 572**参数:** 573 574| 参数项 | 描述 | 575| -- | -- | 576| [ImageSourceNative](capi-image-imagesourcenative-.md)* native | 表明native层ImageSourceNative值的指针。 | 577 578**返回:** 579 580| 类型 | 说明 | 581| -- | -- | 582| int32_t | 参考[IRNdkErrCode](capi-image-mdk-common-h.md#irndkerrcode):<br> OHOS_IMAGE_RESULT_SUCCESS:操作成功。<br> IMAGE_RESULT_BAD_PARAMETER:参数错误。<br> IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI 环境异常。<br> IMAGE_RESULT_INVALID_PARAMETER:参数无效。<br> IMAGE_RESULT_GET_DATA_ABNORMAL:获取图片数据异常。<br> IMAGE_RESULT_DATA_ABNORMAL:输入图片数据错误。 | 583 584**参考:** 585 586[OH_ImageSource_Create](#oh_imagesource_create), [OH_ImageSource_CreateIncremental](#oh_imagesource_createincremental) 587 588 589