From: hj kim Date: Mon, 25 May 2020 06:54:10 +0000 (+0900) Subject: Modify input parameter X-Git-Tag: submit/tizen/20200602.021203~10 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F93%2F234293%2F5;p=platform%2Fcore%2Fapi%2Fmetadata-editor.git Modify input parameter Use proper MP4:Tag instead of metadata_editor structure when get and set metadata. Change-Id: I2c255991ce19f65606580507c4aa188e9b119f22 --- diff --git a/src/metadata_editor.cpp b/src/metadata_editor.cpp index 576a400..99bc7d4 100755 --- a/src/metadata_editor.cpp +++ b/src/metadata_editor.cpp @@ -326,16 +326,10 @@ static int __ID3_setLyricsFrame(ID3v2::Tag *tag2, const char *value) return METADATA_EDITOR_ERROR_NONE; } -static int __MP4_getStringItem(metadata_editor_s *_metadata, const char *itemname, char **value) +static int __MP4_getStringItem(MP4::Tag *tag, const char *itemname, char **value) { - int ret = METADATA_EDITOR_ERROR_NONE; - - ret = __check_metadata_get_parameter(_metadata, value); - metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_get_parameter() [%d]", ret); - metadata_editor_retvm_if(!itemname, METADATA_EDITOR_ERROR_INVALID_PARAMETER, "Invalid itemname"); - - auto tag = dynamic_cast(_metadata->file->tag()); metadata_editor_retvm_if(!tag, METADATA_EDITOR_ERROR_OPERATION_FAILED, "Tag does not exist"); + metadata_editor_retvm_if(!itemname, METADATA_EDITOR_ERROR_INVALID_PARAMETER, "Invalid itemname"); auto &itemMap = tag->itemListMap(); auto it = itemMap.find(itemname); @@ -348,16 +342,10 @@ static int __MP4_getStringItem(metadata_editor_s *_metadata, const char *itemnam return METADATA_EDITOR_ERROR_NONE; } -static int __MP4_getIntegerItem(metadata_editor_s *_metadata, const char *itemname, char **value) +static int __MP4_getIntegerItem(MP4::Tag *tag, const char *itemname, char **value) { - int ret = METADATA_EDITOR_ERROR_NONE; - - ret = __check_metadata_get_parameter(_metadata, value); - metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_get_parameter() [%d]", ret); - metadata_editor_retvm_if(!itemname, METADATA_EDITOR_ERROR_INVALID_PARAMETER, "Invalid itemname"); - - auto tag = dynamic_cast(_metadata->file->tag()); metadata_editor_retvm_if(!tag, METADATA_EDITOR_ERROR_OPERATION_FAILED, "Tag does not exist"); + metadata_editor_retvm_if(!itemname, METADATA_EDITOR_ERROR_INVALID_PARAMETER, "Invalid itemname"); auto &itemMap = tag->itemListMap(); auto it = itemMap.find(itemname); @@ -369,16 +357,10 @@ static int __MP4_getIntegerItem(metadata_editor_s *_metadata, const char *itemna return METADATA_EDITOR_ERROR_NONE; } -static int __MP4_updateStringItem(metadata_editor_s *_metadata, const char *itemname, const char *value) +static int __MP4_updateStringItem(MP4::Tag *tag, const char *itemname, const char *value) { - int ret = METADATA_EDITOR_ERROR_NONE; - - ret = __check_metadata_set_parameter(_metadata); - metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_set_parameter() [%d]", ret); - metadata_editor_retvm_if(!itemname, METADATA_EDITOR_ERROR_INVALID_PARAMETER, "Invalid itemname"); - - auto tag = dynamic_cast(_metadata->file->tag()); metadata_editor_retvm_if(!tag, METADATA_EDITOR_ERROR_OPERATION_FAILED, "Tag does not exist"); + metadata_editor_retvm_if(!itemname, METADATA_EDITOR_ERROR_INVALID_PARAMETER, "Invalid itemname"); // Get map of items directly from tag and launch a search of specific item auto &itemMap = tag->itemListMap(); @@ -396,16 +378,10 @@ static int __MP4_updateStringItem(metadata_editor_s *_metadata, const char *item return METADATA_EDITOR_ERROR_NONE; } -static int __MP4_updateIntegerItem(metadata_editor_s *_metadata, const char *itemname, const char *value) +static int __MP4_updateIntegerItem(MP4::Tag *tag, const char *itemname, const char *value) { - int ret = METADATA_EDITOR_ERROR_NONE; - - ret = __check_metadata_set_parameter(_metadata); - metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_set_parameter() [%d]", ret); - metadata_editor_retvm_if(!itemname, METADATA_EDITOR_ERROR_INVALID_PARAMETER, "Invalid itemname"); - - auto tag = dynamic_cast(_metadata->file->tag()); metadata_editor_retvm_if(!tag, METADATA_EDITOR_ERROR_OPERATION_FAILED, "Tag does not exist"); + metadata_editor_retvm_if(!itemname, METADATA_EDITOR_ERROR_INVALID_PARAMETER, "Invalid itemname"); // Get map of items directly from tag and launch a search of specific item auto &itemMap = tag->itemListMap(); @@ -429,14 +405,8 @@ static int __MP4_updateIntegerItem(metadata_editor_s *_metadata, const char *ite } } -static int __MP4_getNumberOfPictures(metadata_editor_s *_metadata, char **value) +static int __MP4_getNumberOfPictures(MP4::Tag *tag, char **value) { - int ret = METADATA_EDITOR_ERROR_NONE; - - ret = __check_metadata_get_parameter(_metadata, value); - metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_get_parameter() [%d]", ret); - - auto tag = dynamic_cast(_metadata->file->tag()); metadata_editor_retvm_if(!tag, METADATA_EDITOR_ERROR_OPERATION_FAILED, "Tag does not exist"); *value = g_strdup_printf("%u", tag->contains("covr") ? tag->item("covr").toCoverArtList().size() : 0); @@ -478,16 +448,12 @@ static int __xiph_updateFieldValue(Ogg::XiphComment *xtag, const char *fieldname return METADATA_EDITOR_ERROR_NONE; } -static int __FLAC_getNumberOfPictures(metadata_editor_s *_metadata, char **value) +static int __FLAC_getNumberOfPictures(FLAC::File *file, char **value) { - int ret = METADATA_EDITOR_ERROR_NONE; - - ret = __check_metadata_get_parameter(_metadata, value); - metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_get_parameter() [%d]", ret); - - auto _file = dynamic_cast(_metadata->file); - - *value = g_strdup_printf("%u", _file->pictureList().size()); + if (file) + *value = g_strdup_printf("%u", file->pictureList().size()); + else + *value = g_strdup("0"); return METADATA_EDITOR_ERROR_NONE; } @@ -738,19 +704,19 @@ static int __metadata_editor_get_mp4_metadata(metadata_editor_s *metadata, metad metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_get_parameter() [%d]", ret); switch (attribute) { // Check which one of frame types was given to the function for processing - case METADATA_EDITOR_ATTR_ARTIST: return __MP4_getStringItem(metadata, "\xA9""ART", value); - case METADATA_EDITOR_ATTR_TITLE: return __MP4_getStringItem(metadata, "\xA9""nam", value); - case METADATA_EDITOR_ATTR_ALBUM: return __MP4_getStringItem(metadata, "\xA9""alb", value); - case METADATA_EDITOR_ATTR_GENRE: return __MP4_getStringItem(metadata, "\xA9""gen", value); - case METADATA_EDITOR_ATTR_AUTHOR: return __MP4_getStringItem(metadata, "\xA9""wrt", value); - case METADATA_EDITOR_ATTR_COPYRIGHT: return __MP4_getStringItem(metadata, "cprt", value); - case METADATA_EDITOR_ATTR_DATE: return __MP4_getStringItem(metadata, "\xA9""day", value); - case METADATA_EDITOR_ATTR_DESCRIPTION: return __MP4_getStringItem(metadata, "desc", value); - case METADATA_EDITOR_ATTR_COMMENT: return __MP4_getStringItem(metadata, "\xA9""cmt", value); - case METADATA_EDITOR_ATTR_TRACK_NUM: return __MP4_getIntegerItem(metadata, "trkn", value); - case METADATA_EDITOR_ATTR_CONDUCTOR: return __MP4_getStringItem(metadata, "cond", value); - case METADATA_EDITOR_ATTR_UNSYNCLYRICS: return __MP4_getStringItem(metadata, "\xA9""lyr", value); - case METADATA_EDITOR_ATTR_PICTURE_NUM: return __MP4_getNumberOfPictures(metadata, value); + case METADATA_EDITOR_ATTR_ARTIST: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "\xA9""ART", value); + case METADATA_EDITOR_ATTR_TITLE: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "\xA9""nam", value); + case METADATA_EDITOR_ATTR_ALBUM: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "\xA9""alb", value); + case METADATA_EDITOR_ATTR_GENRE: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "\xA9""gen", value); + case METADATA_EDITOR_ATTR_AUTHOR: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "\xA9""wrt", value); + case METADATA_EDITOR_ATTR_COPYRIGHT: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "cprt", value); + case METADATA_EDITOR_ATTR_DATE: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "\xA9""day", value); + case METADATA_EDITOR_ATTR_DESCRIPTION: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "desc", value); + case METADATA_EDITOR_ATTR_COMMENT: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "\xA9""cmt", value); + case METADATA_EDITOR_ATTR_TRACK_NUM: return __MP4_getIntegerItem(dynamic_cast(metadata->file->tag()), "trkn", value); + case METADATA_EDITOR_ATTR_CONDUCTOR: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "cond", value); + case METADATA_EDITOR_ATTR_UNSYNCLYRICS: return __MP4_getStringItem(dynamic_cast(metadata->file->tag()), "\xA9""lyr", value); + case METADATA_EDITOR_ATTR_PICTURE_NUM: return __MP4_getNumberOfPictures(dynamic_cast(metadata->file->tag()), value); default: metadata_editor_error("Invalid attribute [%d]", attribute); return METADATA_EDITOR_ERROR_INVALID_PARAMETER; @@ -786,7 +752,7 @@ static int __metadata_editor_get_flac_metadata(metadata_editor_s *metadata, meta case METADATA_EDITOR_ATTR_TRACK_NUM: return __xiph_getFieldValue(xtag, "TRACKNUMBER", value); case METADATA_EDITOR_ATTR_CONDUCTOR: return __xiph_getFieldValue(xtag, "CONDUCTOR", value); case METADATA_EDITOR_ATTR_UNSYNCLYRICS: return __xiph_getFieldValue(xtag, "LYRICS", value); - case METADATA_EDITOR_ATTR_PICTURE_NUM: return __FLAC_getNumberOfPictures(metadata, value); + case METADATA_EDITOR_ATTR_PICTURE_NUM: return __FLAC_getNumberOfPictures(_file, value); default: metadata_editor_error("Invalid attribute [%d]", attribute); return METADATA_EDITOR_ERROR_INVALID_PARAMETER; @@ -973,18 +939,18 @@ static int __metadata_editor_set_mp4_metadata(metadata_editor_s *metadata, metad metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_set_parameter() [%d]", ret); switch (attribute) { // Check which one of frame type was given for processing - case METADATA_EDITOR_ATTR_ARTIST: return __MP4_updateStringItem(metadata, "\xA9""ART", value); - case METADATA_EDITOR_ATTR_TITLE: return __MP4_updateStringItem(metadata, "\xA9""nam", value); - case METADATA_EDITOR_ATTR_ALBUM: return __MP4_updateStringItem(metadata, "\xA9""alb", value); - case METADATA_EDITOR_ATTR_GENRE: return __MP4_updateStringItem(metadata, "\xA9""gen", value); - case METADATA_EDITOR_ATTR_AUTHOR: return __MP4_updateStringItem(metadata, "\xA9""wrt", value); - case METADATA_EDITOR_ATTR_COPYRIGHT: return __MP4_updateStringItem(metadata, "cprt", value); - case METADATA_EDITOR_ATTR_DATE: return __MP4_updateStringItem(metadata, "\xA9""day", value); - case METADATA_EDITOR_ATTR_DESCRIPTION: return __MP4_updateStringItem(metadata, "desc", value); - case METADATA_EDITOR_ATTR_COMMENT: return __MP4_updateStringItem(metadata, "\xA9""cmt", value); - case METADATA_EDITOR_ATTR_TRACK_NUM: return __MP4_updateIntegerItem(metadata, "trkn", value); - case METADATA_EDITOR_ATTR_CONDUCTOR: return __MP4_updateStringItem(metadata, "cond", value); - case METADATA_EDITOR_ATTR_UNSYNCLYRICS: return __MP4_updateStringItem(metadata, "\xA9""lyr", value); + case METADATA_EDITOR_ATTR_ARTIST: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "\xA9""ART", value); + case METADATA_EDITOR_ATTR_TITLE: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "\xA9""nam", value); + case METADATA_EDITOR_ATTR_ALBUM: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "\xA9""alb", value); + case METADATA_EDITOR_ATTR_GENRE: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "\xA9""gen", value); + case METADATA_EDITOR_ATTR_AUTHOR: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "\xA9""wrt", value); + case METADATA_EDITOR_ATTR_COPYRIGHT: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "cprt", value); + case METADATA_EDITOR_ATTR_DATE: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "\xA9""day", value); + case METADATA_EDITOR_ATTR_DESCRIPTION: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "desc", value); + case METADATA_EDITOR_ATTR_COMMENT: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "\xA9""cmt", value); + case METADATA_EDITOR_ATTR_TRACK_NUM: return __MP4_updateIntegerItem(dynamic_cast(metadata->file->tag()), "trkn", value); + case METADATA_EDITOR_ATTR_CONDUCTOR: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "cond", value); + case METADATA_EDITOR_ATTR_UNSYNCLYRICS: return __MP4_updateStringItem(dynamic_cast(metadata->file->tag()), "\xA9""lyr", value); default: metadata_editor_error("Invalid attribute [%d]", attribute); return METADATA_EDITOR_ERROR_INVALID_PARAMETER;