- * @brief Checks whether the media is protected via DRM.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[out] is_drm @c true if media is DRM media,
- * otherwise @c false if media is not DRM media
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- */
-int media_info_is_drm(media_info_h media, bool *is_drm);
-
-/**
- * @brief Checks whether the media is 360 content.
- * @since_tizen 3.0
- *
- * @param[in] media The media info handle
- * @param[out] is_360 @c true if media is 360 content,
- * otherwise @c false if media is not 360 content
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- */
-int media_info_is_360_content(media_info_h media, bool *is_360);
-
-int media_info_get_stitched_state(media_info_h media, int *type_360);
-int media_info_get_stitched_engine(media_info_h media, int *type_360);
-
-/**
- * @brief Gets the storage type of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[out] storage_type The storage type of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- */
-int media_info_get_storage_type(media_info_h media, media_content_storage_e *storage_type);
-
-/**
- * @brief Gets the content's played position parameter.
- * @details Function returns content's elapsed playback position parameter as period
- * starting from the beginning of the track.
- *
- * @param [in] media The handle to media info
- * @param [out] played_position The elapsed time of the content
- * @return 0 on success, otherwise a negative error value.
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- */
-int media_info_get_played_position(media_info_h media, int *played_position);
-
-/**
- * @brief Gets number which represents how many times given content has been played.
- * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
- *
- * @param [in] media The handle to media info
- * @param [out] played_count The counter of content played
- *
- * @return 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- */
-int media_info_get_played_count(media_info_h media, int *played_count);
-
-/**
- * @brief Gets the content's played time parameter.
- * @details Function returns content's elapsed playback time parameter as period
- * starting from the beginning of the track.
- * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
- *
- * @param [in] media The handle to media info
- * @param [out] played_time The elapsed time of the content
- *
- * @return 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- */
-int media_info_get_played_time(media_info_h media, time_t *played_time);
-
-/**
- * @brief Gets the media info from the media database.
- *
- * @details This function creates a new media handle from the media database by the given @a media_id.
- * Media info will be created and filled with information.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @remarks You must release @a media using media_tag_destroy().
- *
- * @param[in] media_id The ID of media info
- * @param[out] media The media handle associated with the media ID
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @pre This function requires opened connection to content service by media_content_connect().
- *
- * @see media_content_connect()
- * @see media_info_destroy()
- */
-int media_info_get_media_from_db(const char *media_id, media_info_h *media);
-
-/**
- * @brief Increments the played count to content meta handle.
- * @details You can increase the played(opened) count of the media file.
- * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
- *
- * @param [in] media The handle to media info
- *
- * @return 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- *
- * @post media_info_update_to_db()
- */
-int media_info_increase_played_count(media_info_h media);
-
-/**
- * @brief Gets the provider to media info.
- *
- * @remarks @a modified_month must be released with free() by you.
- *
- * @param[in] media The handle to media info
- * @param[out] category The modified month of media info
- * @return 0 on success, otherwise a negative error value.
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- *
- */
-int media_info_get_modified_month(media_info_h media, char **modified_month);
-
-/**
- * @brief Sets the played count to content meta handle.
- *
- * @param [in] media The handle to media info
- * @param [in] played_count The played count of content
- * @return 0 on success, otherwise a negative error value.
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @post media_info_update_to_db()
- */
-int media_info_set_played_count(media_info_h media, int played_count);
-
-/**
- * @brief Sets the played time to content meta handle.
- * @details You can set the latest played(opened) time of the media file. the latest played time to be set the current time on the system.
- * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 @endif
- *
- * @param [in] media The handle to media info
- *
- * @return 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- *
- * @post media_info_update_to_db()
- */
-int media_info_set_played_time(media_info_h media);
-
-/**
- * @brief Sets the played position to content meta handle.
- *
- * @param [in] media The handle to media info
- * @param [in] played_position The played position of content
- * @return 0 on success, otherwise a negative error value.
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @post media_info_update_to_db()
- */
-int media_info_set_played_position(media_info_h media, int played_position);
-
-/**
- * @brief Sets the display name of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] display_name The display name of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db().
- *
- */
-int media_info_set_display_name(media_info_h media, const char *display_name);
-
-/**
- * @brief Sets the description of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] description The description of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db().
- *
- */
-int media_info_set_description(media_info_h media, const char *description);
-
-/**
- * @brief Sets the longitude of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] longitude The longitude of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db().
- */
-int media_info_set_longitude(media_info_h media, double longitude);
-
-/**
- * @brief Sets the latitude of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] latitude The latitude of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db().
- */
-int media_info_set_latitude(media_info_h media, double latitude);
-
-/**
- * @brief Sets the altitude of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] altitude The altitude of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db().
- */
-int media_info_set_altitude(media_info_h media, double altitude);
-
-/**
- * @brief Sets the weather of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] weather The weather of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db().
- *
- */
-int media_info_set_weather(media_info_h media, const char *weather);
-
-/**
- * @brief Sets the rating of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] rating The rating of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db().
- */
-int media_info_set_rating(media_info_h media, int rating);
-
-/**
- * @brief Sets the favorite of media info.
- * @details This function can mark favorite of the media. If set to @c true, this fuction record the time of the change moment. \n
- * So, If you use it in order parameter, you can sort the order of the time was a favorite. \n
- * Or, if you use it in condition parameter, you can get the result of the favorite media.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] favorite Set @c true to set the media info as favorite,
- * otherwise set @c false to not set the media info as favorite
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- */
-int media_info_set_favorite(media_info_h media, bool favorite);
-
-/**
- * @brief Sets the author of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] author The author of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- */
-int media_info_set_author(media_info_h media, const char *author);
-
-/**
- * @brief Sets the provider of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] provider The provider of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- */
-int media_info_set_provider(media_info_h media, const char *provider);
-
-/**
- * @brief Sets the content name of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] content_name The content name of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db()
- */
-int media_info_set_content_name(media_info_h media, const char *content_name);
-
-/**
- * @brief Sets the category of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] category The category of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db()
- */
-int media_info_set_category(media_info_h media, const char *category);
-
-/**
- * @brief Sets the location tag of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] location_tag The location of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db()
- */
-int media_info_set_location_tag(media_info_h media, const char *location_tag);
-
-/**
- * @brief Sets the age rating of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] age_rating The age rating of the media info
- *
- * @return @c 0 on success,
- * otherwise a negative error value
- *
- * @retval #MEDIA_CONTENT_ERROR_NONE Successful
- * @retval #MEDIA_CONTENT_ERROR_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_PARAMETER Invalid parameter
- * @retval #MEDIA_CONTENT_ERROR_PERMISSION_DENIED Permission denied
- *
- * @post media_info_update_to_db()
- */
-int media_info_set_age_rating(media_info_h media, const char *age_rating);
-
-/**
- * @brief Sets the keyword of media info.