image_processing.h
概述
声明图片处理函数。提供图片处理能力,包括色彩空间转换,元数据生成及图片缩放。
引用文件: <multimedia/video_processing_engine/image_processing.h>
库: libimage_processing.so
系统能力: SystemCapability.Multimedia.VideoProcessingEngine
起始版本: 13
相关模块: ImageProcessing
汇总
函数
函数说明
OH_ImageProcessing_InitializeEnvironment()
ImageProcessing_ErrorCode OH_ImageProcessing_InitializeEnvironment(void)
描述
初始化图片处理模块的全局环境。
此函数为非必需函数。通常此函数在主进程启动时被调用,用于图片处理模块的全局环境初始化并可以减少OH_ImageProcessing_Create的耗时。调用OH_ImageProcessing_DeinitializeEnvironment进行全局环境反初始化。可用于检查设备GPU是否正常工作。
起始版本: 13
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果初始化成功,则返回IMAGE_PROCESSING_SUCCESS,否则返回IMAGE_PROCESSING_ERROR_INITIALIZE_FAILED。 |
OH_ImageProcessing_DeinitializeEnvironment()
ImageProcessing_ErrorCode OH_ImageProcessing_DeinitializeEnvironment(void)
描述
反初始化图片处理模块的全局环境。
如果OH_ImageProcessing_InitializeEnvironment被调用,则此函数为必需函数。通常此函数在主进程准备退出时被调用,用于反初始化图片处理模块的全局环境(由OH_ImageProcessing_InitializeEnvironment接口初始化)。如果此时存在图片处理实例,则不应调用此函数。如果OH_ImageProcessing_InitializeEnvironment未被调用,则不应调用此函数。
起始版本: 13
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果反初始化成功,则返回IMAGE_PROCESSING_SUCCESS。 如果存在图片处理实例未被销毁或OH_ImageProcessing_InitializeEnvironment接口未被调用,则返回IMAGE_PROCESSING_ERROR_OPERATION_NOT_PERMITTED。 |
OH_ImageProcessing_IsColorSpaceConversionSupported()
bool OH_ImageProcessing_IsColorSpaceConversionSupported(const ImageProcessing_ColorSpaceInfo* sourceImageInfo,const ImageProcessing_ColorSpaceInfo* destinationImageInfo)
描述
查询是否支持当前图片色彩空间转换能力。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| const ImageProcessing_ColorSpaceInfo* sourceImageInfo | 指向输入图片色彩空间信息的指针。 |
| const ImageProcessing_ColorSpaceInfo* destinationImageInfo | 指向输出图片色彩空间信息的指针, |
返回:
| 类型 | 说明 |
|---|---|
| bool | 如果支持当前色彩空间转换,返回true。 如果不支持当前色彩空间转换,返回false。 |
OH_ImageProcessing_IsCompositionSupported()
bool OH_ImageProcessing_IsCompositionSupported(const ImageProcessing_ColorSpaceInfo* sourceImageInfo,const ImageProcessing_ColorSpaceInfo* sourceGainmapInfo,const ImageProcessing_ColorSpaceInfo* destinationImageInfo)
描述
查询是否支持HDR双层图片转换为HDR单层图片。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| const ImageProcessing_ColorSpaceInfo* sourceImageInfo | 指向输入图片色彩空间信息的指针。 |
| const ImageProcessing_ColorSpaceInfo* sourceGainmapInfo | 指向输入Gainmap色彩空间信息的指针。 |
| const ImageProcessing_ColorSpaceInfo* destinationImageInfo | 指向输出图片色彩空间信息的指针。 |
返回:
| 类型 | 说明 |
|---|---|
| bool | 如果支持HDR双层图片转换HDR单层图片能力,返回true。 如果不支持此能力,返回false。 |
OH_ImageProcessing_IsDecompositionSupported()
bool OH_ImageProcessing_IsDecompositionSupported(const ImageProcessing_ColorSpaceInfo* sourceImageInfo,const ImageProcessing_ColorSpaceInfo* destinationImageInfo,const ImageProcessing_ColorSpaceInfo* destinationGainmapInfo)
描述
查询是否支持HDR单层图片转换为HDR双层图片。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| const ImageProcessing_ColorSpaceInfo* sourceImageInfo | 指向输入图片色彩空间信息的指针。 |
| const ImageProcessing_ColorSpaceInfo* destinationImageInfo | 指向输出图片色彩空间信息的指针。 |
| const ImageProcessing_ColorSpaceInfo* destinationGainmapInfo | 指向输出Gainmap色彩空间信息的指针。 |
返回:
| 类型 | 说明 |
|---|---|
| bool | 如果支持HDR单层图片转换为HDR双层图片能力,返回true。 如果不支持此能力,返回false。 |
OH_ImageProcessing_IsMetadataGenerationSupported()
bool OH_ImageProcessing_IsMetadataGenerationSupported(const ImageProcessing_ColorSpaceInfo* sourceImageInfo)
描述
查询是否支持图片元数据生成能力。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| const ImageProcessing_ColorSpaceInfo* sourceImageInfo | 指向输入图片色彩空间信息的指针。 |
返回:
| 类型 | 说明 |
|---|---|
| bool | 如果支持图片元数据生成能力,返回true。 如果不支持此能力,返回false。 |
OH_ImageProcessing_Create()
ImageProcessing_ErrorCode OH_ImageProcessing_Create(OH_ImageProcessing** imageProcessor, int32_t type)
描述
创建一个图片处理模块实例。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing** imageProcessor | 输出参数。指针*imageProcessor指向一个新的图片处理对象。指针*imageProcessor在传递前必须是一个空指针。 |
| int32_t type | 使用IMAGE_PROCESSING_TYPE_XXX来指定图片处理类型。此实例的类型在创建后不能更改。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果创建成功,则返回IMAGE_PROCESSING_SUCCESS。 当指定的图片处理类型不支持时,返回IMAGE_PROCESSING_ERROR_UNSUPPORTED_PROCESSING,例如如果不支持图片元数据生成能力,则返回不支持该处理类型。 当创建失败时,返回IMAGE_PROCESSING_ERROR_CREATE_FAILED。 当该实例为空或指向该实例的指针为空时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 当指定的图片处理类型无效时,返回IMAGE_PROCESSING_ERROR_INVALID_PARAMETER。 |
OH_ImageProcessing_Destroy()
ImageProcessing_ErrorCode OH_ImageProcessing_Destroy(OH_ImageProcessing* imageProcessor)
描述
销毁当前图片处理模块实例。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing* imageProcessor | 指向图片处理模块实例的指针。当实例被销毁时,建议该指针设置为空。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果销毁成功,则返回IMAGE_PROCESSING_SUCCESS。 当该实例为空或该实例不是图片处理模块实例时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 |
OH_ImageProcessing_SetParameter()
ImageProcessing_ErrorCode OH_ImageProcessing_SetParameter(OH_ImageProcessing* imageProcessor,const OH_AVFormat* parameter)
描述
设置图片处理模块参数。通过特定参数键添加参数。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing* imageProcessor | 指向图片处理模块实例的指针。 |
| const OH_AVFormat* parameter | 图片处理参数。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果设置参数成功,则返回IMAGE_PROCESSING_SUCCESS。 当该实例为空或该实例不是图片处理模块实例时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 当参数为空时,返回IMAGE_PROCESSING_ERROR_INVALID_PARAMETER。 当部分参数无效时,返回IMAGE_PROCESSING_ERROR_INVALID_VALUE,例如参数包含不支持的参数键或值。 当内存分配失败时,返回IMAGE_PROCESSING_ERROR_NO_MEMORY。 |
OH_ImageProcessing_GetParameter()
ImageProcessing_ErrorCode OH_ImageProcessing_GetParameter(OH_ImageProcessing* imageProcessor,OH_AVFormat* parameter)
描述
获取图片处理模块参数。通过特定参数键获取参数。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing* imageProcessor | 指向图片处理模块实例的指针。 |
| OH_AVFormat* parameter | 该图片处理模块实例使用的参数。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果获取参数成功,则返回IMAGE_PROCESSING_SUCCESS。 当该实例为空或该实例不是图片处理模块实例时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 当参数为空时,返回IMAGE_PROCESSING_ERROR_INVALID_PARAMETER。 |
OH_ImageProcessing_ConvertColorSpace()
ImageProcessing_ErrorCode OH_ImageProcessing_ConvertColorSpace(OH_ImageProcessing* imageProcessor,OH_PixelmapNative* sourceImage, OH_PixelmapNative* destinationImage)
描述
实现单层图片间转换。此函数包括HDR图片到SDR图片的色彩空间转换,SDR图片到HDR图片的色彩空间转换,SDR图片到SDR图片的色彩空间转换和HDR图片的色彩空间转换。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing* imageProcessor | 指向图片处理模块实例的指针。该实例应该由IMAGE_PROCESSING_TYPE_COLOR_SPACE_CONVERSION类型创建。 |
| OH_PixelmapNative* sourceImage | 指向输入图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
| OH_PixelmapNative* destinationImage | 指向输出图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果图片处理成功,则返回IMAGE_PROCESSING_SUCCESS。 当该实例为空或该实例不是图片处理模块实例时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 当图片为空时,返回IMAGE_PROCESSING_ERROR_INVALID_PARAMETER。 当图片的某些属性无效时,返回IMAGE_PROCESSING_ERROR_INVALID_VALUE,例如图片的色彩空间是不支持的。 当该图片处理不支持时,返回IMAGE_PROCESSING_ERROR_UNSUPPORTED_PROCESSING。 当该图片处理中返回错误时,返回IMAGE_PROCESSING_ERROR_PROCESS_FAILED。 当内存分配失败时,返回IMAGE_PROCESSING_ERROR_NO_MEMORY。 |
OH_ImageProcessing_Compose()
ImageProcessing_ErrorCode OH_ImageProcessing_Compose(OH_ImageProcessing* imageProcessor,OH_PixelmapNative* sourceImage, OH_PixelmapNative* sourceGainmap, OH_PixelmapNative* destinationImage)
描述
实现HDR双层图片到HDR单层图片的转换。此函数通过输入图片与输入Gainmap生成输出图片。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing* imageProcessor | 指向图片处理模块实例的指针。该实例应该由IMAGE_PROCESSING_TYPE_COMPOSITION类型创建。 |
| OH_PixelmapNative* sourceImage | 指向输入图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
| OH_PixelmapNative* sourceGainmap | 指向输入Gainmap的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
| OH_PixelmapNative* destinationImage | 指向输出图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果图片处理成功,则返回IMAGE_PROCESSING_SUCCESS。 当该实例为空或该实例不是图片处理模块实例时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 当图片为空时,返回IMAGE_PROCESSING_ERROR_INVALID_PARAMETER。 当图片的某些属性无效时,返回IMAGE_PROCESSING_ERROR_INVALID_VALUE,例如图片的色彩空间是不支持的。 当该图片处理不支持时,返回IMAGE_PROCESSING_ERROR_UNSUPPORTED_PROCESSING。 当该图片处理中返回错误时,返回IMAGE_PROCESSING_ERROR_PROCESS_FAILED。 当内存分配失败时,返回IMAGE_PROCESSING_ERROR_NO_MEMORY。 |
OH_ImageProcessing_Decompose()
ImageProcessing_ErrorCode OH_ImageProcessing_Decompose(OH_ImageProcessing* imageProcessor,OH_PixelmapNative* sourceImage, OH_PixelmapNative* destinationImage, OH_PixelmapNative* destinationGainmap)
描述
实现HDR单层图片到HDR双层图片的转换。此函数通过输入图片生成输出图片和输出Gainmap。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing* imageProcessor | 指向图片处理模块实例的指针。该实例应该由IMAGE_PROCESSING_TYPE_DECOMPOSITION类型创建。 |
| OH_PixelmapNative* sourceImage | 指向输入图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
| OH_PixelmapNative* destinationImage | 指向输出图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
| OH_PixelmapNative* destinationGainmap | 指向输出Gainmap的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果图片处理成功,则返回IMAGE_PROCESSING_SUCCESS。 当该实例为空或该实例不是图片处理模块实例时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 当图片为空时,返回IMAGE_PROCESSING_ERROR_INVALID_PARAMETER。 当图片的某些属性无效时,返回IMAGE_PROCESSING_ERROR_INVALID_VALUE,例如图片的色彩空间是不支持的。 当该图片处理不支持时,返回IMAGE_PROCESSING_ERROR_UNSUPPORTED_PROCESSING。 当该图片处理中返回错误时,返回IMAGE_PROCESSING_ERROR_PROCESS_FAILED。 当内存分配失败时,返回IMAGE_PROCESSING_ERROR_NO_MEMORY。 |
OH_ImageProcessing_GenerateMetadata()
ImageProcessing_ErrorCode OH_ImageProcessing_GenerateMetadata(OH_ImageProcessing* imageProcessor,OH_PixelmapNative* sourceImage)
描述
生成HDR图片元数据。此函数为HDR图片生成元数据。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing* imageProcessor | 指向图片处理模块实例的指针。该实例应该由IMAGE_PROCESSING_TYPE_METADATA_GENERATION类型创建。 |
| OH_PixelmapNative* sourceImage | 指向输入图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果图片处理成功,则返回IMAGE_PROCESSING_SUCCESS。 当该实例为空或该实例不是图片处理模块实例时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 当图片为空时,返回IMAGE_PROCESSING_ERROR_INVALID_PARAMETER。 当图片的某些属性无效时,返回IMAGE_PROCESSING_ERROR_INVALID_VALUE,例如图片的色彩空间是不支持的。 当该图片处理不支持时,返回IMAGE_PROCESSING_ERROR_UNSUPPORTED_PROCESSING。 当该图片处理中返回错误时,返回IMAGE_PROCESSING_ERROR_PROCESS_FAILED。 当内存分配失败时,返回IMAGE_PROCESSING_ERROR_NO_MEMORY。 |
OH_ImageProcessing_EnhanceDetail()
ImageProcessing_ErrorCode OH_ImageProcessing_EnhanceDetail(OH_ImageProcessing* imageProcessor,OH_PixelmapNative* sourceImage, OH_PixelmapNative* destinationImage)
描述
进行图片清晰度/细节增强。此函数根据输入图片和输出图片预设的尺寸,对源图片进行必要的缩放操作生成目标图片,并提供了多种缩放方法以平衡性能和图像质量。
起始版本: 13
参数:
| 参数项 | 描述 |
|---|---|
| OH_ImageProcessing* imageProcessor | 指向图片处理模块实例的指针。该实例应该由IMAGE_PROCESSING_TYPE_DETAIL_ENHANCER类型创建。 |
| OH_PixelmapNative* sourceImage | 指向输入图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
| OH_PixelmapNative* destinationImage | 指向输出图片的指针,指向的OH_PixelmapNative需为DMA内存,具体情况请参考PixelMap的内存类型介绍。 |
返回:
| 类型 | 说明 |
|---|---|
| ImageProcessing_ErrorCode | 如果图片处理成功,则返回IMAGE_PROCESSING_SUCCESS。 当该实例为空或该实例不是图片处理模块实例时,返回IMAGE_PROCESSING_ERROR_INVALID_INSTANCE。 当图片为空时,返回IMAGE_PROCESSING_ERROR_INVALID_PARAMETER。 当图片的某些属性无效时,返回IMAGE_PROCESSING_ERROR_INVALID_VALUE,例如图片的色彩空间是不支持的。 当该图片处理不支持时,返回IMAGE_PROCESSING_ERROR_UNSUPPORTED_PROCESSING。 当该图片处理中返回错误时,返回IMAGE_PROCESSING_ERROR_PROCESS_FAILED。 当内存分配失败时,返回IMAGE_PROCESSING_ERROR_NO_MEMORY。 |