From 0ce66207d8eab0c3c6721a7a4607627883458578 Mon Sep 17 00:00:00 2001 From: Sangchul Lee Date: Mon, 5 Nov 2018 16:20:30 +0900 Subject: [PATCH] Apply new attribute API of libmm-common - Remove dependency of mm_attrs_private.h. - Use new API set in mm_attrs.h instead of those. Change-Id: Icd720cc02b677b881e4266c8a4a0cd79f72ab5ce Signed-off-by: Sangchul Lee --- mm_file.c | 397 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 197 insertions(+), 200 deletions(-) diff --git a/mm_file.c b/mm_file.c index af6e61e..c501ef5 100755 --- a/mm_file.c +++ b/mm_file.c @@ -27,9 +27,7 @@ /* exported MM header files */ #include - -/* internal MM header files */ -#include +#include /* internal MM File headers */ #include "mm_file_debug.h" @@ -96,85 +94,85 @@ typedef struct { /** * global values. */ -static mmf_attrs_construct_info_t g_tag_attrs[] = { - {(char *)"tag-artist", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-title", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-album", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-album-artist", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-genre", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-author", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-copyright", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-date", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-description", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-comment", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-artwork", MMF_VALUE_TYPE_DATA, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-artwork-size", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-artwork-mime", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-track-num", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-classification", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-rating", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, +static MMAttrsConstructInfo g_tag_attrs[] = { + {(char *)"tag-artist", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-title", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-album", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-album-artist", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-genre", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-author", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-copyright", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-date", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-description", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-comment", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-artwork", MM_ATTRS_TYPE_DATA, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-artwork-size", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-artwork-mime", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-track-num", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-classification", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-rating", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, {(char *)"tag-longitude", MM_ATTRS_TYPE_DOUBLE, MM_ATTRS_FLAG_RW, (void *)0}, {(char *)"tag-latitude", MM_ATTRS_TYPE_DOUBLE, MM_ATTRS_FLAG_RW, (void *)0}, {(char *)"tag-altitude", MM_ATTRS_TYPE_DOUBLE, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-conductor", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-unsynclyrics", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-synclyrics-num", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-synclyrics", MMF_VALUE_TYPE_DATA, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-recdate", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-rotate", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-cdis", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-smta", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-spherical", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-stitched", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-stitching-software", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-projection-type", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-stereo-mode", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"tag-source-count", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-init-view-heading", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-init-view-pitch", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-init-view-roll", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-timestamp", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-full-pano-width", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-full-pano-height", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-cropped-area-image-width", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-cropped-area-image-height", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-cropped-area-left", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-cropped-area-top", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-ambisonic-type", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-ambisonic-format", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"tag-ambisonic-order", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"stereo-mode-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"metadata-source-v2", MMF_VALUE_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"proj-type-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"pose-yaw-degrees-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"pose-pitch-degrees-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"pose-roll-degrees-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"cbmp-layout-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"cbmp-padding-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"equi-projection-bounds-top-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"equi-projection-bounds-bottom-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"equi-projection-bounds-left-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"equi-projection-bounds-right-v2", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-conductor", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-unsynclyrics", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-synclyrics-num", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-synclyrics", MM_ATTRS_TYPE_DATA, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-recdate", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-rotate", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-cdis", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-smta", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-spherical", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-stitched", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-stitching-software", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-projection-type", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-stereo-mode", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"tag-source-count", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-init-view-heading", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-init-view-pitch", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-init-view-roll", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-timestamp", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-full-pano-width", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-full-pano-height", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-cropped-area-image-width", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-cropped-area-image-height", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-cropped-area-left", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-cropped-area-top", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-ambisonic-type", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-ambisonic-format", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"tag-ambisonic-order", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"stereo-mode-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"metadata-source-v2", MM_ATTRS_TYPE_STRING, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"proj-type-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"pose-yaw-degrees-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"pose-pitch-degrees-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"pose-roll-degrees-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"cbmp-layout-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"cbmp-padding-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"equi-projection-bounds-top-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"equi-projection-bounds-bottom-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"equi-projection-bounds-left-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"equi-projection-bounds-right-v2", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, }; -static mmf_attrs_construct_info_t g_content_attrs[] = { - {(char *)"content-duration", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-video-codec", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-video-format", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-video-bitrate", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-video-fps", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-video-width", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-video-height", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-video-thumbnail", MMF_VALUE_TYPE_DATA, MM_ATTRS_FLAG_RW, (void *)NULL}, - {(char *)"content-video-track-index", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-video-track-count", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-audio-codec", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-audio-bitrate", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-audio-channels", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-audio-samplerate", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-audio-track-index", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-audio-track-count", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, - {(char *)"content-audio-bitpersample", MMF_VALUE_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, +static MMAttrsConstructInfo g_content_attrs[] = { + {(char *)"content-duration", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-video-codec", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-video-format", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-video-bitrate", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-video-fps", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-video-width", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-video-height", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-video-thumbnail", MM_ATTRS_TYPE_DATA, MM_ATTRS_FLAG_RW, (void *)NULL}, + {(char *)"content-video-track-index", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-video-track-count", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-audio-codec", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-audio-bitrate", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-audio-channels", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-audio-samplerate", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-audio-track-index", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-audio-track-count", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, + {(char *)"content-audio-bitpersample", MM_ATTRS_TYPE_INT, MM_ATTRS_FLAG_RW, (void *)0}, }; #ifdef __MMFILE_DYN_LOADING__ @@ -306,91 +304,90 @@ _is_file_exist(const char *filename) } static int -_info_set_attr_media(mmf_attrs_t *attrs, MMFileFormatContext *formatContext) +_info_set_attr_media(MMHandleType attrs, MMFileFormatContext *formatContext) { int ret = 0; - MMHandleType hattrs = CAST_MM_HANDLE(attrs); if (formatContext->commandType == MM_FILE_TAG) { - if (formatContext->title) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_TITLE, formatContext->title); - if (formatContext->artist) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_ARTIST, formatContext->artist); - if (formatContext->author) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_AUTHOR, formatContext->author); + if (formatContext->title) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_TITLE, formatContext->title); + if (formatContext->artist) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_ARTIST, formatContext->artist); + if (formatContext->author) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_AUTHOR, formatContext->author); if (formatContext->composer && formatContext->author == NULL) - mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_AUTHOR, formatContext->composer); - if (formatContext->album) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_ALBUM, formatContext->album); - if (formatContext->album_artist) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_ALBUM_ARTIST, formatContext->album_artist); - if (formatContext->copyright) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_COPYRIGHT, formatContext->copyright); - if (formatContext->description) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_DESCRIPTION, formatContext->description); - if (formatContext->comment) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_COMMENT, formatContext->comment); - if (formatContext->genre) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_GENRE, formatContext->genre); - if (formatContext->classification) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_CLASSIFICATION, formatContext->classification); - if (formatContext->year) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_DATE, formatContext->year); - if (formatContext->tagTrackNum) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_TRACK_NUM, formatContext->tagTrackNum); - if (formatContext->rating) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_RATING, formatContext->rating); - if (formatContext->conductor) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_CONDUCTOR, formatContext->conductor); - if (formatContext->recDate) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_RECDATE, formatContext->recDate); - if (formatContext->rotate) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_ROTATE, formatContext->rotate); - mm_attrs_set_double_by_name(hattrs, MM_FILE_TAG_LONGITUDE, formatContext->longitude); - mm_attrs_set_double_by_name(hattrs, MM_FILE_TAG_LATIDUE, formatContext->latitude); - mm_attrs_set_double_by_name(hattrs, MM_FILE_TAG_ALTIDUE, formatContext->altitude); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SYNCLYRICS_NUM, formatContext->syncLyricsNum); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_CDIS, formatContext->cdis); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SMTA, formatContext->smta); - - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL, formatContext->isSpherical); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_STITCHED, formatContext->isStitched); - if (formatContext->stitchingSoftware) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_SPHERICAL_STITCHING_SOFTWARE, formatContext->stitchingSoftware); - if (formatContext->projectionType) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_SPHERICAL_PROJECTION_TYPE, formatContext->projectionType); - if (formatContext->stereoMode) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_SPHERICAL_STEREO_MODE, formatContext->stereoMode); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_SOURCE_COUNT, formatContext->sourceCount); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_INIT_VIEW_HEADING, formatContext->initViewHeading); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_INIT_VIEW_PITCH, formatContext->initViewPitch); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_INIT_VIEW_ROLL, formatContext->initViewRoll); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_TIMESTAMP, formatContext->timestamp); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_FULL_PANO_WIDTH, formatContext->fullPanoWidth); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_FULL_PANO_HEIGHT, formatContext->fullPanoHeight); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_CROPPED_AREA_IMAGE_WIDTH, formatContext->croppedAreaImageWidth); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_CROPPED_AREA_IMAGE_HEIGHT, formatContext->croppedAreaImageHeight); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_CROPPED_AREA_LEFT, formatContext->croppedAreaLeft); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_CROPPED_AREA_TOP, formatContext->croppedAreaTop); - - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_AMBISONIC_TYPE, formatContext->ambisonicType); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_AMBISONIC_FORMAT, formatContext->ambisonicFormat); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_AMBISONIC_ORDER, formatContext->ambisonicOrder); - - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_STEREO_MODE, formatContext->stereoModeV2); - if (formatContext->metadataSourceV2) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_METADATA_SOURCE, formatContext->metadataSourceV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_PROJ_TYPE, formatContext->projTypeV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_POSE_YAW, formatContext->poseYawV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_POSE_PITCH, formatContext->posePitchV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_POSE_ROLL, formatContext->poseRollV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_CBMP_LAYOUT, formatContext->cbmpLayoutV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_CBMP_PADDING, formatContext->cbmpPaddingV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_EQUI_BOUNDS_TOP, formatContext->equiBoundsTopV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_EQUI_BOUNDS_BOTTOM, formatContext->equiBoundsBottomV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_EQUI_BOUNDS_LEFT, formatContext->equiBoundsLeftV2); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_SPHERICAL_V2_EQUI_BOUNDS_RIGHT, formatContext->equiBoundsRightV2); + mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_AUTHOR, formatContext->composer); + if (formatContext->album) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_ALBUM, formatContext->album); + if (formatContext->album_artist) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_ALBUM_ARTIST, formatContext->album_artist); + if (formatContext->copyright) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_COPYRIGHT, formatContext->copyright); + if (formatContext->description) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_DESCRIPTION, formatContext->description); + if (formatContext->comment) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_COMMENT, formatContext->comment); + if (formatContext->genre) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_GENRE, formatContext->genre); + if (formatContext->classification) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_CLASSIFICATION, formatContext->classification); + if (formatContext->year) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_DATE, formatContext->year); + if (formatContext->tagTrackNum) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_TRACK_NUM, formatContext->tagTrackNum); + if (formatContext->rating) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_RATING, formatContext->rating); + if (formatContext->conductor) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_CONDUCTOR, formatContext->conductor); + if (formatContext->recDate) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_RECDATE, formatContext->recDate); + if (formatContext->rotate) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_ROTATE, formatContext->rotate); + mm_attrs_set_double_by_name(attrs, MM_FILE_TAG_LONGITUDE, formatContext->longitude); + mm_attrs_set_double_by_name(attrs, MM_FILE_TAG_LATIDUE, formatContext->latitude); + mm_attrs_set_double_by_name(attrs, MM_FILE_TAG_ALTIDUE, formatContext->altitude); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SYNCLYRICS_NUM, formatContext->syncLyricsNum); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_CDIS, formatContext->cdis); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SMTA, formatContext->smta); + + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL, formatContext->isSpherical); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_STITCHED, formatContext->isStitched); + if (formatContext->stitchingSoftware) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_SPHERICAL_STITCHING_SOFTWARE, formatContext->stitchingSoftware); + if (formatContext->projectionType) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_SPHERICAL_PROJECTION_TYPE, formatContext->projectionType); + if (formatContext->stereoMode) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_SPHERICAL_STEREO_MODE, formatContext->stereoMode); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_SOURCE_COUNT, formatContext->sourceCount); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_INIT_VIEW_HEADING, formatContext->initViewHeading); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_INIT_VIEW_PITCH, formatContext->initViewPitch); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_INIT_VIEW_ROLL, formatContext->initViewRoll); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_TIMESTAMP, formatContext->timestamp); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_FULL_PANO_WIDTH, formatContext->fullPanoWidth); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_FULL_PANO_HEIGHT, formatContext->fullPanoHeight); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_CROPPED_AREA_IMAGE_WIDTH, formatContext->croppedAreaImageWidth); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_CROPPED_AREA_IMAGE_HEIGHT, formatContext->croppedAreaImageHeight); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_CROPPED_AREA_LEFT, formatContext->croppedAreaLeft); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_CROPPED_AREA_TOP, formatContext->croppedAreaTop); + + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_AMBISONIC_TYPE, formatContext->ambisonicType); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_AMBISONIC_FORMAT, formatContext->ambisonicFormat); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_AMBISONIC_ORDER, formatContext->ambisonicOrder); + + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_STEREO_MODE, formatContext->stereoModeV2); + if (formatContext->metadataSourceV2) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_METADATA_SOURCE, formatContext->metadataSourceV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_PROJ_TYPE, formatContext->projTypeV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_POSE_YAW, formatContext->poseYawV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_POSE_PITCH, formatContext->posePitchV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_POSE_ROLL, formatContext->poseRollV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_CBMP_LAYOUT, formatContext->cbmpLayoutV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_CBMP_PADDING, formatContext->cbmpPaddingV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_EQUI_BOUNDS_TOP, formatContext->equiBoundsTopV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_EQUI_BOUNDS_BOTTOM, formatContext->equiBoundsBottomV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_EQUI_BOUNDS_LEFT, formatContext->equiBoundsLeftV2); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_SPHERICAL_V2_EQUI_BOUNDS_RIGHT, formatContext->equiBoundsRightV2); if ((formatContext->syncLyricsNum > 0) && (formatContext->syncLyrics)) - mm_attrs_set_data_by_name(hattrs, MM_FILE_TAG_SYNCLYRICS, formatContext->syncLyrics, formatContext->syncLyricsNum); + mm_attrs_set_data_by_name(attrs, MM_FILE_TAG_SYNCLYRICS, formatContext->syncLyrics, formatContext->syncLyricsNum); - if (formatContext->unsyncLyrics) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_UNSYNCLYRICS, formatContext->unsyncLyrics); + if (formatContext->unsyncLyrics) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_UNSYNCLYRICS, formatContext->unsyncLyrics); if (formatContext->artwork && formatContext->artworkSize > 0) { void *artworkCopy = NULL; artworkCopy = mmfile_malloc((formatContext->artworkSize)); if (NULL != artworkCopy) { memcpy(artworkCopy, formatContext->artwork, formatContext->artworkSize); - mm_attrs_set_data_by_name(hattrs, MM_FILE_TAG_ARTWORK, artworkCopy, formatContext->artworkSize); - mm_attrs_set_int_by_name(hattrs, MM_FILE_TAG_ARTWORK_SIZE, formatContext->artworkSize); - if (formatContext->artworkMime) mm_attrs_set_string_by_name(hattrs, MM_FILE_TAG_ARTWORK_MIME, formatContext->artworkMime); + mm_attrs_set_data_by_name(attrs, MM_FILE_TAG_ARTWORK, artworkCopy, formatContext->artworkSize); + mm_attrs_set_int_by_name(attrs, MM_FILE_TAG_ARTWORK_SIZE, formatContext->artworkSize); + if (formatContext->artworkMime) mm_attrs_set_string_by_name(attrs, MM_FILE_TAG_ARTWORK_MIME, formatContext->artworkMime); } } } else if (formatContext->commandType == MM_FILE_CONTENTS) { /*get duration*/ - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_DURATION, formatContext->duration); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_AUDIO_TRACK_COUNT, formatContext->audioTotalTrackNum); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_TRACK_COUNT, formatContext->videoTotalTrackNum); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_DURATION, formatContext->duration); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_AUDIO_TRACK_COUNT, formatContext->audioTotalTrackNum); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_TRACK_COUNT, formatContext->videoTotalTrackNum); if (formatContext->videoTotalTrackNum > 0 && formatContext->nbStreams > 0 && @@ -398,12 +395,12 @@ _info_set_attr_media(mmf_attrs_t *attrs, MMFileFormatContext *formatContext) MMFileFormatStream *videoStream = formatContext->streams[MMFILE_VIDEO_STREAM]; - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_FORMAT, formatContext->formatType); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_CODEC, videoStream->codecId); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_BITRATE, videoStream->bitRate); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_FPS, videoStream->framePerSec); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_WIDTH, videoStream->width); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_HEIGHT, videoStream->height); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_FORMAT, formatContext->formatType); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_CODEC, videoStream->codecId); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_BITRATE, videoStream->bitRate); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_FPS, videoStream->framePerSec); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_WIDTH, videoStream->width); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_HEIGHT, videoStream->height); if (formatContext->thumbNail && formatContext->thumbNail->frameData) { void *thumbNailCopy = NULL; @@ -411,9 +408,9 @@ _info_set_attr_media(mmf_attrs_t *attrs, MMFileFormatContext *formatContext) if (NULL != thumbNailCopy) { memcpy(thumbNailCopy, formatContext->thumbNail->frameData, formatContext->thumbNail->frameSize); - mm_attrs_set_data_by_name(hattrs, MM_FILE_CONTENT_VIDEO_THUMBNAIL, thumbNailCopy, formatContext->thumbNail->frameSize); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_WIDTH, formatContext->thumbNail->frameWidth); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_VIDEO_HEIGHT, formatContext->thumbNail->frameHeight); + mm_attrs_set_data_by_name(attrs, MM_FILE_CONTENT_VIDEO_THUMBNAIL, thumbNailCopy, formatContext->thumbNail->frameSize); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_WIDTH, formatContext->thumbNail->frameWidth); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_VIDEO_HEIGHT, formatContext->thumbNail->frameHeight); } } } @@ -424,24 +421,24 @@ _info_set_attr_media(mmf_attrs_t *attrs, MMFileFormatContext *formatContext) MMFileFormatStream *audioStream = formatContext->streams[MMFILE_AUDIO_STREAM]; - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_AUDIO_CODEC, audioStream->codecId); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_AUDIO_CHANNELS, audioStream->nbChannel); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_AUDIO_BITRATE, audioStream->bitRate); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_AUDIO_SAMPLERATE, audioStream->samplePerSec); - mm_attrs_set_int_by_name(hattrs, MM_FILE_CONTENT_AUDIO_BITPERSAMPLE, audioStream->bitPerSample); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_AUDIO_CODEC, audioStream->codecId); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_AUDIO_CHANNELS, audioStream->nbChannel); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_AUDIO_BITRATE, audioStream->bitRate); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_AUDIO_SAMPLERATE, audioStream->samplePerSec); + mm_attrs_set_int_by_name(attrs, MM_FILE_CONTENT_AUDIO_BITPERSAMPLE, audioStream->bitPerSample); } } else { ret = -1; } /*commit attrs*/ - mmf_attrs_commit((MMHandleType)hattrs); + mm_attrs_commit_all(attrs); return ret; } static int -_get_contents_info(mmf_attrs_t *attrs, MMFileSourceType *src, MMFILE_PARSE_INFO *parse) +_get_contents_info(MMHandleType attrs, MMFileSourceType *src, MMFILE_PARSE_INFO *parse) { MMFileFormatContext *formatContext = NULL; MMFileCodecContext *codecContext = NULL; @@ -691,7 +688,7 @@ exception: static int -_get_tag_info(mmf_attrs_t *attrs, MMFileSourceType *src) +_get_tag_info(MMHandleType attrs, MMFileSourceType *src) { MMFileFormatContext *formatContext = NULL; int ret = 0; @@ -770,7 +767,7 @@ int mm_file_get_synclyrics_info(MMHandleType tag_attrs, int index, unsigned long debug_fenter(RELEASE); - if ((mmf_attrs_t *)tag_attrs == NULL) { + if (tag_attrs == NULL) { debug_error(DEBUG, "invalid handle"); return FILEINFO_ERROR_INVALID_ARGUMENT; } @@ -805,7 +802,7 @@ int mm_file_get_synclyrics_info(MMHandleType tag_attrs, int index, unsigned long int mm_file_create_tag_attrs(MMHandleType *tag_attrs, const char *filename) { int ret = FILEINFO_ERROR_NONE; - mmf_attrs_t *attrs = NULL; + MMHandleType attrs = NULL; MMFileSourceType src; debug_fenter(RELEASE); @@ -845,8 +842,8 @@ int mm_file_create_tag_attrs(MMHandleType *tag_attrs, const char *filename) } /*set attrs*/ - attrs = (mmf_attrs_t *) mmf_attrs_new_from_data("tag", g_tag_attrs, ARRAY_SIZE(g_tag_attrs), NULL, NULL); - if (!attrs) { + ret = mm_attrs_new(g_tag_attrs, ARRAY_SIZE(g_tag_attrs), "tag", NULL, NULL, &attrs); + if (ret) { debug_error(DEBUG, "attribute internal error.\n"); ret = FILEINFO_ERROR_FILE_INTERNAL; goto END; @@ -854,12 +851,12 @@ int mm_file_create_tag_attrs(MMHandleType *tag_attrs, const char *filename) ret = _get_tag_info(attrs, &src); if (ret != FILEINFO_ERROR_NONE) { - mmf_attrs_free((MMHandleType)attrs); + mm_attrs_free(attrs); attrs = NULL; debug_error(DEBUG, "failed to get tag: %s\n", filename); } - *tag_attrs = (MMHandleType)attrs; + *tag_attrs = attrs; END: #ifdef __MMFILE_DYN_LOADING__ @@ -881,7 +878,7 @@ int mm_file_destroy_tag_attrs(MMHandleType tag_attrs) debug_fenter(RELEASE); - if ((mmf_attrs_t *)tag_attrs == NULL) { + if (tag_attrs == NULL) { debug_error(DEBUG, "invalid handle.\n"); return FILEINFO_ERROR_INVALID_ARGUMENT; } @@ -891,7 +888,7 @@ int mm_file_destroy_tag_attrs(MMHandleType tag_attrs) ret = mm_attrs_get_data_by_name(tag_attrs, MM_FILE_TAG_SYNCLYRICS, (void **)&synclyrics_list); mm_file_free_synclyrics_list(synclyrics_list); - mmf_attrs_free(tag_attrs); + mm_attrs_free(tag_attrs); debug_fleave(RELEASE); @@ -901,7 +898,7 @@ int mm_file_destroy_tag_attrs(MMHandleType tag_attrs) EXPORT_API int mm_file_create_content_attrs(MMHandleType *contents_attrs, const char *filename) { - mmf_attrs_t *attrs = NULL; + MMHandleType attrs = NULL; MMFileSourceType src = {0, }; MMFILE_PARSE_INFO parse = {0, }; int ret = 0; @@ -953,8 +950,8 @@ int mm_file_create_content_attrs(MMHandleType *contents_attrs, const char *filen } /*set attrs*/ - attrs = (mmf_attrs_t *) mmf_attrs_new_from_data("content", g_content_attrs, ARRAY_SIZE(g_content_attrs), NULL, NULL); - if (!attrs) { + ret = mm_attrs_new(g_content_attrs, ARRAY_SIZE(g_content_attrs), "content", NULL, NULL, &attrs); + if (ret) { debug_error(DEBUG, "attribute internal error.\n"); ret = FILEINFO_ERROR_FILE_INTERNAL; goto END; @@ -964,12 +961,12 @@ int mm_file_create_content_attrs(MMHandleType *contents_attrs, const char *filen parse.type = MM_FILE_PARSE_TYPE_ALL; ret = _get_contents_info(attrs, &src, &parse); if (ret != FILEINFO_ERROR_NONE) { - mmf_attrs_free((MMHandleType)attrs); + mm_attrs_free(attrs); attrs = NULL; debug_error(DEBUG, "failed to get contents: %s\n", filename); } - *contents_attrs = (MMHandleType) attrs; + *contents_attrs = attrs; END: @@ -996,7 +993,7 @@ END: EXPORT_API int mm_file_create_tag_attrs_from_memory(MMHandleType *tag_attrs, const void *data, unsigned int size, int format) { - mmf_attrs_t *attrs = NULL; + MMHandleType attrs = NULL; MMFileSourceType src; /*MMFILE_PARSE_INFO parse = {0, };*/ int ret = 0; @@ -1022,8 +1019,8 @@ int mm_file_create_tag_attrs_from_memory(MMHandleType *tag_attrs, const void *da MM_FILE_SET_MEDIA_MEM_SRC(src, data, size, format); /*set attrs*/ - attrs = (mmf_attrs_t *) mmf_attrs_new_from_data("tag", g_tag_attrs, ARRAY_SIZE(g_tag_attrs), NULL, NULL); - if (!attrs) { + ret = mm_attrs_new(g_tag_attrs, ARRAY_SIZE(g_tag_attrs), "tag", NULL, NULL, &attrs); + if (ret) { debug_error(DEBUG, "attribute internal error.\n"); ret = FILEINFO_ERROR_FILE_INTERNAL; goto END; @@ -1032,12 +1029,12 @@ int mm_file_create_tag_attrs_from_memory(MMHandleType *tag_attrs, const void *da /*parse.type = MM_FILE_PARSE_TYPE_ALL;*/ ret = _get_tag_info(attrs, &src); if (ret != FILEINFO_ERROR_NONE) { - mmf_attrs_free((MMHandleType)attrs); + mm_attrs_free(attrs); attrs = NULL; debug_error(DEBUG, "failed to get tag"); } - *tag_attrs = (MMHandleType)attrs; + *tag_attrs = attrs; END: #ifdef __MMFILE_DYN_LOADING__ @@ -1053,7 +1050,7 @@ END: EXPORT_API int mm_file_create_content_attrs_from_memory(MMHandleType *contents_attrs, const void *data, unsigned int size, int format) { - mmf_attrs_t *attrs = NULL; + MMHandleType attrs = NULL; MMFileSourceType src; MMFILE_PARSE_INFO parse = {0, }; int ret = 0; @@ -1079,8 +1076,8 @@ int mm_file_create_content_attrs_from_memory(MMHandleType *contents_attrs, const MM_FILE_SET_MEDIA_MEM_SRC(src, data, size, format); /*set attrs*/ - attrs = (mmf_attrs_t *) mmf_attrs_new_from_data("content", g_content_attrs, ARRAY_SIZE(g_content_attrs), NULL, NULL); - if (!attrs) { + ret = mm_attrs_new(g_content_attrs, ARRAY_SIZE(g_content_attrs), "content", NULL, NULL, &attrs); + if (ret) { debug_error(DEBUG, "attribute internal error.\n"); ret = FILEINFO_ERROR_FILE_INTERNAL; goto END; @@ -1089,12 +1086,12 @@ int mm_file_create_content_attrs_from_memory(MMHandleType *contents_attrs, const parse.type = MM_FILE_PARSE_TYPE_ALL; ret = _get_contents_info(attrs, &src, &parse); if (ret != FILEINFO_ERROR_NONE) { - mmf_attrs_free((MMHandleType)attrs); + mm_attrs_free(attrs); attrs = NULL; debug_error(DEBUG, "failed to get contents"); } - *contents_attrs = (MMHandleType)attrs; + *contents_attrs = attrs; END: #ifdef __MMFILE_DYN_LOADING__ @@ -1115,7 +1112,7 @@ int mm_file_destroy_content_attrs(MMHandleType contents_attrs) debug_fenter(RELEASE); - if ((mmf_attrs_t *)contents_attrs == NULL) { + if (contents_attrs == NULL) { debug_error(DEBUG, "invalid handle.\n"); return FILEINFO_ERROR_INVALID_ARGUMENT; } @@ -1123,7 +1120,7 @@ int mm_file_destroy_content_attrs(MMHandleType contents_attrs) ret = mm_attrs_get_data_by_name(contents_attrs, MM_FILE_CONTENT_VIDEO_THUMBNAIL, &thumbnail); mmfile_free(thumbnail); - mmf_attrs_free(contents_attrs); + mm_attrs_free(contents_attrs); debug_fleave(RELEASE); @@ -1194,7 +1191,7 @@ END: EXPORT_API int mm_file_create_content_attrs_simple(MMHandleType *contents_attrs, const char *filename) { - mmf_attrs_t *attrs = NULL; + MMHandleType attrs = NULL; MMFileSourceType src = {0, }; MMFILE_PARSE_INFO parse = {0, }; int ret = 0; @@ -1230,8 +1227,8 @@ int mm_file_create_content_attrs_simple(MMHandleType *contents_attrs, const char } /*set attrs*/ - attrs = (mmf_attrs_t *) mmf_attrs_new_from_data("content", g_content_attrs, ARRAY_SIZE(g_content_attrs), NULL, NULL); - if (!attrs) { + ret = mm_attrs_new(g_content_attrs, ARRAY_SIZE(g_content_attrs), "content", NULL, NULL, &attrs); + if (ret) { debug_error(DEBUG, "attribute internal error.\n"); ret = FILEINFO_ERROR_FILE_INTERNAL; goto END; @@ -1240,12 +1237,12 @@ int mm_file_create_content_attrs_simple(MMHandleType *contents_attrs, const char parse.type = MM_FILE_PARSE_TYPE_NORMAL; ret = _get_contents_info(attrs, &src, &parse); if (ret != FILEINFO_ERROR_NONE) { - mmf_attrs_free((MMHandleType)attrs); + mm_attrs_free(attrs); attrs = NULL; debug_error(DEBUG, "failed to get contents: %s\n", filename); } - *contents_attrs = (MMHandleType) attrs; + *contents_attrs = attrs; END: #ifdef __MMFILE_DYN_LOADING__ @@ -1260,7 +1257,7 @@ END: EXPORT_API int mm_file_create_content_attrs_safe(MMHandleType *contents_attrs, const char *filename) { - mmf_attrs_t *attrs = NULL; + MMHandleType attrs = NULL; MMFileSourceType src = {0, }; MMFILE_PARSE_INFO parse = {0, }; int ret = 0; @@ -1296,8 +1293,8 @@ int mm_file_create_content_attrs_safe(MMHandleType *contents_attrs, const char * } /*set attrs*/ - attrs = (mmf_attrs_t *) mmf_attrs_new_from_data("content", g_content_attrs, ARRAY_SIZE(g_content_attrs), NULL, NULL); - if (!attrs) { + ret = mm_attrs_new(g_content_attrs, ARRAY_SIZE(g_content_attrs), "content", NULL, NULL, &attrs); + if (ret) { debug_error(DEBUG, "attribute internal error.\n"); ret = FILEINFO_ERROR_FILE_INTERNAL; goto END; @@ -1306,12 +1303,12 @@ int mm_file_create_content_attrs_safe(MMHandleType *contents_attrs, const char * parse.type = MM_FILE_PARSE_TYPE_SAFE; ret = _get_contents_info(attrs, &src, &parse); if (ret != FILEINFO_ERROR_NONE) { - mmf_attrs_free((MMHandleType)attrs); + mm_attrs_free(attrs); attrs = NULL; debug_error(DEBUG, "failed to get contents: %s\n", filename); } - *contents_attrs = (MMHandleType) attrs; + *contents_attrs = attrs; END: #ifdef __MMFILE_DYN_LOADING__ @@ -1419,7 +1416,7 @@ exception: EXPORT_API int mm_file_check_uhqa(const char *filename, bool *is_uhqa) { - mmf_attrs_t *attrs = NULL; + MMHandleType attrs = NULL; MMFileSourceType src = {0, }; MMFILE_PARSE_INFO parse = {0, }; int ret = 0; @@ -1453,8 +1450,8 @@ int mm_file_check_uhqa(const char *filename, bool *is_uhqa) } /*set attrs*/ - attrs = (mmf_attrs_t *) mmf_attrs_new_from_data("content", g_content_attrs, ARRAY_SIZE(g_content_attrs), NULL, NULL); - if (!attrs) { + ret = mm_attrs_new(g_content_attrs, ARRAY_SIZE(g_content_attrs), "content", NULL, NULL, &attrs); + if (ret) { debug_error(DEBUG, "attribute internal error.\n"); ret = FILEINFO_ERROR_FILE_INTERNAL; goto END; @@ -1469,7 +1466,7 @@ int mm_file_check_uhqa(const char *filename, bool *is_uhqa) *is_uhqa = FALSE; } - mmf_attrs_free((MMHandleType)attrs); + mm_attrs_free(attrs); attrs = NULL; END: -- 2.7.4