image_mdk.h
概述
声明访问图像矩形、大小、格式和组件数据的函数。
引用文件: <multimedia/image_framework/image_mdk.h>
库: libimage_ndk.z.so
系统能力: SystemCapability.Multimedia.Image.Core
起始版本: 10
相关模块: Image
汇总
结构体
| 名称 | typedef关键字 | 描述 |
|---|---|---|
| OhosImageRect | - | 定义图像矩形信息。 |
| ImageNative_ | ImageNative | 为图像接口定义native层图像对象。 |
| OhosImageComponent | - | 定义图像组成信息。 |
枚举
| 名称 | 描述 |
|---|---|
| 图像格式 | 图像格式枚举值。 |
| 图像颜色通道类型 | 图像颜色通道类型枚举值。 |
函数
| 名称 | 描述 |
|---|---|
| ImageNative* OH_Image_InitImageNative(napi_env env, napi_value source) | 从输入的JavaScript Native API图像对象中解析native ImageNative对象。 |
| int32_t OH_Image_ClipRect(const ImageNative* native, struct OhosImageRect* rect) | 获取native ImageNative对象OhosImageRect信息。 |
| int32_t OH_Image_Size(const ImageNative* native, struct OhosImageSize* size) | 获取native ImageNative对象的OhosImageSize信息。 |
| int32_t OH_Image_Format(const ImageNative* native, int32_t* format) | 获取native ImageNative对象的图像格式。 |
| int32_t OH_Image_GetComponent(const ImageNative* native, int32_t componentType, struct OhosImageComponent* componentNative) | 从native ImageNative对象中获取OhosImageComponent。 |
| int32_t OH_Image_Release(ImageNative* native) | 释放ImageNative native对象。 这个方法无法释放JavaScript Native API Image对象,而是释放被OH_Image_InitImageNative解析的ImageNative native对象。 |
枚举类型说明
图像格式
enum anonymous enum
描述
图像格式枚举值。
起始版本: 10
| 枚举项 | 描述 |
|---|---|
| OHOS_IMAGE_FORMAT_YCBCR_422_SP = 1000 | YCBCR422 semi-planar格式。 |
| OHOS_IMAGE_FORMAT_JPEG = 2000 | JPEG编码格式。 |
图像颜色通道类型
enum anonymous enum
描述
图像颜色通道类型枚举值。
起始版本: 10
| 枚举项 | 描述 |
|---|---|
| OHOS_IMAGE_COMPONENT_FORMAT_YUV_Y = 1 | 亮度信息。 |
| OHOS_IMAGE_COMPONENT_FORMAT_YUV_U = 2 | 色度信息。 |
| OHOS_IMAGE_COMPONENT_FORMAT_YUV_V = 3 | 色差值信息。 |
| OHOS_IMAGE_COMPONENT_FORMAT_JPEG = 4 | Jpeg格式。 |
函数说明
OH_Image_InitImageNative()
ImageNative* OH_Image_InitImageNative(napi_env env, napi_value source)
描述
从输入的JavaScript Native API图像对象中解析native ImageNative对象。
起始版本: 10
参数:
| 参数项 | 描述 |
|---|---|
| napi_env env | 表示指向JNI环境的指针。 |
| napi_value source | 表示JavaScript Native API图像对象。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageNative* | 如果操作成功返回ImageNative指针对象,如果操作失败返回空指针。 |
参考:
OH_Image_ClipRect()
int32_t OH_Image_ClipRect(const ImageNative* native, struct OhosImageRect* rect)
描述
获取native ImageNative对象OhosImageRect信息。
起始版本: 10
参数:
| 参数项 | 描述 |
|---|---|
| const ImageNative* native | 表示指向ImageNative native层对象的指针。 |
| struct OhosImageRect* rect | 表示作为转换结果的OhosImageRect对象指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | IRNdkErrCode: IMAGE_RESULT_SUCCESS:操作成功。 IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。 IMAGE_RESULT_INVALID_PARAMETER:参数无效。 IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED:从surface获取参数失败。 IMAGE_RESULT_BAD_PARAMETER:参数错误。 |
OH_Image_Size()
int32_t OH_Image_Size(const ImageNative* native, struct OhosImageSize* size)
描述
获取native ImageNative对象的OhosImageSize信息。
如果ImageNative对象所存储的是相机预览流数据,即YUV图像数据,那么获取到的OhosImageSize中的宽高分别对应YUV图像的宽高;如果ImageNative对象所存储的是相机拍照流数据,即JPEG图像,由于已经是编码后的数据,OhosImageSize中的宽等于JPEG数据大小,高等于1。
ImageNative对象所存储的数据是预览流还是拍照流,取决于应用将receiver中的surfaceId传给相机的previewOutput还是captureOutput。相机预览与拍照最佳实践请参考预览流二次处理(C/C++)与拍照(C/C++)。
起始版本: 10
参数:
| 参数项 | 描述 |
|---|---|
| const ImageNative* native | 表示ImageNative native对象的指针。 |
| struct OhosImageSize* size | 表示作为转换结果的OhosImageSize对象的指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | IRNdkErrCode: IMAGE_RESULT_SUCCESS:操作成功。 IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。 IMAGE_RESULT_INVALID_PARAMETER:参数无效。 IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED:从surface获取参数失败。 IMAGE_RESULT_BAD_PARAMETER:参数错误。 |
OH_Image_Format()
int32_t OH_Image_Format(const ImageNative* native, int32_t* format)
描述
获取native ImageNative对象的图像格式。
起始版本: 10
参数:
| 参数项 | 描述 |
|---|---|
| const ImageNative* native | 表示ImageNative native对象的指针。 |
| int32_t* format | 表示作为转换结果的图像格式对象的指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | IRNdkErrCode: IMAGE_RESULT_SUCCESS:操作成功。 IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。 IMAGE_RESULT_INVALID_PARAMETER:参数无效。 IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED:从surface获取参数失败。 IMAGE_RESULT_BAD_PARAMETER:参数错误。 |
OH_Image_GetComponent()
int32_t OH_Image_GetComponent(const ImageNative* native, int32_t componentType, struct OhosImageComponent* componentNative)
描述
从native ImageNative对象中获取OhosImageComponent。
起始版本: 10
参数:
| 参数项 | 描述 |
|---|---|
| const ImageNative* native | 表示ImageNative native对象的指针。 |
| int32_t componentType | 表示所需组件的组件类型。 |
| struct OhosImageComponent* componentNative | 表示转换结果的OhosImageComponent对象的指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | IRNdkErrCode: IMAGE_RESULT_SUCCESS:操作成功。 IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。 IMAGE_RESULT_INVALID_PARAMETER:参数无效。 IMAGE_RESULT_SURFACE_GET_PARAMETER_FAILED:从surface获取参数失败。 IMAGE_RESULT_BAD_PARAMETER:参数错误。 |
OH_Image_Release()
int32_t OH_Image_Release(ImageNative* native)
描述
释放ImageNative native对象。
这个方法无法释放JavaScript Native API Image对象,而是释放被OH_Image_InitImageNative解析的ImageNative native对象。
起始版本: 10
参数:
| 参数项 | 描述 |
|---|---|
| ImageNative* native | 表示ImageNative native对象的指针。 |
返回:
| 类型 | 说明 |
|---|---|
| int32_t | IRNdkErrCode: IMAGE_RESULT_SUCCESS:操作成功。 IMAGE_RESULT_JNI_ENV_ABNORMAL:JNI环境异常。 IMAGE_RESULT_INVALID_PARAMETER:参数无效。 IMAGE_RESULT_BAD_PARAMETER:参数错误。 |
参考: