- * @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.
- * @detalis You can increase the played(opened) count of the media file.
- * @since_tizen 2.4
- *
- * @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 Sets the played time to content meta handle.
- * @detalis 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 2.4
- *
- * @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 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.
- * @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.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] keyword The keyword 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_keyword(media_info_h media, const char *keyword);
-
-/**
- * @brief Updates the media info to the media database.
- *
- * @details The function updates the given media info in the media database.
- *
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- * @privlevel public
- * @privilege %http://tizen.org/privilege/content.write
- *
- * @remarks The function should be called after any change in media, to be updated to the media
- * database. For example, after using media_info_set_display_name()
- * for setting the name of the media, the media_info_update_to_db() function should be called so as to update
- * the given media info attributes in the media database.
- *
- * @param[in] media The media info handle
- *
- * @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_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_OPERATION Invalid operation
- * @retval #MEDIA_CONTENT_ERROR_DB_FAILED DB Operation failed
- * @retval #MEDIA_CONTENT_ERROR_DB_BUSY DB Operation busy
- * @retval #MEDIA_CONTENT_ERROR_NETWORK Network fail
- * @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_set_display_name()
- * @see media_info_set_description()
- * @see media_info_set_longitude()
- * @see media_info_set_latitude()
- * @see media_info_set_altitude()
- * @see media_info_set_rating()
- * @see media_info_set_favorite()
- * @see media_info_set_author()
- * @see media_info_set_provider()
- * @see media_info_set_content_name()
- * @see media_info_set_category()
- * @see media_info_set_location_tag()
- * @see media_info_set_age_rating()
- */
-int media_info_update_to_db(media_info_h media);
-
-/**
- * @brief Refreshes the media metadata to the media database.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @privlevel public
- * @privilege %http://tizen.org/privilege/content.write \n
- * %http://tizen.org/privilege/mediastorage \n
- * %http://tizen.org/privilege/externalstorage
- *
- * @remarks You must add privilege http://tizen.org/privilege/content.write. And You add more privilege depending on your choice of contents path. \n
- * If you want to access only internal storage by using this API, you should add privilege http://tizen.org/privilege/mediastorage. \n
- * Or if you want to access only external storage by using this API, you shold add privilege http://tizen.org/privilege/externalstorage. \n
- * If you can access both storage, you should add all privilege.
- *
- * @param[in] media_id The ID 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_OUT_OF_MEMORY Out of memory
- * @retval #MEDIA_CONTENT_ERROR_INVALID_OPERATION Invalid operation
- * @retval #MEDIA_CONTENT_ERROR_DB_FAILED DB Operation failed
- * @retval #MEDIA_CONTENT_ERROR_DB_BUSY DB Operation busy
- * @retval #MEDIA_CONTENT_ERROR_NETWORK Network fail
- * @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()
- */
-int media_info_refresh_metadata_to_db(const char *media_id);
-
-/**
- * @brief Sets the added time of media info.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
- *
- * @param[in] media The media info handle
- * @param[in] added_time The added time 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_added_time(media_info_h media, time_t added_time);
-
-/**
- * @brief Moves the media info to the given destination path in the media database.
- * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif