Add 360 content feature 40/71540/1 accepted/tizen/common/20160531.141853 accepted/tizen/ivi/20160602.022051 accepted/tizen/mobile/20160602.022127 accepted/tizen/tv/20160602.021910 accepted/tizen/wearable/20160602.022022 submit/tizen/20160530.013417
authorMinje Ahn <minje.ahn@samsung.com>
Thu, 26 May 2016 00:47:46 +0000 (09:47 +0900)
committerMinje Ahn <minje.ahn@samsung.com>
Thu, 26 May 2016 00:47:46 +0000 (09:47 +0900)
Change-Id: I72e454a272b72c22927869a3997d15b8fe1d4958
Signed-off-by: Minje Ahn <minje.ahn@samsung.com>
include/metadata_extractor_type.h
packaging/capi-media-metadata-extractor.spec
src/metadata_extractor.c
test/metadata_extractor_test.c

index 89b16c6..7ae6caf 100755 (executable)
@@ -89,6 +89,7 @@ typedef enum {
        METADATA_ROTATE,                                        /**< Rotate(Orientation) Information */
        METADATA_VIDEO_CODEC,                   /**< Video Codec (Since 3.0) */
        METADATA_AUDIO_CODEC,                   /**< Audio Codec (Since 3.0) */
+       METADATA_360,                                           /**< 360 content Information (Since 3.0) */
 } metadata_extractor_attr_e;
 
 /**
index ee764e4..ea6a33f 100755 (executable)
@@ -1,6 +1,6 @@
 Name:       capi-media-metadata-extractor
 Summary:    A media metadata extractor library in Tizen Native API
-Version: 0.1.2
+Version: 0.1.3
 Release:    1
 Group:      Multimedia/API
 License:    Apache-2.0
index 80213ce..d62481c 100755 (executable)
@@ -73,6 +73,7 @@ static int __metadata_extractor_get_synclyrics_pair_num(metadata_extractor_s *me
 static int __metadata_extractor_destroy_handle(metadata_extractor_s *metadata);
 static int __metadata_extractor_get_audio_codec(metadata_extractor_s *metadata, char **audio_codec);
 static int __metadata_extractor_get_video_codec(metadata_extractor_s *metadata, char **video_codec);
+static int __metadata_extractor_get_is_360(metadata_extractor_s *metadata, int *is_360);
 
 static int __metadata_extractor_check_and_extract_meta(metadata_extractor_s *metadata, metadata_extractor_type_e metadata_type)
 {
@@ -1083,6 +1084,30 @@ static int __metadata_extractor_get_video_codec(metadata_extractor_s *metadata,
        return ret;
 }
 
+
+static int __metadata_extractor_get_is_360(metadata_extractor_s *metadata, int *is_360)
+{
+       int ret = METADATA_EXTRACTOR_ERROR_NONE;
+       char *err_attr_name = NULL;
+       int _is_360 = 0;
+
+       if ((!metadata) ||(!metadata->attr_h)) {
+               metadata_extractor_error("INVALID_PARAMETER(0x%08x)", METADATA_EXTRACTOR_ERROR_INVALID_PARAMETER);
+               return METADATA_EXTRACTOR_ERROR_INVALID_PARAMETER;
+       }
+
+       ret = mm_file_get_attrs(metadata->attr_h, &err_attr_name, MM_FILE_TAG_360, &_is_360, NULL);
+       if (ret != FILEINFO_ERROR_NONE) {
+               metadata_extractor_error("METADATA_EXTRACTOR_ERROR_OPERATION_FAILED(0x%08x)", ret);
+               SAFE_FREE(err_attr_name);
+               return METADATA_EXTRACTOR_ERROR_OPERATION_FAILED;
+       }
+
+       *is_360 = _is_360;
+
+       return ret;
+}
+
 static int __metadata_extractor_destroy_handle(metadata_extractor_s *metadata)
 {
        int ret = METADATA_EXTRACTOR_ERROR_NONE;
@@ -1461,6 +1486,12 @@ int metadata_extractor_get_metadata(metadata_extractor_h metadata, metadata_extr
                ret = __metadata_extractor_get_rotate(_metadata, &s_value);
                break;
        }
+       case METADATA_360: {
+               is_string = 0;
+               ret = __metadata_extractor_get_is_360(_metadata, &i_value);
+               metadata_extractor_debug("tomoryu test call is 360");
+               break;
+       }
        default:
                break;
        }
index 42a9fba..854d446 100755 (executable)
@@ -97,6 +97,7 @@ static bool __capi_metadata_extractor(metadata_extractor_h metadata)
        char *rotate = NULL;
        char *video_codec = NULL;
        char *audio_codec = NULL;
+       char *is_360 = NULL;
 
        int idx = 0;
        unsigned long time_info = 0;
@@ -181,6 +182,8 @@ static bool __capi_metadata_extractor(metadata_extractor_h metadata)
        printf("audio_codec = [%s]\n", audio_codec);
        metadata_extractor_get_metadata(metadata, METADATA_VIDEO_CODEC, &video_codec);
        printf("video_codec = [%s]\n", video_codec);
+       metadata_extractor_get_metadata(metadata, METADATA_360, &is_360);
+       printf("is_360 = [%s]\n", is_360);
 
        metadata_extractor_get_metadata(metadata, METADATA_SYNCLYRICS_NUM, &synclyrics_num);
        if (synclyrics_num) {