/* exported MM header files */
#include <mm_file.h>
-
-/* internal MM header files */
-#include <mm_attrs_private.h>
+#include <mm_attrs.h>
/* internal MM File headers */
#include "mm_file_debug.h"
/**
* 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__
}
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 &&
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;
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);
}
}
}
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;
static int
-_get_tag_info(mmf_attrs_t *attrs, MMFileSourceType *src)
+_get_tag_info(MMHandleType attrs, MMFileSourceType *src)
{
MMFileFormatContext *formatContext = NULL;
int ret = 0;
debug_fenter(RELEASE);
- if ((mmf_attrs_t *)tag_attrs == NULL) {
+ if (tag_attrs == NULL) {
debug_error(DEBUG, "invalid handle");
return FILEINFO_ERROR_INVALID_ARGUMENT;
}
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);
}
/*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;
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__
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;
}
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);
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;
}
/*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;
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:
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;
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;
/*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__
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;
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;
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__
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;
}
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);
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;
}
/*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;
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__
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;
}
/*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;
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__
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;
}
/*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;
*is_uhqa = FALSE;
}
- mmf_attrs_free((MMHandleType)attrs);
+ mm_attrs_free(attrs);
attrs = NULL;
END: