From: hj kim Date: Fri, 17 Apr 2020 06:44:00 +0000 (+0900) Subject: Use mm_util_encode_to_jpeg_memory() instead of old deprecated mm_util_jpeg_encode_to_... X-Git-Tag: submit/tizen/20200421.103532~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4b89837cfc2ad68e35ad21dc73dac0112389b65b;p=platform%2Fcore%2Fmultimedia%2Flibmm-camcorder.git Use mm_util_encode_to_jpeg_memory() instead of old deprecated mm_util_jpeg_encode_to_memory() Change-Id: Ic22826da0c05f8263da82ff7389e0960e86d71d8 --- diff --git a/src/mm_camcorder_util.c b/src/mm_camcorder_util.c index 063ac1f..ec1cf78 100644 --- a/src/mm_camcorder_util.c +++ b/src/mm_camcorder_util.c @@ -1884,11 +1884,14 @@ gboolean _mmcamcorder_encode_jpeg(void *src_data, unsigned int src_width, unsign int src_format, unsigned int src_length, unsigned int jpeg_quality, void **result_data, unsigned int *result_length) { - int ret = 0; + int ret = MM_UTIL_ERROR_NONE; gboolean ret_conv = TRUE; - int jpeg_format = 0; + mm_util_color_format_e jpeg_format = MM_UTIL_COLOR_NUM; unsigned char *converted_src = NULL; unsigned int converted_src_size = 0; + mm_util_image_h decoded = NULL; + void *encoded_data = NULL; + size_t encoded_data_size = 0; mmf_return_val_if_fail(src_data && result_data && result_length, FALSE); @@ -1954,19 +1957,33 @@ gboolean _mmcamcorder_encode_jpeg(void *src_data, unsigned int src_width, unsign return FALSE; } - ret = mm_util_jpeg_encode_to_memory(result_data, result_length, - converted_src, src_width, src_height, jpeg_format, jpeg_quality); + converted_src_size = (converted_src && (converted_src != src_data)) ? converted_src_size : src_length; + ret = mm_image_create_image(src_width, src_height, jpeg_format, converted_src, (size_t)converted_src_size, &decoded); + if (ret != MM_UTIL_ERROR_NONE) { + _mmcam_dbg_err("mm_image_create_image error [%d]", ret); + if (converted_src && (converted_src != src_data)) + free(converted_src); + return FALSE; + } + + ret = mm_util_encode_to_jpeg_memory(decoded, jpeg_quality, &encoded_data, &encoded_data_size); + mm_image_destroy_image(decoded); if (converted_src && (converted_src != src_data)) { free(converted_src); converted_src = NULL; } - if (ret != MM_ERROR_NONE) { + if (ret != MM_UTIL_ERROR_NONE) { _mmcam_dbg_err("No encoder supports %d format, error code %x", src_format, ret); + if (encoded_data) + free(encoded_data); return FALSE; } + *result_data = encoded_data; + *result_length = (unsigned int)encoded_data_size; + return TRUE; }