• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# image_packer_native.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图片编码API。
12
13**引用文件:** <multimedia/image_framework/image/image_packer_native.h>
14
15**库:** libimage_packer.so
16
17**系统能力:** SystemCapability.Multimedia.Image.ImagePacker
18
19**起始版本:** 12
20
21**相关模块:** [Image_NativeModule](capi-image-nativemodule.md)
22
23## 汇总
24
25### 结构体
26
27| 名称 | typedef关键字 | 描述 |
28| -- | -- | -- |
29| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) | OH_ImagePackerNative | ImagePacker结构体类型,用于执行ImagePacker相关操作。 |
30| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) | OH_PackingOptions | OH_PackingOptions是native层封装的图像编码选项结构体,OH_PackingOptions结构体不可直接操作,而是采用函数调用方式创建、释放结构体以及操作具体字段。 |
31| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) | OH_PackingOptionsForSequence | 图像序列编码选项。 |
32
33### 枚举
34
35| 名称 | typedef关键字 | 描述 |
36| -- | -- | -- |
37| [IMAGE_PACKER_DYNAMIC_RANGE](#image_packer_dynamic_range) | IMAGE_PACKER_DYNAMIC_RANGE | 编码指定动态范围。 |
38
39### 函数
40
41| 名称 | 描述 |
42| -- | -- |
43| [Image_ErrorCode OH_PackingOptions_Create(OH_PackingOptions **options)](#oh_packingoptions_create) | 创建PackingOptions结构体的指针。 |
44| [Image_ErrorCode OH_PackingOptions_GetMimeType(OH_PackingOptions *options, Image_MimeType *format)](#oh_packingoptions_getmimetype) | 获取MIME类型。 |
45| [Image_ErrorCode OH_PackingOptions_GetMimeTypeWithNull(OH_PackingOptions *options, Image_MimeType *format)](#oh_packingoptions_getmimetypewithnull) | 获取编解码参数中的MIME类型。输出的format.data以字符串结束符结尾。 |
46| [Image_ErrorCode OH_PackingOptions_SetMimeType(OH_PackingOptions *options, Image_MimeType *format)](#oh_packingoptions_setmimetype) | 设置MIME类型。 |
47| [Image_ErrorCode OH_PackingOptions_GetQuality(OH_PackingOptions *options, uint32_t *quality)](#oh_packingoptions_getquality) | 获取编码质量。 |
48| [Image_ErrorCode OH_PackingOptions_SetQuality(OH_PackingOptions *options, uint32_t quality)](#oh_packingoptions_setquality) | 设置编码质量。 |
49| [ Image_ErrorCode OH_PackingOptions_GetNeedsPackProperties(OH_PackingOptions *options, bool *needsPackProperties)](#oh_packingoptions_getneedspackproperties) | 获取OH_PackingOptions结构体的needsPackProperties参数。 |
50| [Image_ErrorCode OH_PackingOptions_SetNeedsPackProperties(OH_PackingOptions *options, bool needsPackProperties)](#oh_packingoptions_setneedspackproperties) | 设置OH_PackingOptions结构体的needsPackProperties参数。 |
51| [Image_ErrorCode OH_PackingOptions_GetDesiredDynamicRange(OH_PackingOptions *options, int32_t* desiredDynamicRange)](#oh_packingoptions_getdesireddynamicrange) | 获取编码时期望的图片动态范围。 |
52| [Image_ErrorCode OH_PackingOptions_SetDesiredDynamicRange(OH_PackingOptions *options, int32_t desiredDynamicRange)](#oh_packingoptions_setdesireddynamicrange) | 设置编码时期望的图片动态范围。 |
53| [Image_ErrorCode OH_PackingOptions_Release(OH_PackingOptions *options)](#oh_packingoptions_release) | 释放OH_PackingOptions指针。 |
54| [Image_ErrorCode OH_PackingOptionsForSequence_Create(OH_PackingOptionsForSequence **options)](#oh_packingoptionsforsequence_create) | 创建OH_PackingOptionsForSequence结构体的指针。 |
55| [Image_ErrorCode OH_PackingOptionsForSequence_SetFrameCount(OH_PackingOptionsForSequence *options, uint32_t frameCount)](#oh_packingoptionsforsequence_setframecount) | 设置编码时指定的帧数。 |
56| [Image_ErrorCode OH_PackingOptionsForSequence_GetFrameCount(OH_PackingOptionsForSequence *options, uint32_t *frameCount)](#oh_packingoptionsforsequence_getframecount) | 获取编码时指定的帧数。 |
57| [Image_ErrorCode OH_PackingOptionsForSequence_SetDelayTimeList(OH_PackingOptionsForSequence *options, int32_t *delayTimeList, size_t delayTimeListLength)](#oh_packingoptionsforsequence_setdelaytimelist) | 设定编码时图片的延迟时间数组。 |
58| [Image_ErrorCode OH_PackingOptionsForSequence_GetDelayTimeList(OH_PackingOptionsForSequence *options, int32_t *delayTimeList, size_t delayTimeListLength)](#oh_packingoptionsforsequence_getdelaytimelist) | 获取编码时图片的延迟时间数组。 |
59| [Image_ErrorCode OH_PackingOptionsForSequence_SetDisposalTypes(OH_PackingOptionsForSequence *options, uint32_t *disposalTypes, size_t disposalTypesLength)](#oh_packingoptionsforsequence_setdisposaltypes) | 设定编码时图片的过渡帧模式数组。 |
60| [Image_ErrorCode OH_PackingOptionsForSequence_GetDisposalTypes(OH_PackingOptionsForSequence *options, uint32_t *disposalTypes, size_t disposalTypesLength)](#oh_packingoptionsforsequence_getdisposaltypes) | 获取编码时图片的过渡帧模式数组。 |
61| [Image_ErrorCode OH_PackingOptionsForSequence_SetLoopCount(OH_PackingOptionsForSequence *options, uint32_t loopCount)](#oh_packingoptionsforsequence_setloopcount) | 设定编码时图片循环播放次数,取值范围为[0,65535],0表示无限循环;若无此字段,则表示不循环播放。 |
62| [Image_ErrorCode OH_PackingOptionsForSequence_GetLoopCount(OH_PackingOptionsForSequence *options, uint32_t *loopCount)](#oh_packingoptionsforsequence_getloopcount) | 获取编码时图片循环播放次数。 |
63| [Image_ErrorCode OH_PackingOptionsForSequence_Release(OH_PackingOptionsForSequence *options)](#oh_packingoptionsforsequence_release) | 释放OH_PackingOptionsForSequence指针。 |
64| [Image_ErrorCode OH_ImagePackerNative_Create(OH_ImagePackerNative **imagePacker)](#oh_imagepackernative_create) | 创建OH_ImagePackerNative指针。 |
65| [Image_ErrorCode OH_ImagePackerNative_PackToDataFromImageSource(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, OH_ImageSourceNative *imageSource, uint8_t *outData, size_t *size)](#oh_imagepackernative_packtodatafromimagesource) | 将ImageSource编码为指定格式的数据。 |
66| [Image_ErrorCode OH_ImagePackerNative_PackToDataFromPixelmap(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, OH_PixelmapNative *pixelmap, uint8_t *outData, size_t *size)](#oh_imagepackernative_packtodatafrompixelmap) | 将Pixelmap编码为指定格式的数据。 |
67| [Image_ErrorCode OH_ImagePackerNative_PackToDataFromPicture(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, OH_PictureNative *picture, uint8_t *outData, size_t *size)](#oh_imagepackernative_packtodatafrompicture) | 将Picture编码为指定格式的数据。 |
68| [Image_ErrorCode OH_ImagePackerNative_PackToDataFromPixelmapSequence(OH_ImagePackerNative *imagePacker, OH_PackingOptionsForSequence *options, OH_PixelmapNative **pixelmapSequence,size_t sequenceLength, uint8_t *outData, size_t *outDataSize)](#oh_imagepackernative_packtodatafrompixelmapsequence) | 将Pixelmap序列编码为数据。 |
69| [Image_ErrorCode OH_ImagePackerNative_PackToFileFromImageSource(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, OH_ImageSourceNative *imageSource, int32_t fd)](#oh_imagepackernative_packtofilefromimagesource) | 将一个ImageSource编码到文件中。 |
70| [Image_ErrorCode OH_ImagePackerNative_PackToFileFromPixelmap(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, OH_PixelmapNative *pixelmap, int32_t fd)](#oh_imagepackernative_packtofilefrompixelmap) | 将一个Pixelmap编码到文件中。 |
71| [Image_ErrorCode OH_ImagePackerNative_PackToFileFromPicture(OH_ImagePackerNative *imagePacker, OH_PackingOptions *options, OH_PictureNative *picture, int32_t fd)](#oh_imagepackernative_packtofilefrompicture) | 将一个Picture编码到文件中。 |
72| [Image_ErrorCode OH_ImagePackerNative_PackToFileFromPixelmapSequence(OH_ImagePackerNative *imagePacker, OH_PackingOptionsForSequence *options, OH_PixelmapNative **pixelmapSequence, size_t sequenceLength, int32_t fd)](#oh_imagepackernative_packtofilefrompixelmapsequence) | 将一个Pixelmap序列编码到文件中。 |
73| [Image_ErrorCode OH_ImagePackerNative_GetSupportedFormats(Image_MimeType **supportedFormats, size_t *length)](#oh_imagepackernative_getsupportedformats) | 获取支持编码的图片格式。 |
74| [Image_ErrorCode OH_ImagePackerNative_Release(OH_ImagePackerNative *imagePacker)](#oh_imagepackernative_release) | 释放OH_ImagePackerNative指针。 |
75
76## 枚举类型说明
77
78### IMAGE_PACKER_DYNAMIC_RANGE
79
80```
81enum IMAGE_PACKER_DYNAMIC_RANGE
82```
83
84**描述**
85
86编码指定动态范围。
87
88**起始版本:** 12
89
90| 枚举项 | 描述 |
91| -- | -- |
92| IMAGE_PACKER_DYNAMIC_RANGE_AUTO = 0 | 编码动态范围根据图像信息自适应。 |
93| IMAGE_PACKER_DYNAMIC_RANGE_SDR = 1 | 编码图片为标准动态范围。 |
94
95
96## 函数说明
97
98### OH_PackingOptions_Create()
99
100```
101Image_ErrorCode OH_PackingOptions_Create(OH_PackingOptions **options)
102```
103
104**描述**
105
106创建PackingOptions结构体的指针。
107
108**起始版本:** 12
109
110
111**参数:**
112
113| 参数项 | 描述 |
114| -- | -- |
115| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) **options | 用于操作的PackingOptions指针。 |
116
117**返回:**
118
119| 类型 | 说明 |
120| -- | -- |
121| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
122
123### OH_PackingOptions_GetMimeType()
124
125```
126Image_ErrorCode OH_PackingOptions_GetMimeType(OH_PackingOptions *options,Image_MimeType *format)
127```
128
129**描述**
130
131获取MIME类型。
132
133**起始版本:** 12
134
135
136**参数:**
137
138| 参数项 | 描述 |
139| -- | -- |
140| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
141| [Image_MimeType](capi-image-nativemodule-image-string.md) *format | 图像格式。可传入一个空指针和零大小,系统将分配内存,但必须在使用后释放内存。 |
142
143**返回:**
144
145| 类型 | 说明 |
146| -- | -- |
147| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
148
149### OH_PackingOptions_GetMimeTypeWithNull()
150
151```
152Image_ErrorCode OH_PackingOptions_GetMimeTypeWithNull(OH_PackingOptions *options,Image_MimeType *format)
153```
154
155**描述**
156
157获取编解码参数中的MIME类型。输出的format.data以字符串结束符结尾。
158
159**起始版本:** 19
160
161
162**参数:**
163
164| 参数项 | 描述 |
165| -- | -- |
166| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 编码参数指针。 |
167| [Image_MimeType](capi-image-nativemodule-image-string.md) *format | 编码参数中的 MIME 类型的指针。 |
168
169**返回:**
170
171| 类型 | 说明 |
172| -- | -- |
173| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>         IMAGE_PACKER_INVALID_PARAMETER:options或format为空。 |
174
175### OH_PackingOptions_SetMimeType()
176
177```
178Image_ErrorCode OH_PackingOptions_SetMimeType(OH_PackingOptions *options,Image_MimeType *format)
179```
180
181**描述**
182
183设置MIME类型。
184
185**起始版本:** 12
186
187
188**参数:**
189
190| 参数项 | 描述 |
191| -- | -- |
192| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
193| [Image_MimeType](capi-image-nativemodule-image-string.md) *format | 图像格式。 |
194
195**返回:**
196
197| 类型 | 说明 |
198| -- | -- |
199| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
200
201### OH_PackingOptions_GetQuality()
202
203```
204Image_ErrorCode OH_PackingOptions_GetQuality(OH_PackingOptions *options,uint32_t *quality)
205```
206
207**描述**
208
209获取编码质量。
210
211**起始版本:** 12
212
213
214**参数:**
215
216| 参数项 | 描述 |
217| -- | -- |
218| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
219| uint32_t *quality | 编码质量。 |
220
221**返回:**
222
223| 类型 | 说明 |
224| -- | -- |
225| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
226
227### OH_PackingOptions_SetQuality()
228
229```
230Image_ErrorCode OH_PackingOptions_SetQuality(OH_PackingOptions *options,uint32_t quality)
231```
232
233**描述**
234
235设置编码质量。
236
237**起始版本:** 12
238
239
240**参数:**
241
242| 参数项 | 描述 |
243| -- | -- |
244| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
245| uint32_t quality | 编码质量。 |
246
247**返回:**
248
249| 类型 | 说明 |
250| -- | -- |
251| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
252
253### OH_PackingOptions_GetNeedsPackProperties()
254
255```
256 Image_ErrorCode OH_PackingOptions_GetNeedsPackProperties(OH_PackingOptions *options,bool *needsPackProperties)
257```
258
259**描述**
260
261获取OH_PackingOptions结构体的needsPackProperties参数。
262
263**起始版本:** 12
264
265
266**参数:**
267
268| 参数项 | 描述 |
269| -- | -- |
270| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
271| bool *needsPackProperties | 是否需要编码图片属性信息,例如EXIF。 |
272
273**返回:**
274
275| 类型 | 说明 |
276| -- | -- |
277| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
278
279### OH_PackingOptions_SetNeedsPackProperties()
280
281```
282Image_ErrorCode OH_PackingOptions_SetNeedsPackProperties(OH_PackingOptions *options,bool needsPackProperties)
283```
284
285**描述**
286
287设置OH_PackingOptions结构体的needsPackProperties参数。
288
289**起始版本:** 12
290
291
292**参数:**
293
294| 参数项 | 描述 |
295| -- | -- |
296| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
297| bool needsPackProperties | 是否需要编码图片属性信息,例如EXIF。 |
298
299**返回:**
300
301| 类型 | 说明 |
302| -- | -- |
303| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
304
305### OH_PackingOptions_GetDesiredDynamicRange()
306
307```
308Image_ErrorCode OH_PackingOptions_GetDesiredDynamicRange(OH_PackingOptions *options, int32_t* desiredDynamicRange)
309```
310
311**描述**
312
313获取编码时期望的图片动态范围。
314
315**起始版本:** 12
316
317
318**参数:**
319
320| 参数项 | 描述 |
321| -- | -- |
322| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
323| int32_t* desiredDynamicRange | 期望的动态范围[IMAGE_PACKER_DYNAMIC_RANGE]#image_packer_dynamic_range)。 |
324
325**返回:**
326
327| 类型 | 说明 |
328| -- | -- |
329| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
330
331### OH_PackingOptions_SetDesiredDynamicRange()
332
333```
334Image_ErrorCode OH_PackingOptions_SetDesiredDynamicRange(OH_PackingOptions *options, int32_t desiredDynamicRange)
335```
336
337**描述**
338
339设置编码时期望的图片动态范围。
340
341**起始版本:** 12
342
343
344**参数:**
345
346| 参数项 | 描述 |
347| -- | -- |
348| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
349| int32_t desiredDynamicRange | 期望的动态范围[IMAGE_PACKER_DYNAMIC_RANGE]#image_packer_dynamic_range)。 |
350
351**返回:**
352
353| 类型 | 说明 |
354| -- | -- |
355| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
356
357### OH_PackingOptions_Release()
358
359```
360Image_ErrorCode OH_PackingOptions_Release(OH_PackingOptions *options)
361```
362
363**描述**
364
365释放OH_PackingOptions指针。
366
367**起始版本:** 12
368
369
370**参数:**
371
372| 参数项 | 描述 |
373| -- | -- |
374| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 被操作的OH_PackingOptions指针。 |
375
376**返回:**
377
378| 类型 | 说明 |
379| -- | -- |
380| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
381
382### OH_PackingOptionsForSequence_Create()
383
384```
385Image_ErrorCode OH_PackingOptionsForSequence_Create(OH_PackingOptionsForSequence **options)
386```
387
388**描述**
389
390创建OH_PackingOptionsForSequence结构体的指针。
391
392**起始版本:** 13
393
394
395**参数:**
396
397| 参数项 | 描述 |
398| -- | -- |
399| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) **options | 用于操作的OH_PackingOptionsForSequence指针。 |
400
401**返回:**
402
403| 类型 | 说明 |
404| -- | -- |
405| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
406
407### OH_PackingOptionsForSequence_SetFrameCount()
408
409```
410Image_ErrorCode OH_PackingOptionsForSequence_SetFrameCount(OH_PackingOptionsForSequence *options,uint32_t frameCount)
411```
412
413**描述**
414
415设置编码时指定的帧数。
416
417**起始版本:** 13
418
419
420**参数:**
421
422| 参数项 | 描述 |
423| -- | -- |
424| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
425| uint32_t frameCount | 图片的帧数。 |
426
427**返回:**
428
429| 类型 | 说明 |
430| -- | -- |
431| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
432
433### OH_PackingOptionsForSequence_GetFrameCount()
434
435```
436Image_ErrorCode OH_PackingOptionsForSequence_GetFrameCount(OH_PackingOptionsForSequence *options,uint32_t *frameCount)
437```
438
439**描述**
440
441获取编码时指定的帧数。
442
443**起始版本:** 13
444
445
446**参数:**
447
448| 参数项 | 描述 |
449| -- | -- |
450| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
451| uint32_t *frameCount | 图片的帧数。 |
452
453**返回:**
454
455| 类型 | 说明 |
456| -- | -- |
457| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
458
459### OH_PackingOptionsForSequence_SetDelayTimeList()
460
461```
462Image_ErrorCode OH_PackingOptionsForSequence_SetDelayTimeList(OH_PackingOptionsForSequence *options,int32_t *delayTimeList, size_t delayTimeListLength)
463```
464
465**描述**
466
467设定编码时图片的延迟时间数组。
468
469**起始版本:** 13
470
471
472**参数:**
473
474| 参数项 | 描述 |
475| -- | -- |
476| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
477| int32_t *delayTimeList | 图片延迟时间数组的指针。 |
478| size_t delayTimeListLength | 图片延迟时间数组的长度。 |
479
480**返回:**
481
482| 类型 | 说明 |
483| -- | -- |
484| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
485
486### OH_PackingOptionsForSequence_GetDelayTimeList()
487
488```
489Image_ErrorCode OH_PackingOptionsForSequence_GetDelayTimeList(OH_PackingOptionsForSequence *options,int32_t *delayTimeList, size_t delayTimeListLength)
490```
491
492**描述**
493
494获取编码时图片的延迟时间数组。
495
496**起始版本:** 13
497
498
499**参数:**
500
501| 参数项 | 描述 |
502| -- | -- |
503| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
504| int32_t *delayTimeList | 图片延迟时间数组的指针。 |
505| size_t delayTimeListLength | 图片延迟时间数组的长度。 |
506
507**返回:**
508
509| 类型 | 说明 |
510| -- | -- |
511| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
512
513### OH_PackingOptionsForSequence_SetDisposalTypes()
514
515```
516Image_ErrorCode OH_PackingOptionsForSequence_SetDisposalTypes(OH_PackingOptionsForSequence *options,uint32_t *disposalTypes, size_t disposalTypesLength)
517```
518
519**描述**
520
521设定编码时图片的过渡帧模式数组。
522
523**起始版本:** 13
524
525
526**参数:**
527
528| 参数项 | 描述 |
529| -- | -- |
530| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
531| uint32_t *disposalTypes | 图片过渡帧模式数组的指针,图片帧过渡模式的参数,如果长度小于frameCount,不足的部分将使用disposalTypes中的最后一个值进行填充,可取值如下:<br>0:不需要任何操作。<br>1:保持图形不变。<br>2:恢复背景色。<br>3:恢复到之前的状态。 |
532| size_t disposalTypesLength | 图片过渡帧模式数组的长度。 |
533
534**返回:**
535
536| 类型 | 说明 |
537| -- | -- |
538| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
539
540### OH_PackingOptionsForSequence_GetDisposalTypes()
541
542```
543Image_ErrorCode OH_PackingOptionsForSequence_GetDisposalTypes(OH_PackingOptionsForSequence *options,uint32_t *disposalTypes, size_t disposalTypesLength)
544```
545
546**描述**
547
548获取编码时图片的过渡帧模式数组。
549
550**起始版本:** 13
551
552
553**参数:**
554
555| 参数项 | 描述 |
556| -- | -- |
557| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
558| uint32_t *disposalTypes | 图片过渡帧模式数组的指针。 |
559| size_t disposalTypesLength | 图片过渡帧模式数组的长度。 |
560
561**返回:**
562
563| 类型 | 说明 |
564| -- | -- |
565| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
566
567### OH_PackingOptionsForSequence_SetLoopCount()
568
569```
570Image_ErrorCode OH_PackingOptionsForSequence_SetLoopCount(OH_PackingOptionsForSequence *options, uint32_t loopCount)
571```
572
573**描述**
574
575设定编码时图片循环播放次数,取值范围为[0,65535],0表示无限循环;若无此字段,则表示不循环播放。
576
577**起始版本:** 13
578
579
580**参数:**
581
582| 参数项 | 描述 |
583| -- | -- |
584| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
585| uint32_t loopCount | 图片循环播放次数。 |
586
587**返回:**
588
589| 类型 | 说明 |
590| -- | -- |
591| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
592
593### OH_PackingOptionsForSequence_GetLoopCount()
594
595```
596Image_ErrorCode OH_PackingOptionsForSequence_GetLoopCount(OH_PackingOptionsForSequence *options, uint32_t *loopCount)
597```
598
599**描述**
600
601获取编码时图片循环播放次数。
602
603**起始版本:** 13
604
605
606**参数:**
607
608| 参数项 | 描述 |
609| -- | -- |
610| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
611| uint32_t *loopCount | 图片循环播放次数。 |
612
613**返回:**
614
615| 类型 | 说明 |
616| -- | -- |
617| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
618
619### OH_PackingOptionsForSequence_Release()
620
621```
622Image_ErrorCode OH_PackingOptionsForSequence_Release(OH_PackingOptionsForSequence *options)
623```
624
625**描述**
626
627释放OH_PackingOptionsForSequence指针。
628
629**起始版本:** 13
630
631
632**参数:**
633
634| 参数项 | 描述 |
635| -- | -- |
636| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 用于操作的OH_PackingOptionsForSequence指针。 |
637
638**返回:**
639
640| 类型 | 说明 |
641| -- | -- |
642| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
643
644### OH_ImagePackerNative_Create()
645
646```
647Image_ErrorCode OH_ImagePackerNative_Create(OH_ImagePackerNative **imagePacker)
648```
649
650**描述**
651
652创建OH_ImagePackerNative指针。
653
654**起始版本:** 12
655
656
657**参数:**
658
659| 参数项 | 描述 |
660| -- | -- |
661| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) **imagePacker | 被操作的OH_ImagePackerNative指针。 |
662
663**返回:**
664
665| 类型 | 说明 |
666| -- | -- |
667| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
668
669### OH_ImagePackerNative_PackToDataFromImageSource()
670
671```
672Image_ErrorCode OH_ImagePackerNative_PackToDataFromImageSource(OH_ImagePackerNative *imagePacker,OH_PackingOptions *options, OH_ImageSourceNative *imageSource, uint8_t *outData, size_t *size)
673```
674
675**描述**
676
677将ImageSource编码为指定格式的数据。
678
679**起始版本:** 12
680
681
682**参数:**
683
684| 参数项 | 描述 |
685| -- | -- |
686| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
687| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 编码选项参数。 |
688| [OH_ImageSourceNative](capi-image-nativemodule-oh-imagesourcenative.md) *imageSource | 用于编码的image source指针。 |
689| uint8_t *outData | 用于存储打包图像输出数据的缓冲区。 |
690| size_t *size | 用于存储打包图像输出数据的缓冲区大小。 |
691
692**返回:**
693
694| 类型 | 说明 |
695| -- | -- |
696| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。<br>IMAGE_DECODE_FAILED:解码失败。<br>IMAGE_ALLOC_FAILED:申请内存失败。<br> IMAGE_TOO_LARGE:数据或图片过大。<br>IMAGE_UNKNOWN_ERROR:未知错误。 |
697
698### OH_ImagePackerNative_PackToDataFromPixelmap()
699
700```
701Image_ErrorCode OH_ImagePackerNative_PackToDataFromPixelmap(OH_ImagePackerNative *imagePacker,OH_PackingOptions *options, OH_PixelmapNative *pixelmap, uint8_t *outData, size_t *size)
702```
703
704**描述**
705
706将Pixelmap编码为指定格式的数据。
707
708**起始版本:** 12
709
710
711**参数:**
712
713| 参数项 | 描述 |
714| -- | -- |
715| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
716| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 编码选项参数。 |
717| [OH_PixelmapNative](capi-image-nativemodule-oh-pixelmapnative.md) *pixelmap | 用于编码的Pixelmap指针。 |
718| uint8_t *outData | 用于存储打包图像输出数据的缓冲区。 |
719| size_t *size | 用于存储打包图像输出数据的缓冲区大小。 |
720
721**返回:**
722
723| 类型 | 说明 |
724| -- | -- |
725| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。<br>IMAGE_DECODE_FAILED:解码失败。<br>IMAGE_ALLOC_FAILED:申请内存失败。<br> IMAGE_TOO_LARGE:数据或图片过大。<br>IMAGE_UNKNOWN_ERROR:未知错误。 |
726
727### OH_ImagePackerNative_PackToDataFromPicture()
728
729```
730Image_ErrorCode OH_ImagePackerNative_PackToDataFromPicture(OH_ImagePackerNative *imagePacker,OH_PackingOptions *options, OH_PictureNative *picture, uint8_t *outData, size_t *size)
731```
732
733**描述**
734
735将Picture编码为指定格式的数据。
736
737**起始版本:** 13
738
739
740**参数:**
741
742| 参数项 | 描述 |
743| -- | -- |
744| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
745| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 编码选项参数。 |
746| [OH_PictureNative](capi-image-nativemodule-oh-picturenative.md) *picture | 用于编码的Picture指针。 |
747| uint8_t *outData | 用于存储打包图像输出数据的缓冲区。 |
748| size_t *size | 用于存储打包图像输出数据的缓冲区大小。 |
749
750**返回:**
751
752| 类型 | 说明 |
753| -- | -- |
754| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。<br>IMAGE_DECODE_FAILED:解码失败。 |
755
756### OH_ImagePackerNative_PackToDataFromPixelmapSequence()
757
758```
759Image_ErrorCode OH_ImagePackerNative_PackToDataFromPixelmapSequence(OH_ImagePackerNative *imagePacker,OH_PackingOptionsForSequence *options, OH_PixelmapNative **pixelmapSequence,size_t sequenceLength, uint8_t *outData, size_t *outDataSize)
760```
761
762**描述**
763
764将Pixelmap序列编码为数据。
765
766**起始版本:** 13
767
768
769**参数:**
770
771| 参数项 | 描述 |
772| -- | -- |
773| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
774| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 编码选项参数 [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md)。 |
775| [OH_PixelmapNative](capi-image-nativemodule-oh-pixelmapnative.md) **pixelmapSequence | 用于编码的Pixelmap序列指针。 |
776| size_t sequenceLength | 用于编码的Pixelmap序列长度。 |
777| uint8_t *outData | 用于存储编码后图像输出数据的缓冲区。 |
778| size_t *outDataSize | 用于存储编码后图像输出数据的缓冲区大小。 |
779
780**返回:**
781
782| 类型 | 说明 |
783| -- | -- |
784| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。<br>IMAGE_DECODE_FAILED:解码失败。 |
785
786### OH_ImagePackerNative_PackToFileFromImageSource()
787
788```
789Image_ErrorCode OH_ImagePackerNative_PackToFileFromImageSource(OH_ImagePackerNative *imagePacker,OH_PackingOptions *options, OH_ImageSourceNative *imageSource, int32_t fd)
790```
791
792**描述**
793
794将一个ImageSource编码到文件中。
795
796**起始版本:** 12
797
798
799**参数:**
800
801| 参数项 | 描述 |
802| -- | -- |
803| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
804| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 编码选项参数。 |
805| [OH_ImageSourceNative](capi-image-nativemodule-oh-imagesourcenative.md) *imageSource | 用于编码的image source指针。 |
806| int32_t fd | 可写的文件描述符。 |
807
808**返回:**
809
810| 类型 | 说明 |
811| -- | -- |
812| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。<br>IMAGE_DECODE_FAILED:解码失败。<br>IMAGE_UNKNOWN_ERROR:未知错误。 |
813
814### OH_ImagePackerNative_PackToFileFromPixelmap()
815
816```
817Image_ErrorCode OH_ImagePackerNative_PackToFileFromPixelmap(OH_ImagePackerNative *imagePacker,OH_PackingOptions *options, OH_PixelmapNative *pixelmap, int32_t fd)
818```
819
820**描述**
821
822将一个Pixelmap编码到文件中。
823
824**起始版本:** 12
825
826
827**参数:**
828
829| 参数项 | 描述 |
830| -- | -- |
831| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
832| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 编码选项参数。 |
833| [OH_PixelmapNative](capi-image-nativemodule-oh-pixelmapnative.md) *pixelmap | 用于编码的pixelmap指针。 |
834| int32_t fd | 可写的文件描述符。 |
835
836**返回:**
837
838| 类型 | 说明 |
839| -- | -- |
840| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。<br>IMAGE_DECODE_FAILED:解码失败。<br>IMAGE_UNKNOWN_ERROR:未知错误。 |
841
842### OH_ImagePackerNative_PackToFileFromPicture()
843
844```
845Image_ErrorCode OH_ImagePackerNative_PackToFileFromPicture(OH_ImagePackerNative *imagePacker,OH_PackingOptions *options, OH_PictureNative *picture, int32_t fd)
846```
847
848**描述**
849
850将一个Picture编码到文件中。
851
852**起始版本:** 13
853
854
855**参数:**
856
857| 参数项 | 描述 |
858| -- | -- |
859| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
860| [OH_PackingOptions](capi-image-nativemodule-oh-packingoptions.md) *options | 编码选项参数。 |
861| [OH_PictureNative](capi-image-nativemodule-oh-picturenative.md) *picture | 用于编码的picture指针。 |
862| int32_t fd | 可写的文件描述符。 |
863
864**返回:**
865
866| 类型 | 说明 |
867| -- | -- |
868| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。<br>IMAGE_DECODE_FAILED:解码失败。<br>IMAGE_UNKNOWN_ERROR:未知错误。 |
869
870### OH_ImagePackerNative_PackToFileFromPixelmapSequence()
871
872```
873Image_ErrorCode OH_ImagePackerNative_PackToFileFromPixelmapSequence(OH_ImagePackerNative *imagePacker,OH_PackingOptionsForSequence *options, OH_PixelmapNative **pixelmapSequence, size_t sequenceLength, int32_t fd)
874```
875
876**描述**
877
878将一个Pixelmap序列编码到文件中。
879
880**起始版本:** 13
881
882
883**参数:**
884
885| 参数项 | 描述 |
886| -- | -- |
887| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
888| [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md) *options | 编码选项参数 [OH_PackingOptionsForSequence](capi-image-nativemodule-oh-packingoptionsforsequence.md)。 |
889| [OH_PixelmapNative](capi-image-nativemodule-oh-pixelmapnative.md) **pixelmapSequence | 用于编码的Pixelmap序列指针。 |
890| size_t sequenceLength | 用于编码的Pixelmap序列长度。 |
891| int32_t fd | 可写的文件描述符。 |
892
893**返回:**
894
895| 类型 | 说明 |
896| -- | -- |
897| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。<br>IMAGE_DECODE_FAILED:解码失败。 |
898
899### OH_ImagePackerNative_GetSupportedFormats()
900
901```
902Image_ErrorCode OH_ImagePackerNative_GetSupportedFormats(Image_MimeType **supportedFormats, size_t *length)
903```
904
905**描述**
906
907获取支持编码的图片格式。
908
909**起始版本:** 20
910
911
912**参数:**
913
914| 参数项 | 描述 |
915| -- | -- |
916| [Image_MimeType](capi-image-nativemodule-image-string.md) **supportedFormats | 支持编码的图片格式。 |
917| size_t *length | 数组长度。 |
918
919**返回:**
920
921| 类型 | 说明 |
922| -- | -- |
923| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:操作成功。<br>         IMAGE_PACKER_INVALID_PARAMETER:参数异常,supportedFormats或length为空。 |
924
925### OH_ImagePackerNative_Release()
926
927```
928Image_ErrorCode OH_ImagePackerNative_Release(OH_ImagePackerNative *imagePacker)
929```
930
931**描述**
932
933释放OH_ImagePackerNative指针。
934
935**起始版本:** 12
936
937
938**参数:**
939
940| 参数项 | 描述 |
941| -- | -- |
942| [OH_ImagePackerNative](capi-image-nativemodule-oh-imagepackernative.md) *imagePacker | 被操作的OH_ImagePackerNative指针。 |
943
944**返回:**
945
946| 类型 | 说明 |
947| -- | -- |
948| [Image_ErrorCode](capi-image-common-h.md#image_errorcode) | IMAGE_SUCCESS:执行成功。<br>IMAGE_BAD_PARAMETER:参数错误。 |
949
950
951