char buf[MEDIA_SVC_METADATA_LEN_MAX + 1] = { '\0' };
- memset(buf, 0x00, sizeof(buf));
-
- if (content_info == NULL || content_info->media_type != MEDIA_SVC_MEDIA_TYPE_IMAGE) {
- media_svc_error("content_info == NULL || media_type != MEDIA_SVC_MEDIA_TYPE_IMAGE");
- return MS_MEDIA_ERR_INVALID_PARAMETER;
- }
+ media_svc_retvm_if(!content_info, MS_MEDIA_ERR_INVALID_PARAMETER, "Invalid content_info");
+ media_svc_retvm_if(content_info->media_type != MEDIA_SVC_MEDIA_TYPE_IMAGE, MS_MEDIA_ERR_INVALID_PARAMETER, "Invalid media_type [%d]", content_info->media_type);
+ media_svc_retvm_if(!STRING_VALID(content_info->path), MS_MEDIA_ERR_INVALID_PARAMETER, "Invalid path");
path = content_info->path;
- if (!STRING_VALID(path)) {
- media_svc_error("Invalid Path");
- return MS_MEDIA_ERR_INVALID_PARAMETER;
- }
/* Load an ExifData object from an EXIF file */
ed = exif_data_new_from_file(path);
content_info->media_meta.is_360 = image_360_check(path);
+ content_info->media_meta.latitude = MEDIA_SVC_DEFAULT_GPS_VALUE;
+ content_info->media_meta.longitude = MEDIA_SVC_DEFAULT_GPS_VALUE;
+ content_info->media_meta.description = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
+ content_info->media_meta.fnumber = 0.0;
+ content_info->media_meta.iso = 0;
+ content_info->media_meta.orientation = 0;
+ content_info->media_meta.width = 0;
+ content_info->media_meta.height = 0;
+
+ memset(buf, 0x00, sizeof(buf));
if (__media_svc_get_exif_info(ed, NULL, NULL, &value, EXIF_TAG_GPS_LATITUDE) == MS_MEDIA_ERR_NONE) {
if (__media_svc_get_exif_info(ed, buf, NULL, NULL, EXIF_TAG_GPS_LATITUDE_REF) == MS_MEDIA_ERR_NONE) {
if (strlen(buf) > 0) {
value = -1 * value;
}
content_info->media_meta.latitude = value;
- } else {
- content_info->media_meta.latitude = MEDIA_SVC_DEFAULT_GPS_VALUE;
}
- } else {
- content_info->media_meta.latitude = MEDIA_SVC_DEFAULT_GPS_VALUE;
}
memset(buf, 0x00, sizeof(buf));
-
if (__media_svc_get_exif_info(ed, NULL, NULL, &value, EXIF_TAG_GPS_LONGITUDE) == MS_MEDIA_ERR_NONE) {
if (__media_svc_get_exif_info(ed, buf, NULL, NULL, EXIF_TAG_GPS_LONGITUDE_REF) == MS_MEDIA_ERR_NONE) {
if (strlen(buf) > 0) {
value = -1 * value;
}
content_info->media_meta.longitude = value;
- } else {
- content_info->media_meta.longitude = MEDIA_SVC_DEFAULT_GPS_VALUE;
}
- } else {
- content_info->media_meta.longitude = MEDIA_SVC_DEFAULT_GPS_VALUE;
}
memset(buf, 0x00, sizeof(buf));
-
if (__media_svc_get_exif_info(ed, buf, NULL, NULL, EXIF_TAG_IMAGE_DESCRIPTION) == MS_MEDIA_ERR_NONE) {
- if (strlen(buf) == 0)
- content_info->media_meta.description = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
- else
+ if (strlen(buf) > 0) {
+ SAFE_FREE(content_info->media_meta.description);
content_info->media_meta.description = g_strdup(buf);
- } else {
- content_info->media_meta.description = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
+ }
}
memset(buf, 0x00, sizeof(buf));
-
if (!has_datetaken && __media_svc_get_exif_info(ed, buf, NULL, NULL, EXIF_TAG_DATE_TIME_ORIGINAL) == MS_MEDIA_ERR_NONE) {
if (strlen(buf) > 0) {
has_datetaken = true;
}
memset(buf, 0x00, sizeof(buf));
-
if (!has_datetaken && __media_svc_get_exif_info(ed, buf, NULL, NULL, EXIF_TAG_DATE_TIME) == MS_MEDIA_ERR_NONE) {
if (strlen(buf) > 0) {
has_datetaken = true;
}
memset(buf, 0x00, sizeof(buf));
-
/* Get exposure_time value from exif. */
if (__media_svc_get_exif_info(ed, buf, NULL, NULL, EXIF_TAG_EXPOSURE_TIME) == MS_MEDIA_ERR_NONE) {
if (strlen(buf) > 0)
if (__media_svc_get_exif_info(ed, NULL, NULL, &fnumber, EXIF_TAG_FNUMBER) == MS_MEDIA_ERR_NONE) {
if (fnumber > 0.0)
content_info->media_meta.fnumber = fnumber;
- else
- content_info->media_meta.fnumber = 0.0;
- } else {
- content_info->media_meta.fnumber = 0.0;
}
/* Get iso value from exif. */
if (__media_svc_get_exif_info(ed, NULL, &iso, NULL, EXIF_TAG_ISO_SPEED_RATINGS) == MS_MEDIA_ERR_NONE) {
if (iso > 0)
content_info->media_meta.iso = iso;
- else
- content_info->media_meta.iso = 0;
- } else {
- content_info->media_meta.iso = 0;
}
memset(buf, 0x00, sizeof(buf));
-
/* Get model value from exif. */
if (__media_svc_get_exif_info(ed, buf, NULL, NULL, EXIF_TAG_MODEL) == MS_MEDIA_ERR_NONE) {
if (strlen(buf) > 0)
if (__media_svc_get_exif_info(ed, NULL, &orient_value, NULL, EXIF_TAG_ORIENTATION) == MS_MEDIA_ERR_NONE) {
if (orient_value >= NOT_AVAILABLE && orient_value <= ROT_270)
content_info->media_meta.orientation = orient_value;
- else
- content_info->media_meta.orientation = 0;
- } else {
- content_info->media_meta.orientation = 0;
}
/* Get width value from exif. */
if (__media_svc_get_exif_info(ed, NULL, &exif_width, NULL, EXIF_TAG_PIXEL_X_DIMENSION) == MS_MEDIA_ERR_NONE) {
if (exif_width > 0)
content_info->media_meta.width = exif_width;
- else
- content_info->media_meta.width = 0;
- } else {
- content_info->media_meta.width = 0;
}
/* Get height value from exif. */
if (__media_svc_get_exif_info(ed, NULL, &exif_height, NULL, EXIF_TAG_PIXEL_Y_DIMENSION) == MS_MEDIA_ERR_NONE) {
if (exif_height > 0)
content_info->media_meta.height = exif_height;
- else
- content_info->media_meta.height = 0;
- } else {
- content_info->media_meta.height = 0;
}
if (ed != NULL) exif_data_unref(ed);