Restore some fields for TC 27/305727/1
authorminje.ahn <minje.ahn@samsung.com>
Wed, 7 Feb 2024 02:44:56 +0000 (11:44 +0900)
committerminje.ahn <minje.ahn@samsung.com>
Wed, 7 Feb 2024 02:44:56 +0000 (11:44 +0900)
Remove again after ACR is done.

Change-Id: I069bad1354a1347bf49160fe830e32dd75c11e97
Signed-off-by: minje.ahn <minje.ahn@samsung.com>
src/common/media-svc-db-utils.c
src/common/media-svc-media.c
src/common/media-svc-util.c
src/include/common/media-svc-util.h

index e273c3f..9fc87db 100755 (executable)
@@ -376,7 +376,7 @@ int _media_svc_init_table_query(void)
        __add_column_info(&column_list[DB_LIST_MEDIA], "media_composer", DB_TYPE_TEXT, "DEFAULT ''", false, false, true);
        __add_column_info(&column_list[DB_LIST_MEDIA], "media_year", DB_TYPE_TEXT, NULL, false, false, true);
        __add_column_info(&column_list[DB_LIST_MEDIA], "media_recorded_date", DB_TYPE_TEXT, NULL, false, false, true);
-       __add_column_info(&column_list[DB_LIST_MEDIA], "media_copyright", DB_TYPE_TEXT, "DEFAULT ''", false, false, true);
+       __add_column_info(&column_list[DB_LIST_MEDIA], "media_copyright", DB_TYPE_TEXT, NULL, false, false, true);
        __add_column_info(&column_list[DB_LIST_MEDIA], "media_track_num", DB_TYPE_TEXT, NULL, false, false, true);
        __add_column_info(&column_list[DB_LIST_MEDIA], "media_description", DB_TYPE_TEXT, "DEFAULT ''", false, false, true);
        __add_column_info(&column_list[DB_LIST_MEDIA], "media_bitrate", DB_TYPE_INT, "DEFAULT -1", false, false, true);
index 0e586cb..8fac748 100755 (executable)
@@ -72,11 +72,11 @@ int _media_svc_insert_item_with_data(bool is_direct, media_svc_content_info_s *c
 {
        int ret = MS_MEDIA_ERR_NONE;
 
-       const char *db_fields = "media_id, media_path, media_display_name, media_type, media_mime_type, media_size, media_added_time, media_modified_time, folder_id, media_thumbnail_path, media_title, album_id, media_album, media_artist, media_album_artist, media_genre, media_year, media_recorded_date, media_track_num, media_width, media_height, media_datetaken, media_orientation, storage_uuid";
+       const char *db_fields = "media_id, media_path, media_display_name, media_type, media_mime_type, media_size, media_added_time, media_modified_time, folder_id, media_thumbnail_path, media_title, album_id, media_album, media_artist, media_album_artist, media_genre, media_year, media_recorded_date, media_copyright, media_track_num, media_width, media_height, media_datetaken, media_orientation, storage_uuid";
 
        const char *db_fields_basic = "media_id, media_path, media_display_name, media_type, media_mime_type, media_size, media_added_time, media_modified_time, folder_id, album_id, storage_uuid";
 
-       char *sql = sqlite3_mprintf("INSERT INTO %q(%q) VALUES (%Q, %Q, %Q, %d, %Q, %lld, %d, %d, %lld, %Q, %Q, %d, %Q, %Q, %Q, %Q, %Q, %Q, %Q, %d, %d, %Q, %d, %Q);",
+       char *sql = sqlite3_mprintf("INSERT INTO %q(%q) VALUES (%Q, %Q, %Q, %d, %Q, %lld, %d, %d, %lld, %Q, %Q, %d, %Q, %Q, %Q, %Q, %Q, %Q, %Q, %Q, %d, %d, %Q, %d, %Q);",
                                DB_TABLE_MEDIA, db_fields,
                                content_info->media_uuid,
                                content_info->path,
@@ -96,6 +96,7 @@ int _media_svc_insert_item_with_data(bool is_direct, media_svc_content_info_s *c
                                content_info->media_meta.genre,
                                content_info->media_meta.year,
                                content_info->media_meta.recorded_date,
+                               content_info->media_meta.copyright,
                                content_info->media_meta.track_num,
                                content_info->media_meta.width,
                                content_info->media_meta.height,
@@ -144,7 +145,7 @@ int _media_svc_update_item_with_data(bool is_direct, media_svc_content_info_s *c
 {
        int ret = MS_MEDIA_ERR_NONE;
 
-       char *sql = sqlite3_mprintf("UPDATE %q SET media_size=%lld, media_modified_time=%d, media_thumbnail_path=%Q, media_title=%Q, album_id=%d, media_album=%Q, media_artist=%Q, media_album_artist=%Q, media_genre=%Q, media_year=%Q, media_recorded_date=%Q, media_track_num=%Q, media_width=%d, media_height=%d, media_datetaken=%Q, media_orientation=%d, validity=1 WHERE media_path=%Q;",
+       char *sql = sqlite3_mprintf("UPDATE %q SET media_size=%lld, media_modified_time=%d, media_thumbnail_path=%Q, media_title=%Q, album_id=%d, media_album=%Q, media_artist=%Q, media_album_artist=%Q, media_genre=%Q, media_year=%Q, media_recorded_date=%Q, media_copyright=%Q, media_track_num=%Q, media_width=%d, media_height=%d, media_datetaken=%Q, media_orientation=%d, validity=1 WHERE media_path=%Q;",
                                DB_TABLE_MEDIA,
                                content_info->size,
                                content_info->modified_time,
@@ -157,6 +158,7 @@ int _media_svc_update_item_with_data(bool is_direct, media_svc_content_info_s *c
                                content_info->media_meta.genre,
                                content_info->media_meta.year,
                                content_info->media_meta.recorded_date,
+                               content_info->media_meta.copyright,
                                content_info->media_meta.track_num,
                                content_info->media_meta.width,
                                content_info->media_meta.height,
index f4d0dd7..e6e13c3 100644 (file)
@@ -541,6 +541,9 @@ int _media_svc_extract_image_metadata(media_svc_content_info_s *content_info)
                }
        }
 
+       if (content_info->media_meta.recorded_date == NULL)
+               content_info->media_meta.recorded_date = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
+
        /* Get orientation value from exif. */
        if (__media_svc_get_exif_info(ed, NULL, &orient_value, EXIF_TAG_ORIENTATION) == MS_MEDIA_ERR_NONE) {
                if (orient_value >= NOT_AVAILABLE && orient_value <= ROT_270)
@@ -619,6 +622,7 @@ int _media_svc_extract_audio_metadata(sqlite3 *handle, bool is_direct, media_svc
                content_info->media_meta.album_artist = __media_svc_get_tag_str_value(tag, MM_FILE_TAG_ALBUM_ARTIST);
                content_info->media_meta.genre = __media_svc_get_tag_str_value(tag, MM_FILE_TAG_GENRE);
                content_info->media_meta.track_num = __media_svc_get_tag_str_value(tag, MM_FILE_TAG_TRACK_NUM);
+               content_info->media_meta.copyright = __media_svc_get_tag_str_value(tag, MM_FILE_TAG_COPYRIGHT);
 
                mmf_error = mm_file_get_attrs(tag, MM_FILE_TAG_RECDATE, &p, &size, NULL);
                if ((mmf_error == FILEINFO_ERROR_NONE) && (size > 0)) {
@@ -632,6 +636,9 @@ int _media_svc_extract_audio_metadata(sqlite3 *handle, bool is_direct, media_svc
                        }
                }
 
+               if (content_info->media_meta.recorded_date == NULL)
+                       content_info->media_meta.recorded_date = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
+
                mmf_error = mm_file_get_attrs(tag, MM_FILE_TAG_DATE, &p, &size, NULL);
                if (mmf_error == FILEINFO_ERROR_NONE && size == 4) {
                        if (__media_svc_safe_atoi(p, &convert_value) == MS_MEDIA_ERR_NONE)
@@ -705,6 +712,7 @@ int _media_svc_extract_video_metadata(media_svc_content_info_s *content_info)
 {
        int mmf_error = FILEINFO_ERROR_NONE;
        MMHandleType tag = 0;
+       MMHandleType content = 0;
        char *p = NULL;
        unsigned int size = 0;
 
@@ -723,10 +731,21 @@ int _media_svc_extract_video_metadata(media_svc_content_info_s *content_info)
                        }
                }
 
+               if (content_info->media_meta.recorded_date == NULL)
+                       content_info->media_meta.recorded_date = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
+               content_info->media_meta.datetaken = g_strdup(content_info->media_meta.recorded_date);
+
                mmf_error = mm_file_destroy_tag_attrs(tag);
                if (mmf_error != FILEINFO_ERROR_NONE)
                        media_svc_error("fail to free tag attr - err(%x)", mmf_error);
        }
+       /*Get Content attribute ===========*/
+       mmf_error = mm_file_create_content_attrs_simple(&content, content_info->path);
+       media_svc_retvm_if(mmf_error != FILEINFO_ERROR_NONE, MS_MEDIA_ERR_NONE, "mm_file_create_content_attrs failed");
+
+       mm_file_get_attrs(content, MM_FILE_CONTENT_VIDEO_WIDTH, &content_info->media_meta.width,
+               MM_FILE_CONTENT_VIDEO_HEIGHT, &content_info->media_meta.height,
+               NULL);
 
        content_info->media_meta.title = __media_svc_get_title(NULL, content_info->path);
        content_info->media_meta.album = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
@@ -735,6 +754,7 @@ int _media_svc_extract_video_metadata(media_svc_content_info_s *content_info)
        content_info->media_meta.genre = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
        content_info->media_meta.track_num = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
        content_info->media_meta.year = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
+       content_info->media_meta.copyright = g_strdup(MEDIA_SVC_TAG_UNKNOWN);
        content_info->album_id = 0;
 
        return MS_MEDIA_ERR_NONE;
@@ -903,6 +923,8 @@ static gboolean __media_svc_get_xml_metadata(const xmlChar *buffer, gboolean is_
        if (!content_info->media_meta.artist)
                content_info->media_meta.artist = __media_svc_find_and_get_value(root, "author");
        content_info->media_meta.genre = __media_svc_find_and_get_value(root, "subject");
+       content_info->media_meta.copyright = __media_svc_find_and_get_value(root, "publisher");
+       content_info->media_meta.recorded_date = __media_svc_find_and_get_value(root, "date");
 
        xmlFreeDoc(doc);
 
@@ -1046,6 +1068,7 @@ void _media_svc_destroy_content_info(media_svc_content_info_s *content_info)
        g_free(content_info->media_meta.genre);
        g_free(content_info->media_meta.year);
        g_free(content_info->media_meta.recorded_date);
+       g_free(content_info->media_meta.copyright);
        g_free(content_info->media_meta.track_num);
        g_free(content_info->media_meta.datetaken);
 }
index f038179..6dd07e3 100755 (executable)
@@ -45,6 +45,7 @@ typedef struct {
        char *genre;                            /**< genre of track*/
        char *year;                             /**< year*/
        char *recorded_date;            /**< recorded date*/
+       char *copyright;                        /**< copyright*/
        char *track_num;                        /**< track number*/
        int width;                              /**< width*/
        int height;                             /**< height*/