Name: capi-media-image-util
Summary: A Image Utility library in Tizen Native API
-Version: 0.1.7
+Version: 0.1.8
Release: 1
Group: Multimedia/API
License: Apache-2.0
BuildRequires: pkgconfig(dlog)
BuildRequires: pkgconfig(mmutil-jpeg)
BuildRequires: pkgconfig(mmutil-imgp)
-BuildRequires: pkgconfig(mmutil-imgcv)
BuildRequires: pkgconfig(mmutil-png)
BuildRequires: pkgconfig(mmutil-gif)
BuildRequires: pkgconfig(mmutil-bmp)
BuildRequires: pkgconfig(capi-base-common)
BuildRequires: pkgconfig(capi-media-tool)
BuildRequires: pkgconfig(glib-2.0)
+BuildRequires: pkgconfig(gmodule-2.0)
BuildRequires: cmake
BuildRequires: libpng-devel
BuildRequires: giflib-devel
Requires: pkgconfig(mm-common)
Requires: pkgconfig(mmutil-jpeg)
Requires: pkgconfig(mmutil-imgp)
-Requires: pkgconfig(mmutil-imgcv)
Requires: pkgconfig(mmutil-png)
Requires: pkgconfig(mmutil-gif)
Requires: pkgconfig(mmutil-bmp)
#include <mm_util_imgp.h>
#include <mm_util_jpeg.h>
-#include <mm_util_imgcv.h>
#include <mm_util_png.h>
#include <mm_util_gif.h>
#include <mm_util_bmp.h>
image_util_retvm_if((image_buffer == NULL), IMAGE_UTIL_ERROR_INVALID_PARAMETER, "image_buffer is null");
+ GModule *module = NULL;
+ ModuleFunc mmutil_imgcv_module_func = NULL;
+ module = g_module_open(PATH_MMUTIL_IMGCV_LIB, G_MODULE_BIND_LAZY);
+ image_util_retvm_if((module == NULL), IMAGE_UTIL_ERROR_NO_SUCH_FILE, "fail to open module");
+
+ g_module_symbol(module, IMGCV_FUNC_NAME, (gpointer *)&mmutil_imgcv_module_func);
+ if (!mmutil_imgcv_module_func) {
+ g_module_close(module);
+ }
+ image_util_retvm_if((mmutil_imgcv_module_func == NULL), IMAGE_UTIL_ERROR_INVALID_OPERATION, "fail to get symbol");
+
unsigned char r_color, g_color, b_color;
- ret = mm_util_cv_extract_representative_color((void *)image_buffer, width, height, &r_color, &g_color, &b_color);
+ ret = mmutil_imgcv_module_func((void *)image_buffer, width, height, &r_color, &g_color, &b_color);
*rgb_r = r_color;
*rgb_g = g_color;
*rgb_b = b_color;
+ if (module) {
+ g_module_close(module);
+ module = NULL;
+ }
+
return _convert_image_util_error_code(__func__, ret);
}
#include <string.h>
#include <image_util.h>
#include <image_util_type.h>
-#include <mm_error.h>
#define MAX_STRING_LEN 128
#define IMAGE_FORMAT_LABEL_BUFFER_SIZE 4
char *output_fmt = NULL;
g_printf("test_transform_completed_cb============= [%d] \n", error);
- if (error == MM_ERROR_NONE) {
+ if (error == IMAGE_UTIL_ERROR_NONE) {
g_printf("<<<<< SUCCESS >>>>>");
output_fmt = (char *)malloc(sizeof(char) * IMAGE_FORMAT_LABEL_BUFFER_SIZE);
if (output_fmt) {
- if (media_packet_get_format(*packet, &dst_fmt) != MM_ERROR_NONE) {
+ if (media_packet_get_format(*packet, &dst_fmt) != MEDIA_PACKET_ERROR_NONE) {
g_printf("Imedia_packet_get_format");
_signal();
return FALSE;
if (fpout) {
media_packet_get_buffer_size(*packet, &size);
void *dst = NULL;
- if (media_packet_get_buffer_data_ptr(*packet, &dst) != MM_ERROR_NONE) {
+ if (media_packet_get_buffer_data_ptr(*packet, &dst) != MEDIA_PACKET_ERROR_NONE) {
IMAGE_UTIL_SAFE_FREE(dst);
IMAGE_UTIL_SAFE_FREE(output_fmt);
fclose(fpout);
if (media_format_set_video_mime(fmt, _image_util_mapping_imgp_format_to_mime(g_format)) != MEDIA_FORMAT_ERROR_NONE) {
media_format_unref(fmt);
g_printf("[Error] Set - video mime\n");
- return MM_ERROR_IMAGE_INVALID_VALUE;
+ return IMAGE_UTIL_ERROR_INVALID_PARAMETER;
}
if (media_format_set_video_width(fmt, g_width) != MEDIA_FORMAT_ERROR_NONE) {
media_format_unref(fmt);
g_printf("[Error] Set - video width\n");
- return MM_ERROR_IMAGE_INVALID_VALUE;
+ return IMAGE_UTIL_ERROR_INVALID_PARAMETER;
}
if (media_format_set_video_height(fmt, g_height) != MEDIA_FORMAT_ERROR_NONE) {
media_format_unref(fmt);
g_printf("[Error] Set - video heigh\nt");
- return MM_ERROR_IMAGE_INVALID_VALUE;
+ return IMAGE_UTIL_ERROR_INVALID_PARAMETER;
}
if (media_format_set_video_avg_bps(fmt, 2000000) != MEDIA_FORMAT_ERROR_NONE) {
media_format_unref(fmt);
g_printf("[Error] Set - video avg bps\n");
- return MM_ERROR_IMAGE_INVALID_VALUE;
+ return IMAGE_UTIL_ERROR_INVALID_PARAMETER;
}
if (media_format_set_video_max_bps(fmt, 15000000) != MEDIA_FORMAT_ERROR_NONE) {
media_format_unref(fmt);
g_printf("[Error] Set - video max bps\n");
- return MM_ERROR_IMAGE_INVALID_VALUE;
+ return IMAGE_UTIL_ERROR_INVALID_PARAMETER;
}
g_printf("media_format_set_video_info success! file:%s, w:%d, h:%d, %d\n", g_path, g_width, g_height, _image_util_mapping_imgp_format_to_mime(g_format));
}
ret = media_packet_create_alloc(fmt, NULL, NULL, &g_src);
- if (ret == MM_ERROR_NONE) {
+ if (ret == MEDIA_PACKET_ERROR_NONE) {
g_printf("Success - media_packet_create_alloc\n");
uint64_t size = 0;
if (media_packet_get_buffer_size(g_src, &size) == MEDIA_PACKET_ERROR_NONE) {
ptr = malloc(size);
if (ptr == NULL) {
g_printf("\tmemory allocation failed\n");
- return MM_ERROR_IMAGE_INTERNAL;
+ return IMAGE_UTIL_ERROR_OUT_OF_MEMORY;
}
if (media_packet_get_buffer_data_ptr(g_src, &ptr) == MEDIA_PACKET_ERROR_NONE) {
FILE *fp = fopen(g_path, "r");
if (fp == NULL) {
g_printf("\tfile open failed %d\n", errno);
- return MM_ERROR_IMAGE_INTERNAL;
+ return IMAGE_UTIL_ERROR_NO_SUCH_FILE;
}
src = malloc(size);
if (src == NULL) {
g_printf("\tmemory allocation failed\n");
- return MM_ERROR_IMAGE_INTERNAL;
+ return IMAGE_UTIL_ERROR_NO_SUCH_FILE;
}
if (fread(src, 1, (int)size, fp)) {
g_printf("#Success# fread\n");
g_printf("[%d]Success source packet is destroyed \n", __LINE__);
}
ret = create_media_packet();
- if (ret == MM_ERROR_NONE)
+ if (ret == MEDIA_PACKET_ERROR_NONE)
g_printf("Success - Create_media_packet\n");
else
g_printf("Error - Create_media_packet\n");
bool hardware_acceleration = FALSE;
ret = create_media_packet();
- if (ret == MM_ERROR_NONE) {
+ if (ret == MEDIA_PACKET_ERROR_NONE) {
g_printf("Success - Create_media_packet\n");
} else {
g_printf("Error - Create_media_packet\n");