From 7ec08e7a21a7f7cb13012c5e98fd1b7387273c07 Mon Sep 17 00:00:00 2001 From: caochuan Date: Tue, 14 May 2024 09:49:45 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8E=B7=E5=8F=96gif=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E7=9A=84=E6=92=AD=E6=94=BE=E6=AC=A1=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: caochuan --- .../include/image/image_packer_native.h | 97 +++++++++++++++++++ .../image_framework/libimage_packer.ndk.json | 32 ++++++ 2 files changed, 129 insertions(+) diff --git a/multimedia/image_framework/include/image/image_packer_native.h b/multimedia/image_framework/include/image/image_packer_native.h index 623fdb5e5..4d5fbb755 100644 --- a/multimedia/image_framework/include/image/image_packer_native.h +++ b/multimedia/image_framework/include/image/image_packer_native.h @@ -150,6 +150,74 @@ Image_ErrorCode OH_PackingOptions_GetDesiredDynamicRange(OH_PackingOptions *opti */ Image_ErrorCode OH_PackingOptions_SetDesiredDynamicRange(OH_PackingOptions *options, int32_t desiredDynamicRange); +/** + * @brief Set Loop number for PackingOptions struct. + * + * @param options The PackingOptions pointer will be operated. + * @param loop The number of image loop. + * @return Returns {@link Image_ErrorCode} + * @since 12 + */ +Image_ErrorCode OH_PackingOptions_SetLoop(OH_PackingOptions *options, uint16_t loop); + +/** + * @brief Get Loop number for PackingOptions struct. + * + * @param options The PackingOptions pointer will be operated. + * @param loop The number of image loop. + * @return Returns {@link Image_ErrorCode} + * @since 12 + */ +Image_ErrorCode OH_PackingOptions_GetLoop(OH_PackingOptions *options, uint16_t *loop); + +/** + * @brief Set DelayTimes number for PackingOptions struct. + * + * @param options The PackingOptions pointer will be operated. + * @param delayTimes The number of image delayTimes. + * @param delayTimesSize The number of image delayTimesSize. + * @return Returns {@link Image_ErrorCode} + * @since 12 + */ +Image_ErrorCode OH_PackingOptions_SetDelayTimes(OH_PackingOptions *options, uint16_t* delayTimes, + uint32_t delayTimesSize); + +/** + * @brief Get DelayTimes number for PackingOptions struct. + * + * @param options The PackingOptions pointer will be operated. + * @param delayTimes The number of image delayTimes. + * @param delayTimesSize The number of image delayTimesSize. + * @return Returns {@link Image_ErrorCode} + * @since 12 + */ +Image_ErrorCode OH_PackingOptions_GetDelayTimes(OH_PackingOptions *options, uint16_t* delayTimes, + uint32_t *delayTimesSize); + +/** + * @brief Set DisposalTypes number for PackingOptions struct. + * + * @param options The PackingOptions pointer will be operated. + * @param disposalTypes The number of image disposalTypes. + * @param disposalTypesSize The number of image disposalTypesSize. + * @return Returns {@link Image_ErrorCode} + * @since 12 + */ +Image_ErrorCode OH_PackingOptions_SetDisposalTypes(OH_PackingOptions *options, uint16_t* disposalTypes, + uint32_t disposalTypesSize); + +/** + * @brief Get DisposalTypes number for PackingOptions struct. + * + * @param options The PackingOptions pointer will be operated. + * @param disposalTypes The number of image disposalTypes. + * @param disposalTypesSize The number of image disposalTypesSize. + * @return Returns {@link Image_ErrorCode} + * @since 12 + */ +Image_ErrorCode OH_PackingOptions_GetDisposalTypes(OH_PackingOptions *options, uint16_t* disposalTypes, + uint32_t* disposalTypesSize) + /** * @brief delete OH_PackingOptions pointer. * @@ -196,6 +264,21 @@ Image_ErrorCode OH_ImagePackerNative_PackToDataFromImageSource(OH_ImagePackerNat Image_ErrorCode OH_ImagePackerNative_PackToDataFromPixelmap(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, OH_PixelmapNative *pixelmap, uint8_t *outData, size_t *size); +/** + * @brief Encoding a PixelMap list into the a file with fd with required format + * + * @param imagePacker The imagePacker to use for packing. + * @param options Indicates the encoding {@link OH_PackingOptions}. + * @param pixelmaps The pixelmap array to be packed. + * @param mapSize The pixelmap array size to be packed. + * @param outData The output data buffer to store the packed image. + * @param outDataSize A pointer to the size of the output data buffer. + * @return Returns {@link Image_ErrorCode} + * @since 12 + */ +Image_ErrorCode OH_ImagePacker_PackToDataMultiFrames(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, + OH_PixelmapNative **pixelmaps, int32_t mapSize, uint8_t* outData, size_t* outDataSize); + /** * @brief Encoding an ImageSource into the a file with fd with required format. * @@ -222,6 +305,20 @@ Image_ErrorCode OH_ImagePackerNative_PackToFileFromImageSource(OH_ImagePackerNat Image_ErrorCode OH_ImagePackerNative_PackToFileFromPixelmap(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, OH_PixelmapNative *pixelmap, int32_t fd); +/** + * @brief Encoding a PixelMap list into the a file with fd with required format + * + * @param imagePacker The image packer to use for packing. + * @param options Indicates the encoding {@link OH_PackingOptions}. + * @param pixelmaps The pixelmap array to be packed. + * @param mapSize The pixelmap array size to be packed. + * @param fd Indicates a writable file descriptor. + * @return Returns {@link Image_ErrorCode} + * @since 12 + */ +Image_ErrorCode OH_ImagePacker_PackToFileMultiFrames(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, + OH_PixelmapNative **pixelmaps, int32_t mapSize, int32_t fd); + /** * @brief Releases an imagePacker object. * diff --git a/multimedia/image_framework/libimage_packer.ndk.json b/multimedia/image_framework/libimage_packer.ndk.json index c5b00c4ce..f182208a5 100644 --- a/multimedia/image_framework/libimage_packer.ndk.json +++ b/multimedia/image_framework/libimage_packer.ndk.json @@ -54,5 +54,37 @@ { "first_introduced": "12", "name": "OH_ImagePackerNative_Release" + }, + { + "first_introduced": "12", + "name": "OH_PackingOptions_SetLoop" + }, + { + "first_introduced": "12", + "name": "OH_PackingOptions_GetLoop" + }, + { + "first_introduced": "12", + "name": "OH_PackingOptions_SetDelayTimes" + }, + { + "first_introduced": "12", + "name": "OH_PackingOptions_GetDelayTimes" + }, + { + "first_introduced": "12", + "name": "OH_PackingOptions_SetDisposalTypes" + }, + { + "first_introduced": "12", + "name": "OH_PackingOptions_GetDisposalTypes" + }, + { + "first_introduced": "12", + "name": "OH_ImagePacker_PackToDataMultiFrames" + }, + { + "first_introduced": "12", + "name": "OH_ImagePacker_PackToFileMultiFrames" } ] \ No newline at end of file -- Gitee