Tizen Native API
9.0
|
The Image Util Encode/Decode APIs provides functions for encoding and decoding of images .
Required Header
#include <image_util.h>
Overview
Image Util API provides support for encoding and decoding of images. The API allows :
Formats | Encoding | Decoding | Remarks |
---|---|---|---|
JPEG | O | O | |
PNG | O | O | |
GIF | O | O | Encoding supports gif images including the animated, but decoding gif does not support the animated. |
BMP | O | O | |
WEBP | O | O | Since 6.0 |
HEIC | O | Since 6.5 | |
JPEG-XL | O | O | Since 7.0 |
Foreach Operations
FOREACH | CALLBACK | DESCRIPTION |
---|---|---|
image_util_foreach_supported_colorspace() | image_util_supported_colorspace_cb() | Supported JPEG/PNG/GIF/BMP/WEBP encoding/decoding colorspace |
Functions | |
int | image_util_foreach_supported_colorspace (image_util_type_e image_type, image_util_supported_colorspace_cb callback, void *user_data) |
Retrieves all supported colorspace for image encoding/decoding. | |
int | image_util_decode_create (image_util_decode_h *handle) |
Creates a handle of image util decoding. | |
int | image_util_decode_set_input_path (image_util_decode_h handle, const char *path) |
Sets the input file path from which to decode. | |
int | image_util_decode_set_input_buffer (image_util_decode_h handle, const unsigned char *src_buffer, unsigned long long src_size) |
Sets the input buffer from which to decode. | |
int | image_util_decode_set_colorspace (image_util_decode_h handle, image_util_colorspace_e colorspace) |
Sets the decoded image colorspace format. | |
int | image_util_decode_set_jpeg_downscale (image_util_decode_h handle, image_util_scale_e down_scale) |
Sets the downscale value at which JPEG image should be decoded. | |
int | image_util_decode_run2 (image_util_decode_h handle, image_util_image_h *image) |
Decodes the image with the given decode handle. | |
int | image_util_decode_run_async2 (image_util_decode_h handle, image_util_decode_completed2_cb callback, void *user_data) |
Starts decoding of the image with the given decode handle. | |
int | image_util_decode_destroy (image_util_decode_h handle) |
Destroys the image decoding handle. | |
int | image_util_encode_create (image_util_type_e image_type, image_util_encode_h *handle) |
Creates a handle of image util encode. | |
int | image_util_encode_set_quality (image_util_encode_h handle, int quality) |
Sets the quality for encoding image. | |
int | image_util_encode_set_png_compression (image_util_encode_h handle, image_util_png_compression_e compression) |
Sets the compression value of PNG image encoding(0~9). | |
int | image_util_encode_set_lossless (image_util_encode_h handle, bool lossless) |
Sets lossless for IMAGE_UTIL_WEBP and IMAGE_UTIL_JPEG_XL. | |
int | image_util_encode_run_to_file (image_util_encode_h handle, image_util_image_h image, const char *file_path) |
Encodes an image using given handle synchronously. | |
int | image_util_encode_run_to_buffer (image_util_encode_h handle, image_util_image_h image, unsigned char **buffer, size_t *buffer_size) |
Encodes an image using given handle synchronously. | |
int | image_util_encode_run_async_to_file (image_util_encode_h handle, image_util_image_h image, const char *file_path, image_util_encode_to_file_completed_cb completed_cb, void *user_data) |
Encodes an image using given handle asynchronously. | |
int | image_util_encode_run_async_to_buffer (image_util_encode_h handle, image_util_image_h image, image_util_encode_to_buffer_completed_cb completed_cb, void *user_data) |
Encodes an image using given handle asynchronously. | |
int | image_util_encode_destroy (image_util_encode_h handle) |
Destroys the image encoding handle. | |
int | image_util_agif_encode_create (image_util_agif_encode_h *handle) |
Creates a handle for encoding an animated GIF. | |
int | image_util_agif_encode_add_frame (image_util_agif_encode_h handle, image_util_image_h image, unsigned int time_delay) |
Encodes an image and adds the encoded image to the frames of the animated GIF. | |
int | image_util_agif_encode_save_to_file (image_util_agif_encode_h handle, const char *file_path) |
Saves the animated GIF image to the file. | |
int | image_util_agif_encode_save_to_buffer (image_util_agif_encode_h handle, unsigned char **buffer, size_t *buffer_size) |
Saves the animated GIF image to the buffer. | |
int | image_util_agif_encode_destroy (image_util_agif_encode_h handle) |
Destroys the handle for encoding an animated GIF. | |
int | image_util_anim_encode_create (image_util_anim_type_e image_type, image_util_anim_encode_h *handle) |
Creates a handle for encoding animation. | |
int | image_util_anim_encode_set_loop_count (image_util_anim_encode_h handle, unsigned int loop_count) |
Sets a number of times to repeat the animation. | |
int | image_util_anim_encode_set_background_color (image_util_anim_encode_h handle, unsigned char r, unsigned char g, unsigned char b, unsigned char a) |
Sets a background color of the animation. | |
int | image_util_anim_encode_set_lossless (image_util_anim_encode_h handle, bool lossless) |
Sets lossless compression of animation. | |
int | image_util_anim_encode_add_frame (image_util_anim_encode_h handle, image_util_image_h image, unsigned int time_delay) |
Encodes an image and adds image to the frame of the animated image. | |
int | image_util_anim_encode_save_to_file (image_util_anim_encode_h handle, const char *file_path) |
Saves the animated WEBP or GIF image to the file. | |
int | image_util_anim_encode_save_to_buffer (image_util_anim_encode_h handle, unsigned char **buffer, size_t *buffer_size) |
Saves the animation WEBP or GIF image to the buffer. | |
int | image_util_anim_encode_destroy (image_util_anim_encode_h handle) |
Destroys the handle for encoding animation. | |
Typedefs | |
typedef bool(* | image_util_supported_colorspace_cb )(image_util_colorspace_e colorspace, void *user_data) |
Called once for each supported image encode/decode colorspace. | |
typedef void(* | image_util_decode_completed2_cb )(int error_code, image_util_image_h image, void *user_data) |
Called when decoding an image is completed. | |
typedef void(* | image_util_encode_to_file_completed_cb )(image_util_error_e error_code, void *user_data) |
Called when encoding an image is completed just after storing the output to the file. | |
typedef void(* | image_util_encode_to_buffer_completed_cb )(image_util_error_e error_code, unsigned char *buffer, size_t buffer_size, void *user_data) |
Called when encoding an image is completed just after storing the output to the buffer. | |
typedef void * | image_util_decode_h |
The handle of image util decode. | |
typedef void * | image_util_encode_h |
The handle of image util encode. | |
typedef void * | image_util_agif_encode_h |
The handle of image util AGIF encode. | |
typedef void * | image_util_anim_encode_h |
The handle of image util animation encode. |
Typedef Documentation
typedef void* image_util_agif_encode_h |
The handle of image util AGIF encode.
- Since :
- 5.5
typedef void* image_util_anim_encode_h |
The handle of image util animation encode.
- Since :
- 6.0
typedef void(* image_util_decode_completed2_cb)(int error_code, image_util_image_h image, void *user_data) |
Called when decoding an image is completed.
- Since :
- 5.5
- Remarks:
- The image should not be released by the application.
The image can be used only in the callback. To use outside, make a copy using image_util_clone_image().
The callback is called in a separate thread(not in the main loop).
- Parameters:
-
[in] error_code The error code of image util IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Format not supported [in] image The decoded image (or NULL
if decoding failed)[in] user_data The user data passed from the callback registration function
- Precondition:
- image_util_decode_run_async2()
typedef void* image_util_decode_h |
The handle of image util decode.
- Since :
- 3.0
typedef void* image_util_encode_h |
The handle of image util encode.
- Since :
- 3.0
typedef void(* image_util_encode_to_buffer_completed_cb)(image_util_error_e error_code, unsigned char *buffer, size_t buffer_size, void *user_data) |
Called when encoding an image is completed just after storing the output to the buffer.
- Since :
- 5.5
- Remarks:
- The output will be stored in the buffer.
The callback is called in a separate thread (not in the main loop).
The buffer should not be released by the application.
The buffer can be used only in the callback. To use outside, make a copy.
- Parameters:
-
[in] error_code The error code of image util
IMAGE_UTIL_ERROR_NONE Successful
IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation
IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format[in] buffer The buffer for the encoded image [in] buffer_size The size of the buffer for the encoded image [in] user_data The user data passed from the callback registration function
- Precondition:
- image_util_encode_run_to_buffer() will invoke this function.
typedef void(* image_util_encode_to_file_completed_cb)(image_util_error_e error_code, void *user_data) |
Called when encoding an image is completed just after storing the output to the file.
- Since :
- 5.5
- Remarks:
- The output will be stored in the file set using image_util_encode_run_to_file().
The callback is called in a separate thread (not in the main loop).
- Parameters:
-
[in] error_code The error code of image util
IMAGE_UTIL_ERROR_NONE Successful
IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation
IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format[in] user_data The user data passed from the callback registration function
- Precondition:
- image_util_encode_run_to_file() will invoke this function.
typedef bool(* image_util_supported_colorspace_cb)(image_util_colorspace_e colorspace, void *user_data) |
Called once for each supported image encode/decode colorspace.
- Since :
- 3.0
- Parameters:
-
[in] colorspace The colorspace [in] user_data The user data passed from the foreach function
- Returns:
true
to continue with the next iteration of the loop,
otherwisefalse
to break out of the loop
Enumeration Type Documentation
Enumeration for PNG compression values.
- Since :
- 3.0
- Enumerator:
enum image_util_scale_e |
enum image_util_type_e |
Enumeration for image types.
- Since :
- 3.0
Function Documentation
int image_util_agif_encode_add_frame | ( | image_util_agif_encode_h | handle, |
image_util_image_h | image, | ||
unsigned int | time_delay | ||
) |
Encodes an image and adds the encoded image to the frames of the animated GIF.
- Since :
- 5.5
- Remarks:
- This function should be called for each image which you want to add to the animated GIF. Each image should be the same size.
The supported colorspace is IMAGE_UTIL_COLORSPACE_RGBA8888.
You should call image_util_agif_encode_save_to_file() or image_util_agif_encode_save_to_buffer() to save the animated GIF.
If you call this function after image_util_agif_encode_save_to_file() or image_util_agif_encode_save_to_buffer() function is called, this function will encode a new animated GIF.
- Parameters:
-
[in] handle The handle of encoding an animated GIF [in] image The handle of the image for each frame [in] time_delay The time delay between image and the next image (in 0.01sec increments)
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_agif_encode_create | ( | image_util_agif_encode_h * | handle | ) |
Creates a handle for encoding an animated GIF.
- Since :
- 5.5
- Remarks:
- The handle should be released using image_util_agif_encode_destroy().
- Parameters:
-
[out] handle The handle of encoding an animated GIF
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
- See also:
- image_util_agif_encode_destroy()
int image_util_agif_encode_destroy | ( | image_util_agif_encode_h | handle | ) |
Destroys the handle for encoding an animated GIF.
- Since :
- 5.5
- Remarks:
- Any created animated GIF encoding handle created should be destroyed.
- Parameters:
-
[in] handle The handle of encoding an animated GIF
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
- Precondition:
- image_util_agif_encode_create()
- See also:
- image_util_agif_encode_create()
int image_util_agif_encode_save_to_buffer | ( | image_util_agif_encode_h | handle, |
unsigned char ** | buffer, | ||
size_t * | buffer_size | ||
) |
Saves the animated GIF image to the buffer.
After the data has been written to a buffer, the file cannot be modified. In other words,
it is not possible to add frames to the buffer.
Saving animation flushes the frames that has been added to the encoder.
However, the encoder can be still used after the data is written.
For example, although you write the data to one buffer(B0),
you can do the following operations:
1. Add frames 1-10 to the encoder.
2. Save the data in the encoder to another buffer(B1). 10 frames will be saved.
3. Add more frames (11-20) to the same encoder.
4. Save the data in the encoder to the other buffer (B2)
It is not possible to save the changed data to B1 file used in step 4.
- Since :
- 5.5
- Remarks:
- The buffer should be released using free() after using it.
- Parameters:
-
[in] handle The handle of encoding an animated GIF [out] buffer The buffer in which the animated GIF is saved [out] buffer_size The size of the buffer
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
- See also:
- image_util_agif_encode_add_frame()
int image_util_agif_encode_save_to_file | ( | image_util_agif_encode_h | handle, |
const char * | file_path | ||
) |
Saves the animated GIF image to the file.
After the data has been written to a file, the file cannot be modified. In other words,
it is not possible to add frames to the file.
Saving animation flushes the frames that has been added to the encoder.
However, the encoder can be still used after the data is written.
For example, although you write the data to one file(B0),
you can do the following operations:
1. Add frames 1-10 to the encoder.
2. Save the data in the encoder to another file(B1). 10 frames will be saved.
3. Add more frames (11-20) to the same encoder.
4. Save the data in the encoder to the other file (B2)
It is not possible to save the changed data to B1 file used in step 4.
- Since :
- 5.5
- Remarks:
- http://tizen.org/privilege/mediastorage is required if file_path value is media storage.
http://tizen.org/privilege/externalstorage is required if file_path value is external storage.
- Parameters:
-
[in] handle The handle of encoding an animated GIF [in] file_path The file path for saving the animated GIF
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_PERMISSION_DENIED Permission denied IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NO_SUCH_FILE No such file
- See also:
- image_util_agif_encode_add_frame()
int image_util_anim_encode_add_frame | ( | image_util_anim_encode_h | handle, |
image_util_image_h | image, | ||
unsigned int | time_delay | ||
) |
Encodes an image and adds image to the frame of the animated image.
- Since :
- 6.0
- Remarks:
- This function should be called for each image which you want to add to the animated WEBP or GIF. Each image should be the same size.
The supported colorspaces are IMAGE_UTIL_COLORSPACE_RGBA8888, IMAGE_UTIL_COLORSPACE_ARGB8888, IMAGE_UTIL_COLORSPACE_BGRA8888 and IMAGE_UTIL_COLORSPACE_RGBA8888 for animated WEBP.
The supported colorspace is IMAGE_UTIL_COLORSPACE_RGBA8888 for animated GIF.
You should call image_util_anim_encode_save_to_file() or image_util_anim_encode_save_to_buffer() to save the animated WEBP.
If you call this function after image_util_anim_encode_save_to_file() or image_util_anim_encode_save_to_buffer() function is called, this function will encode a new animated WEBP and GIF.
- Parameters:
-
[in] handle The handle of animation encoder [in] image The handle of the image for each frame [in] time_delay The time delay between image and the next image (in 1ms increments for WEBP and 10ms increments for GIF)
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
int image_util_anim_encode_create | ( | image_util_anim_type_e | image_type, |
image_util_anim_encode_h * | handle | ||
) |
Creates a handle for encoding animation.
- Since :
- 6.0
- Remarks:
- The handle should be released using image_util_anim_encode_destroy().
- Parameters:
-
[in] image_type The type of output image to create animation [out] handle The handle of animation encoder
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
- See also:
- image_util_anim_encode_destroy()
int image_util_anim_encode_destroy | ( | image_util_anim_encode_h | handle | ) |
Destroys the handle for encoding animation.
- Since :
- 6.0
- Remarks:
- Any created animated encode handle should be destroyed.
- Parameters:
-
[in] handle The handle of animation encoder
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
- Precondition:
- image_util_anim_encode_create()
- See also:
- image_util_anim_encode_create()
int image_util_anim_encode_save_to_buffer | ( | image_util_anim_encode_h | handle, |
unsigned char ** | buffer, | ||
size_t * | buffer_size | ||
) |
Saves the animation WEBP or GIF image to the buffer.
After the data has been written to a buffer, the file cannot be modified. In other words,
it is not possible to add frames to the buffer.
Saving animation flushes the frames that has been added to the encoder.
However, the encoder can be still used after the data is written.
For example, although you write the data to one buffer(B0),
you can do the following operations:
1. Add frames 1-10 to the encoder.
2. Save the data in the encoder to another buffer(B1). 10 frames will be saved.
3. Add more frames (11-20) to the same encoder.
4. Save the data in the encoder to the other buffer (B2)
It is not possible to save the changed data to B1 file used in step 4.
- Since :
- 6.0
- Remarks:
- The buffer should be released using free() after using it.
- Parameters:
-
[in] handle The handle of encoding an animated WEBP or GIF [out] buffer The buffer in which the animated WEBP or GIF is saved [out] buffer_size The size of the buffer
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- image_util_anim_encode_add_frame()
- See also:
- image_util_anim_encode_add_frame()
int image_util_anim_encode_save_to_file | ( | image_util_anim_encode_h | handle, |
const char * | file_path | ||
) |
Saves the animated WEBP or GIF image to the file.
After the data has been written to a file, the file cannot be modified. In other words,
it is not possible to add frames to the file.
Saving animation flushes the frames that has been added to the encoder.
However, the encoder can be still used after the data is written.
For example, although you write the data to one file(B0),
you can do the following operations:
1. Add frames 1-10 to the encoder.
2. Save the data in the encoder to another file(B1). 10 frames will be saved.
3. Add more frames (11-20) to the same encoder.
4. Save the data in the encoder to the other file (B2)
It is not possible to save the changed data to B1 file used in step 4.
- Since :
- 6.0
- Remarks:
- http://tizen.org/privilege/mediastorage is required if file_path value is media storage.
http://tizen.org/privilege/externalstorage is required if file_path value is external storage.
- Parameters:
-
[in] handle The handle of encoding an animated WEBP or GIF [in] file_path The file path for saving the animated WEBP or GIF
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_PERMISSION_DENIED Permission denied IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_NO_SUCH_FILE No such file
- Precondition:
- image_util_anim_encode_add_frame()
- See also:
- image_util_anim_encode_add_frame()
int image_util_anim_encode_set_background_color | ( | image_util_anim_encode_h | handle, |
unsigned char | r, | ||
unsigned char | g, | ||
unsigned char | b, | ||
unsigned char | a | ||
) |
Sets a background color of the animation.
- Since :
- 6.0
- Remarks:
- This function should be called before image_util_anim_encode_add_frame() is called.
- Parameters:
-
[in] handle The handle of animation encoder [in] r The red color of the background [in] g The green color of the background [in] b The blue color of the background [in] a The alpha color of the background
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_anim_encode_set_loop_count | ( | image_util_anim_encode_h | handle, |
unsigned int | loop_count | ||
) |
Sets a number of times to repeat the animation.
- Since :
- 6.0
- Remarks:
- This function should be called before image_util_anim_encode_add_frame() is called. If not set, the default value is infinite repetition.
- Parameters:
-
[in] handle The handle of animation encoder [in] loop_count The number of times to repeat the animation
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_anim_encode_set_lossless | ( | image_util_anim_encode_h | handle, |
bool | lossless | ||
) |
Sets lossless compression of animation.
- Since :
- 6.0
- Remarks:
- This function should be called before image_util_anim_encode_add_frame() is called.
- Parameters:
-
[in] handle The handle of animation encoder [in] lossless The flag determining whether the compression is lossless or lossy: true for lossless, false for lossy
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_decode_create | ( | image_util_decode_h * | handle | ) |
Creates a handle of image util decoding.
This function creates a handle of image util decoding.
- Since :
- 3.0
- Remarks:
- The handle should be released using image_util_decode_destroy().
- Parameters:
-
[out] handle The handle of image util decode
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
- See also:
- image_util_decode_destroy()
int image_util_decode_destroy | ( | image_util_decode_h | handle | ) |
Destroys the image decoding handle.
- Since :
- 3.0
- Remarks:
- Any image handle created should be destroyed.
- Parameters:
-
[in] handle The handle of image util decode
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- image_util_decode_create()
- See also:
- image_util_decode_create()
int image_util_decode_run2 | ( | image_util_decode_h | handle, |
image_util_image_h * | image | ||
) |
Decodes the image with the given decode handle.
This function decodes the image synchronously.
- Since :
- 5.5
- Remarks:
- If the decoding fails, the image will be
NULL
.
The image should be released using image_util_destroy_image().
If any of the required functions listed in the preconditions section has not been called, IMAGE_UTIL_ERROR_INVALID_PARAMETER is returned.
- Parameters:
-
[in] handle The handle of image util decode [out] image The decoded image
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_decode_run_async2 | ( | image_util_decode_h | handle, |
image_util_decode_completed2_cb | callback, | ||
void * | user_data | ||
) |
Starts decoding of the image with the given decode handle.
This function decodes the image asynchronously.
- Since :
- 5.5
- Remarks:
- If the decoding fails, the image_util_decode_completed2_cb() will be called with
NULL
image and a non-zero error_code.
If any of the required functions listed in the preconditions section has not been called, IMAGE_UTIL_ERROR_INVALID_PARAMETER is returned.
- Parameters:
-
[in] handle The handle of image util decode [in] callback The callback function to be invoked [in] user_data The user data to be passed to the callback function
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
- See also:
- image_util_decode_completed2_cb()
int image_util_decode_set_colorspace | ( | image_util_decode_h | handle, |
image_util_colorspace_e | colorspace | ||
) |
Sets the decoded image colorspace format.
- Since :
- 3.0
- Remarks:
- The default colorspace is IMAGE_UTIL_COLORSPACE_RGBA8888.
Use image_util_foreach_supported_colorspace to get supported colorspaces for each image format.
Errors would be returned if not supported.
- Parameters:
-
[in] handle The handle of image util decode [in] colorspace The decoded image colorspace
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_decode_set_input_buffer | ( | image_util_decode_h | handle, |
const unsigned char * | src_buffer, | ||
unsigned long long | src_size | ||
) |
Sets the input buffer from which to decode.
- Since :
- 3.0
- Remarks:
- One of image_util_decode_set_input_path() or image_util_decode_set_input_buffer() should be set.
If both are set then the latest input set, is considered.
Finds out image type by reading the header of the image provided in input buffer.
Since 6.0, this module supports WEBP image format.
Since 6.5, this module supports HEIF image format.
Since 7.0, this module supports JPEG-XL image format.
- Parameters:
-
[in] handle The handle of image util decode [in] src_buffer The input image buffer [in] src_size The input image buffer size
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_decode_set_input_path | ( | image_util_decode_h | handle, |
const char * | path | ||
) |
Sets the input file path from which to decode.
- Since :
- 3.0
- Remarks:
- One of image_util_decode_set_input_path() or image_util_decode_set_input_buffer() should be set.
If both are set then the latest input set, is considered.
http://tizen.org/privilege/mediastorage is needed if input or output path are relevant to media storage.
http://tizen.org/privilege/externalstorage is needed if input or output path are relevant to external storage.
Finds out image type by reading the header of the image provided in input path.
Since 6.0, this module supports WEBP image format.
Since 6.5, this module supports HEIF image format.
Since 7.0, this module supports JPEG-XL image format.
- Parameters:
-
[in] handle The handle of image util decode [in] path The path to input image
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_PERMISSION_DENIED The application does not have the privilege to call this function IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format IMAGE_UTIL_ERROR_NO_SUCH_FILE No such file
int image_util_decode_set_jpeg_downscale | ( | image_util_decode_h | handle, |
image_util_scale_e | down_scale | ||
) |
Sets the downscale value at which JPEG image should be decoded.
- Since :
- 3.0
- Remarks:
- This is API is supported only for JPEG decoding.
- Parameters:
-
[in] handle The handle of image util decode [in] down_scale The downscale at which image is to be decoded
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_encode_create | ( | image_util_type_e | image_type, |
image_util_encode_h * | handle | ||
) |
Creates a handle of image util encode.
This function creates a handle of image util encode.
- Since :
- 3.0
- Remarks:
- The handle should be released using image_util_encode_destroy().
- Parameters:
-
[in] image_type The type of output image for which to create encode handle. [out] handle The handle of image util encode
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
- See also:
- image_util_encode_destroy()
int image_util_encode_destroy | ( | image_util_encode_h | handle | ) |
Destroys the image encoding handle.
- Since :
- 3.0
- Remarks:
- Any image handle created should be destroyed.
- Parameters:
-
[in] handle The handle of image util encode
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation
- Precondition:
- image_util_encode_create()
- See also:
- image_util_encode_create()
int image_util_encode_run_async_to_buffer | ( | image_util_encode_h | handle, |
image_util_image_h | image, | ||
image_util_encode_to_buffer_completed_cb | completed_cb, | ||
void * | user_data | ||
) |
Encodes an image using given handle asynchronously.
The output will be stored in a buffer provided by the completed_cb callback.
- Since :
- 5.5
- Remarks:
- If any functions at the pre-condition are not called first, IMAGE_UTIL_ERROR_INVALID_PARAMETER is returned.
The only supported colorspace for BMP and GIF is IMAGE_UTIL_COLORSPACE_RGBA8888.
To get supported colorspaces for JPEG format, you can use image_util_foreach_supported_colorspace().
Before 6.0, IMAGE_UTIL_COLORSPACE_RGBA8888 was the only supported colorspace for PNG. But since 6.0, this module supports more colorspaces for PNG. To get supported colorspaces for PNG, you can use image_util_foreach_supported_colorspace().
Since 6.0, this module supports WEBP, you can use image_util_foreach_supported_colorspace() to get supported colorspaces for WEBP.
Since 7.0, this module supports JPEG-XL, you can use image_util_foreach_supported_colorspace() to get supported colorspaces for JPEG-XL.
- Parameters:
-
[in] handle The handle of image util encode [in] image The image handle for encoding [in] completed_cb The callback function to be invoked [in] user_data The user data to be passed to the callback function
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
int image_util_encode_run_async_to_file | ( | image_util_encode_h | handle, |
image_util_image_h | image, | ||
const char * | file_path, | ||
image_util_encode_to_file_completed_cb | completed_cb, | ||
void * | user_data | ||
) |
Encodes an image using given handle asynchronously.
The output will be stored in file_path. And the function executes asynchronously.
- Since :
- 5.5
- Remarks:
- If any functions at the pre-condition are not called first, IMAGE_UTIL_ERROR_INVALID_PARAMETER is returned.
The only supported colorspace for BMP and GIF is IMAGE_UTIL_COLORSPACE_RGBA8888.
To get supported colorspaces for JPEG format, you can use image_util_foreach_supported_colorspace().
http://tizen.org/privilege/mediastorage is required if file_path value is media storage.
http://tizen.org/privilege/externalstorage is required if file_path value is external storage.
Before 6.0, IMAGE_UTIL_COLORSPACE_RGBA8888 was the only supported colorspace for PNG. But since 6.0, this module supports more colorspaces for PNG. To get supported colorspaces for PNG, you can use image_util_foreach_supported_colorspace().
Since 6.0, this module supports WEBP, you can use image_util_foreach_supported_colorspace() to get supported colorspaces for WEBP.
Since 7.0, this module supports JPEG-XL, you can use image_util_foreach_supported_colorspace() to get supported colorspaces for JPEG-XL.
- Parameters:
-
[in] handle The handle of image util encode [in] image The image handle for encoding [in] file_path The file path for encoding image [in] completed_cb The callback function to be invoked [in] user_data The user data to be passed to the callback function
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_PERMISSION_DENIED Permission denied IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory
int image_util_encode_run_to_buffer | ( | image_util_encode_h | handle, |
image_util_image_h | image, | ||
unsigned char ** | buffer, | ||
size_t * | buffer_size | ||
) |
Encodes an image using given handle synchronously.
This function encodes an @ image and stores it in buffer.
- Since :
- 5.5
- Remarks:
- If any functions at the pre-condition are not called first, IMAGE_UTIL_ERROR_INVALID_PARAMETER is returned.
The buffer should be released using free().
The only supported colorspace for BMP and GIF is IMAGE_UTIL_COLORSPACE_RGBA8888.
To get supported colorspaces for JPEG format, you can use image_util_foreach_supported_colorspace().
Before 6.0, IMAGE_UTIL_COLORSPACE_RGBA8888 was the only supported colorspace for PNG. But since 6.0, this module supports more colorspaces for PNG. To get supported colorspaces for PNG, you can use image_util_foreach_supported_colorspace().
Since 6.0, this module supports WEBP, you can use image_util_foreach_supported_colorspace() to get supported colorspaces for WEBP.
Since 7.0, this module supports JPEG-XL, you can use image_util_foreach_supported_colorspace() to get supported colorspaces for JPEG-XL.
- Parameters:
-
[in] handle The handle of image util encode [in] image The image handle for encoding [out] buffer The buffer that encoded image is stored [out] buffer_size The size of the buffer
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_encode_run_to_file | ( | image_util_encode_h | handle, |
image_util_image_h | image, | ||
const char * | file_path | ||
) |
Encodes an image using given handle synchronously.
This function encodes an @ image and stores it in file_path.
- Since :
- 5.5
- Remarks:
- If any functions at the pre-condition are not called first, IMAGE_UTIL_ERROR_INVALID_PARAMETER is returned.
The only supported colorspace for BMP and GIF is IMAGE_UTIL_COLORSPACE_RGBA8888.
To get supported colorspaces for JPEG format, you can use image_util_foreach_supported_colorspace().
http://tizen.org/privilege/mediastorage is required if file_path value is media storage.
http://tizen.org/privilege/externalstorage is required if file_path value is external storage.
Before 6.0, IMAGE_UTIL_COLORSPACE_RGBA8888 was the only supported colorspace for PNG. But since 6.0, this module supports more colorspaces for PNG. To get supported colorspaces for PNG, you can use image_util_foreach_supported_colorspace().
Since 6.0, this module supports WEBP, you can use image_util_foreach_supported_colorspace() to get supported colorspaces for WEBP.
Since 7.0, this module supports JPEG-XL, you can use image_util_foreach_supported_colorspace() to get supported colorspaces for JPEG-XL.
- Parameters:
-
[in] handle The handle of image util encode [in] image The image handle for encoding [in] file_path The file path for encoding image
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_PERMISSION_DENIED Permission denied IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_OUT_OF_MEMORY Out of memory IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_encode_set_lossless | ( | image_util_encode_h | handle, |
bool | lossless | ||
) |
Sets lossless for IMAGE_UTIL_WEBP and IMAGE_UTIL_JPEG_XL.
This function sets lossless compression of WEBP and JPEG-XL image format.
- Since :
- 7.0
- Remarks:
- If application does not set this, then the default value is
false
.
- Parameters:
-
[in] handle The handle of image util encode [in] lossless The flag determining whether the compression is lossless or lossy: true
for lossless,false
for lossy
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_encode_set_png_compression | ( | image_util_encode_h | handle, |
image_util_png_compression_e | compression | ||
) |
Sets the compression value of PNG image encoding(0~9).
- Since :
- 3.0
- Remarks:
- If application does not set this, then the default value is IMAGE_UTIL_PNG_COMPRESSION_6.
- Parameters:
-
[in] handle The handle of image util encode [in] compression The compression value valid from 0~9
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_INVALID_OPERATION Invalid operation IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_encode_set_quality | ( | image_util_encode_h | handle, |
int | quality | ||
) |
Sets the quality for encoding image.
- Since :
- 3.0
- Remarks:
- If application does not set this, then by default quality of 75 is set.
Quality is supported for JPEG format. IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT will be returned for other formats.
- Parameters:
-
[in] handle The handle of image util encode [in] quality Encoding quality from 1~100
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter IMAGE_UTIL_ERROR_NOT_SUPPORTED_FORMAT Not supported format
int image_util_foreach_supported_colorspace | ( | image_util_type_e | image_type, |
image_util_supported_colorspace_cb | callback, | ||
void * | user_data | ||
) |
Retrieves all supported colorspace for image encoding/decoding.
Retrieves all supported colorspace by invoking a callback function for each colorspace
- Since :
- 3.0
- Parameters:
-
[in] image_type The supported colorspace of image_type for which to create encode/decode handle [in] callback The callback function to be invoked [in] user_data The user data to be passed to the callback function
- Returns:
- 0 on success, otherwise a negative error value
- Return values:
-
IMAGE_UTIL_ERROR_NONE Successful IMAGE_UTIL_ERROR_INVALID_PARAMETER Invalid parameter
- See also:
- image_util_supported_colorspace_cb()