diff --git a/multimedia/image_framework/include/image/image_packer_native.h b/multimedia/image_framework/include/image/image_packer_native.h
index 623fdb5e5c259d1489d76d6c4ccfc345081903fc..4d5fbb7556608fadf45f115adff97eff791f71b3 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 c5b00c4ce732f3852ae6d678373c60fc4bcbca04..f182208a5d4da5d8ac7a533736b751170527922f 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