2 * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 #ifndef __TIZEN_MEDIA_CONTENT_TYPE_H__
19 #define __TIZEN_MEDIA_CONTENT_TYPE_H__
26 #endif /* __cplusplus */
29 #ifndef DEPRECATED_API
30 #define DEPRECATED_API __attribute__ ((deprecated))
34 * @file media_content_type.h
35 * @brief This file contains API related to media-content enumerations for media data types, groups, orientations, \n
36 * classes of errors and definitions of media-data. \n
37 * Listed APIs are called when iterating over lists of album, group, bookmark and other media, \n
38 * when media items and burst shot are inserted completely and when notification of media DB change is subscribed.
42 * @addtogroup CAPI_MEDIA_CONTENT_MODULE
47 * @ingroup CAPI_MEDIA_CONTENT_MODULE
48 * @brief Enumeration for the media file format.
52 MEDIA_CONTENT_TYPE_IMAGE = 0, /**<The type of an image */
53 MEDIA_CONTENT_TYPE_VIDEO = 1, /**<The type of a video */
54 MEDIA_CONTENT_TYPE_SOUND = 2, /**<The type of sound */
55 MEDIA_CONTENT_TYPE_MUSIC = 3, /**<The type of music */
56 MEDIA_CONTENT_TYPE_OTHERS = 4, /**<The type of other */
57 } media_content_type_e;
60 * @ingroup CAPI_CONTENT_MEDIA_FOLDER_MODULE
61 * @brief Enumeration for the storage type.
62 * @details This information is used to establish where the folder is.
66 MEDIA_CONTENT_STORAGE_INTERNAL = 0, /**< The device's internal storage */
67 MEDIA_CONTENT_STORAGE_EXTERNAL = 1, /**< The device's external storage */
68 } media_content_storage_e;
71 * @ingroup CAPI_MEDIA_CONTENT_MODULE
72 * @brief Enumeration for media content DB update items.
75 MEDIA_ITEM_FILE = 0, /**< File type, an item updated to DB */
76 MEDIA_ITEM_DIRECTORY = 1, /**< Directory type, an item updated to DB */
77 } media_content_db_update_item_type_e;
80 * @ingroup CAPI_MEDIA_CONTENT_MODULE
81 * @brief Enumeration for media content DB update types.
84 MEDIA_CONTENT_INSERT = 0, /**< Insert, the type of DB update */
85 MEDIA_CONTENT_DELETE = 1, /**< Delete, The type of DB update */
86 MEDIA_CONTENT_UPDATE = 2, /**< Update, The type of DB update */
87 } media_content_db_update_type_e;
90 * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
91 * @brief Enumeration for orientation types.
94 MEDIA_CONTENT_ORIENTATION_NOT_AVAILABLE = 0, /**< Not available*/
95 MEDIA_CONTENT_ORIENTATION_NORMAL = 1, /**< Normal*/
96 MEDIA_CONTENT_ORIENTATION_HFLIP = 2, /**< Flip horizontal*/
97 MEDIA_CONTENT_ORIENTATION_ROT_180 = 3, /**< Rotate 180 degrees*/
98 MEDIA_CONTENT_ORIENTATION_VFLIP = 4, /**< Flip vertical*/
99 MEDIA_CONTENT_ORIENTATION_TRANSPOSE = 5, /**< Transpose*/
100 MEDIA_CONTENT_ORIENTATION_ROT_90 = 6, /**< Rotate 90 degrees*/
101 MEDIA_CONTENT_ORIENTATION_TRANSVERSE = 7, /**< Transverse*/
102 MEDIA_CONTENT_ORIENTATION_ROT_270 = 8, /**< Rotate 270 degrees*/
103 } media_content_orientation_e;
106 * @ingroup CAPI_MEDIA_CONTENT_MODULE
107 * @brief Enumeration for ordering.
111 MEDIA_CONTENT_ORDER_ASC = 0, /**< Ascending order*/
112 MEDIA_CONTENT_ORDER_DESC = 1, /**< Descending order*/
113 } media_content_order_e;
116 * @ingroup CAPI_MEDIA_CONTENT_MODULE
117 * @brief Enumeration for collations.
121 MEDIA_CONTENT_COLLATE_DEFAULT = 0, /**< Default collation BINARY */
122 MEDIA_CONTENT_COLLATE_NOCASE = 1, /**< Collation NOCASE, not case sensitive */
123 MEDIA_CONTENT_COLLATE_RTRIM = 2, /**< Collation RTRIM, trailing space characters are ignored */
124 MEDIA_CONTENT_COLLATE_LOCALIZED = 3, /**< Collation LOCALIZATION, NOCASE also applied */
125 } media_content_collation_e;
127 #define MEDIA_CONTENT_ERROR_CLASS TIZEN_ERROR_MEDIA_CONTENT
130 * @ingroup CAPI_MEDIA_CONTENT_MODULE
131 * @brief Enumeration for a media content error.
135 MEDIA_CONTENT_ERROR_NONE = TIZEN_ERROR_NONE, /**< Successful */
136 MEDIA_CONTENT_ERROR_INVALID_PARAMETER = TIZEN_ERROR_INVALID_PARAMETER, /**< Invalid parameter */
137 MEDIA_CONTENT_ERROR_OUT_OF_MEMORY = TIZEN_ERROR_OUT_OF_MEMORY, /**< Out of memory */
138 MEDIA_CONTENT_ERROR_INVALID_OPERATION = TIZEN_ERROR_INVALID_OPERATION, /**< Invalid Operation */
139 MEDIA_CONTENT_FILE_NO_SPACE_ON_DEVICE = TIZEN_ERROR_FILE_NO_SPACE_ON_DEVICE, /**< No space left on device */
140 MEDIA_CONTENT_ERROR_PERMISSION_DENIED = TIZEN_ERROR_PERMISSION_DENIED, /**< Permission denied */
141 MEDIA_CONTENT_ERROR_DB_FAILED = MEDIA_CONTENT_ERROR_CLASS | 0x01, /**< DB operation failed */
142 MEDIA_CONTENT_ERROR_DB_BUSY = MEDIA_CONTENT_ERROR_CLASS | 0x02, /**< DB operation BUSY */
143 MEDIA_CONTENT_ERROR_NETWORK = MEDIA_CONTENT_ERROR_CLASS | 0x03, /**< Network Fail */
144 MEDIA_CONTENT_ERROR_UNSUPPORTED_CONTENT = MEDIA_CONTENT_ERROR_CLASS | 0x04, /**< Unsupported Content */
145 } media_content_error_e;
148 * @ingroup CAPI_MEDIA_CONTENT_MODULE
149 * @brief Enumeration for a media group.
152 MEDIA_CONTENT_GROUP_DISPLAY_NAME = 0, /**< Media group ID for display name */
153 MEDIA_CONTENT_GROUP_TYPE, /**< Media group ID for a media type */
154 MEDIA_CONTENT_GROUP_MIME_TYPE, /**< Media group ID for a mime type */
155 MEDIA_CONTENT_GROUP_SIZE, /**< Media group ID for content size */
156 MEDIA_CONTENT_GROUP_ADDED_TIME, /**< Media group ID for the added time */
157 MEDIA_CONTENT_GROUP_MODIFIED_TIME, /**< Media group ID for the modified time */
158 MEDIA_CONTENT_GROUP_TITLE, /**< Media group ID for a content title */
159 MEDIA_CONTENT_GROUP_ARTIST, /**< Media group ID for an artist*/
160 MEDIA_CONTENT_GROUP_ALBUM_ARTIST, /**< Media group ID for an album artist */
161 MEDIA_CONTENT_GROUP_GENRE, /**< Media group ID for a genre*/
162 MEDIA_CONTENT_GROUP_COMPOSER, /**< Media group ID for a composer*/
163 MEDIA_CONTENT_GROUP_YEAR, /**< Media group ID for a year*/
164 MEDIA_CONTENT_GROUP_RECORDED_DATE, /**< Media group ID for the recorded date*/
165 MEDIA_CONTENT_GROUP_COPYRIGHT, /**< Media group ID for the copyright*/
166 MEDIA_CONTENT_GROUP_TRACK_NUM, /**< Media group ID for a track number*/
167 MEDIA_CONTENT_GROUP_DESCRIPTION, /**< Media group ID for a description */
168 MEDIA_CONTENT_GROUP_LONGITUDE, /**< Media group ID for the longitude*/
169 MEDIA_CONTENT_GROUP_LATITUDE, /**< Media group ID for the latitude*/
170 MEDIA_CONTENT_GROUP_ALTITUDE, /**< Media group ID for the altitude*/
171 MEDIA_CONTENT_GROUP_BURST_IMAGE, /**< Media group ID for the burst shot*/
172 MEDIA_CONTENT_GROUP_RATING, /**< Media group ID for a rating*/
173 MEDIA_CONTENT_GROUP_AUTHOR, /**< Media group ID for an author*/
174 MEDIA_CONTENT_GROUP_PROVIDER, /**< Media group ID for a provider*/
175 MEDIA_CONTENT_GROUP_CONTENT_NAME, /**< Media group ID for the content name*/
176 MEDIA_CONTENT_GROUP_CATEGORY, /**< Media group ID for a category*/
177 MEDIA_CONTENT_GROUP_LOCATION_TAG, /**< Media group ID for a location tag*/
178 MEDIA_CONTENT_GROUP_AGE_RATING, /**< Media group ID for an age rating*/
179 MEDIA_CONTENT_GROUP_KEYWORD, /**< Media group ID for a keyword*/
180 MEDIA_CONTENT_GROUP_WEATHER, /**< Media group ID for the weather*/
181 MEDIA_CONTENT_GROUP_MAX /**< Max count of the media group ID */
185 * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
186 * @brief The structure type for the Media info handle.
188 typedef struct media_info_s *media_info_h;
191 * @ingroup CAPI_CONTENT_MEDIA_FOLDER_MODULE
192 * @brief The structure type for the Media folder handle.
194 typedef struct media_folder_s *media_folder_h;
197 * @ingroup CAPI_CONTENT_MEDIA_PLAYLIST_MODULE
198 * @brief The structure type for the Media playlist handle.
200 typedef struct media_playlist_s *media_playlist_h;
203 * @ingroup CAPI_CONTENT_MEDIA_TAG_MODULE
204 * @brief The structure type for the Media tag handle.
206 typedef struct media_tag_s *media_tag_h;
209 * @ingroup CAPI_CONTENT_MEDIA_BOOKMARK_MODULE
210 * @brief The structure type for the Media bookmark handle.
212 typedef struct media_bookmark_s *media_bookmark_h;
215 * @ingroup CAPI_CONTENT_MEDIA_ALBUM_MODULE
216 * @brief The structure type for the Media album handle.
218 typedef struct media_album_s *media_album_h;
221 * @ingroup CAPI_CONTENT_MEDIA_IMAGE_MODULE
222 * @brief The structure type for the Image metadata handle.
224 typedef struct image_meta_s *image_meta_h;
227 * @ingroup CAPI_CONTENT_MEDIA_VIDEO_META_MODULE
228 * @brief The structure type for the Video metadata handle.
230 typedef struct video_meta_s *video_meta_h;
233 * @ingroup CAPI_CONTENT_MEDIA_AUDIO_META_MODULE
234 * @brief The structure type for the Audio metadata handle.
236 typedef struct audio_meta_s *audio_meta_h;
239 * @ingroup CAPI_CONTENT_MEDIA_FILTER_MODULE
240 * @brief The structure type for the Media filter handle.
242 typedef struct filter_s *filter_h;
245 * @ingroup CAPI_CONTENT_MEDIA_STORAGE_MODULE
246 * @brief The structure type for the Media storage handle.
249 typedef void *media_storage_h;
252 * @ingroup CAPI_MEDIA_CONTENT_MODULE
253 * @brief Called when the media scanning is finished.
255 * @param[in] error The error code
256 * @param[in] user_data The user data passed from the foreach function
258 * @pre media_content_scan().
260 * @see media_content_scan()
263 typedef void (*media_scan_completed_cb)(media_content_error_e error, void * user_data);
266 * @ingroup CAPI_MEDIA_CONTENT_MODULE
267 * @brief Called when the notification of the media DB change is subscribed.
269 * @param[in] error The error code
270 * @param[in] pid The PID which publishes notification
271 * @param[in] update_item The update item of notification
272 * @param[in] update_type The update type of notification
273 * @param[in] media_type The type of the media content (#media_content_type_e)
274 * @param[in] uuid The UUID of media or directory, which is updated
275 * @param[in] path The path of the media or directory
276 * @param[in] mime_type The mime type of the media info
277 * @param[in] user_data The user data passed from the foreach function
279 * @pre media_content_db_update_subscribe().
280 * @see media_content_db_update_subscribe()
282 typedef void (*media_content_db_update_cb)(
283 media_content_error_e error,
285 media_content_db_update_item_type_e update_item,
286 media_content_db_update_type_e update_type,
287 media_content_type_e media_type,
295 * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
296 * @brief Called for every available media info.
298 * @details Iterates over a list of media info.
300 * @remarks To use the @a media outside this function, copy the handle with media_info_clone() function.
302 * @param[in] media The handle to the media info
303 * @param[in] user_data The user data passed from the foreach function
305 * @return @c true to continue with the next iteration of the loop,
306 * otherwise @c false to break out of the loop
308 * @pre media_tag_foreach_media_from_db(), media_playlist_foreach_media_from_db(), media_genre_foreach_media_from_db(),
309 * media_info_foreach_media_from_db(), media_folder_foreach_media_from_db() will invoke this function.
311 * @see media_info_clone()
312 * @see media_album_foreach_media_from_db()
313 * @see media_playlist_foreach_media_from_db()
314 * @see media_tag_foreach_media_from_db()
315 * @see media_info_foreach_media_from_db()
316 * @see media_folder_foreach_media_from_db()
318 typedef bool (*media_info_cb)(media_info_h media, void *user_data);
322 * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
323 * @brief Called when media items are inserted completely.
325 * @param[in] media The handle to the media info
326 * @param[in] user_data The user data passed from the foreach function
328 * @pre media_info_insert_batch_to_db()
330 * @see media_info_insert_batch_to_db()
332 typedef void (*media_insert_completed_cb)(media_content_error_e error, void * user_data);
336 * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
337 * @brief Called when the burst shot is inserted completely.
339 * @param[in] media The handle to the media info
340 * @param[in] user_data The user data passed from the foreach function
342 * @pre media_info_insert_burst_shot_to_db()
344 * @see media_info_insert_burst_shot_to_db()
347 typedef void (*media_insert_burst_shot_completed_cb)(media_content_error_e error, void * user_data);
351 * @ingroup CAPI_CONTENT_MEDIA_INFO_MODULE
352 * @brief Called when creating a thumbnail image.
354 * @details This callback is called for completion of generating the thumbnail image.
356 * @param[in] error The error code
357 * @param[in] path The path of the thumbnail which is generated
358 * @param[in] user_data The user data passed from the foreach function
360 * @pre media_info_create_thumbnail()
362 * @see media_info_create_thumbnail()
364 typedef void (*media_thumbnail_completed_cb)(media_content_error_e error, const char *path, void *user_data);
368 * @ingroup CAPI_CONTENT_MEDIA_FOLDER_MODULE
369 * @brief Called for every available media folder.
371 * @details Iterates over a list of folders.
373 * @remarks To use the @a folder outside this function, copy the handle with the media_folder_clone() function.
375 * @param[in] folder The handle to the media folder
376 * @param[in] user_data The user data passed from the foreach function
378 * @return @c true to continue with the next iteration of the loop,
379 * otherwise @c false to break out of the loop
381 * @pre media_folder_foreach_folder_from_db() will invoke this function.
382 * @see media_folder_clone()
383 * @see media_folder_foreach_folder_from_db()
385 typedef bool (*media_folder_cb)(media_folder_h folder, void *user_data);
388 * @ingroup CAPI_CONTENT_MEDIA_PLAYLIST_MODULE
389 * @brief Called for every playlist in the obtained list of playlists.
391 * @details Iterates over a playlist list.
393 * @remarks To use the @a playlist outside this function, copy the handle with the media_playlist_clone() function.
395 * @param[in] playlist The handle to the media playlist
396 * @param[in] user_data The user data passed from the foreach function
398 * @return @c true to continue with the next iteration of the loop,
399 * otherwise @c false to break out of the loop
401 * @pre media_playlist_foreach_playlist_from_db() will invoke this function.
403 * @see media_playlist_clone()
404 * @see media_playlist_foreach_playlist_from_db()
406 typedef bool (*media_playlist_cb)(media_playlist_h playlist, void *user_data);
409 * @ingroup CAPI_CONTENT_MEDIA_PLAYLIST_MODULE
410 * @brief Called for every media info with playlist member ID in the obtained list of media info.
412 * @details Iterates over playlist members.
414 * @remarks To use the @a media outside this function, copy the handle with the media_info_clone() function.
416 * @param[in] playlist_member_id The ID to member of the playlist
417 * @param[in] media The handle to the media info
418 * @param[in] user_data The user data passed from the foreach function
420 * @return @c true to continue with the next iteration of the loop,
421 * otherwise @c false to break out of the loop
423 * @pre media_playlist_foreach_media_from_db() will invoke this function.
425 * @see media_info_clone()
426 * @see media_playlist_foreach_media_from_db()
428 typedef bool(* playlist_member_cb)(int playlist_member_id, media_info_h media, void *user_data);
431 * @ingroup CAPI_CONTENT_MEDIA_TAG_MODULE
432 * @brief Called for every tag in the obtained list of tags.
434 * @details Iterates over a list of tags.
436 * @remarks To use the @a tag outside this function, copy the handle with the media_tag_clone() function.
438 * @param[in] tag The handle to the media tag
439 * @param[in] user_data The user data passed from the foreach function
441 * @return @c true to continue with the next iteration of the loop,
442 * otherwise @c false to break out of the loop
444 * @pre media_tag_foreach_tag_from_db(), media_info_foreach_tag_from_db() will invoke this function.
446 * @see media_tag_clone()
447 * @see media_tag_foreach_tag_from_db()
448 * @see media_info_foreach_tag_from_db()
450 typedef bool (*media_tag_cb)(media_tag_h tag, void *user_data);
453 * @ingroup CAPI_CONTENT_MEDIA_BOOKMARK_MODULE
454 * @brief Called for every bookmark in the obtained list of bookmarks.
456 * @details Iterates over a bookmark list.
458 * @remarks To use the @a bookmark outside this function, copy the handle with the media_bookmark_clone() function.
460 * @param[in] bookmark The handle to the video bookmark
461 * @param[in] user_data The user data passed from the foreach function
463 * @return @c true to continue with the next iteration of the loop,
464 * otherwise @c false to break out of the loop
466 * @pre media_info_foreach_bookmark_from_db() will invoke this function.
468 * @see media_info_foreach_bookmark_from_db()
470 typedef bool (*media_bookmark_cb)(media_bookmark_h bookmark, void *user_data);
473 * @ingroup CAPI_CONTENT_MEDIA_ALBUM_MODULE
474 * @brief Called for every album in the obtained list of groups.
476 * @details Iterates over an album list.
478 * @remarks To use the @a album outside this function, copy the handle with the media_album_clone() function.
480 * @param[in] album The handle to the media album
481 * @param[in] user_data The user data passed from the foreach function
483 * @return @c true to continue with the next iteration of the loop,
484 * otherwise @c false to break out of the loop
486 * @pre media_album_foreach_album_from_db() will invoke this function.
488 * @see media_album_clone()
489 * @see media_album_foreach_album_from_db()
491 typedef bool (*media_album_cb)(media_album_h album, void *user_data);
494 * @ingroup CAPI_CONTENT_MEDIA_GROUP_MODULE
495 * @brief Called for every group in the obtained list of groups.
497 * @details Iterates over a media group list.
499 * @remarks You should not free @a group_name returned by this function.
501 * @param[in] group_name The name of the media group
502 * @param[in] user_data The user data passed from the foreach function
504 * @return @c true to continue with the next iteration of the loop,
505 * otherwise @c false to break out of the loop
507 * @pre media_group_foreach_group_from_db() will invoke this function.
509 * @see media_group_foreach_group_from_db()
511 typedef bool (*media_group_cb)(const char *group_name, void *user_data);
514 * @ingroup CAPI_CONTENT_MEDIA_STORAGE_MODULE
515 * @brief Called for every storage in the obtained list of storages.
518 * @details Iterates over a media storage list.
520 * @remarks You should not destroy @a storage returned by this function.
522 * @param[in] storage The handle of the media storage
523 * @param[in] user_data The user data passed from the foreach function
525 * @return @c true to continue with the next iteration of the loop,
526 * otherwise @c false to break out of the loop
528 * @pre media_storage_foreach_storage_from_db() will invoke this function.
530 * @see media_storage_foreach_storage_from_db()
532 typedef bool (*media_storage_cb)(media_storage_h storage, void *user_data);
539 * @addtogroup CAPI_CONTENT_MEDIA_FILTER_MODULE
541 * @brief You can use above defines to set the condition of media filter and order keyword.
544 #define MEDIA_ID "MEDIA_ID" /**< Media ID */
545 #define MEDIA_PATH "MEDIA_PATH" /**< Media full path */
546 #define MEDIA_DISPLAY_NAME "MEDIA_DISPLAY_NAME" /**< Media base name */
547 #define MEDIA_TYPE "MEDIA_TYPE" /**< Media type: 0-image, 1-video, 2-sound, 3-music, 4-other*/
548 #define MEDIA_MIME_TYPE "MEDIA_MIME_TYPE" /**< Media MIME type */
549 #define MEDIA_SIZE "MEDIA_SIZE" /**< Media MIME size */
550 #define MEDIA_ADDED_TIME "MEDIA_ADDED_TIME" /**< Media added time */
551 #define MEDIA_MODIFIED_TIME "MEDIA_MODIFIED_TIME" /**< Media modified time */
552 #define MEDIA_TIMELINE "MEDIA_TIMELINE" /**< Media modified time */
553 #define MEDIA_THUMBNAIL_PATH "MEDIA_THUMBNAIL_PATH" /**< Media thumbnail path */
554 #define MEDIA_TITLE "MEDIA_TITLE" /**< Media title get from tag or file name */
555 #define MEDIA_ALBUM "MEDIA_ALBUM" /**< Media album name*/
556 #define MEDIA_ARTIST "MEDIA_ARTIST" /**< Media artist*/
557 #define MEDIA_ALBUM_ARTIST "MEDIA_ALBUM_ARTIST" /**< Media album_artist*/
558 #define MEDIA_GENRE "MEDIA_GENRE" /**< Media genre*/
559 #define MEDIA_COMPOSER "MEDIA_COMPOSER" /**< Media composer*/
560 #define MEDIA_YEAR "MEDIA_YEAR" /**< Media year*/
561 #define MEDIA_RECORDED_DATE "MEDIA_RECORDED_DATE" /**< Media recorded date*/
562 #define MEDIA_COPYRIGHT "MEDIA_COPYRIGHT" /**< Media copyright*/
563 #define MEDIA_TRACK_NUM "MEDIA_TRACK_NUM" /**< Media track number*/
564 #define MEDIA_DESCRIPTION "MEDIA_DESCRIPTION" /**< Media description*/
565 #define MEDIA_BITRATE "MEDIA_BITRATE" /**< Media bitrate*/
566 #define MEDIA_BITPERSAMPLE "MEDIA_BITPERSAMPLE" /**< Media bit per sample*/
567 #define MEDIA_SAMPLERATE "MEDIA_SAMPLERATE" /**< Media sample rate*/
568 #define MEDIA_CHANNEL "MEDIA_CHANNEL" /**< Media channel*/
569 #define MEDIA_DURATION "MEDIA_DURATION" /**< Media duration */
570 #define MEDIA_LONGITUDE "MEDIA_LONGITUDE" /**< Media longitude */
571 #define MEDIA_LATITUDE "MEDIA_LATITUDE" /**< Media latitude */
572 #define MEDIA_ALTITUDE "MEDIA_ALTITUDE" /**< Media altitude */
573 #define MEDIA_WIDTH "MEDIA_WIDTH" /**< Media width*/
574 #define MEDIA_HEIGHT "MEDIA_HEIGHT" /**< Media height*/
575 #define MEDIA_DATETAKEN "MEDIA_DATETAKEN" /**< Media datetaken*/
576 #define MEDIA_ORIENTATION "MEDIA_ORIENTATION" /**< Media orientation*/
577 #define MEDIA_BURST_ID "BURST_ID" /**< Media burst ID*/
578 #define MEDIA_PLAYED_COUNT "MEDIA_PLAYED_COUNT" /**< Media playedcount*/
579 #define MEDIA_LAST_PLAYED_TIME "MEDIA_LAST_PLAYED_TIME" /**< Media last played time*/
580 #define MEDIA_LAST_PLAYED_POSITION "MEDIA_LAST_PLAYED_POSITION" /**< Media last played position of file*/
581 #define MEDIA_RATING "MEDIA_RATING" /**< Media rating*/
582 #define MEDIA_FAVOURITE "MEDIA_FAVOURITE" /**< 0-not favourite, 1-favourite*/
583 #define MEDIA_AUTHOR "MEDIA_AUTHOR" /**< Media authore*/
584 #define MEDIA_PROVIDER "MEDIA_PROVIDER" /**< Media provider*/
585 #define MEDIA_CONTENT_NAME "MEDIA_CONTENT_NAME" /**< Media content name*/
586 #define MEDIA_CATEGORY "MEDIA_CATEGORY" /**< Media category*/
587 #define MEDIA_LOCATION_TAG "MEDIA_LOCATION_TAG" /**< Media location tag*/
588 #define MEDIA_AGE_RATING "MEDIA_AGE_RATING" /**< Media age rating*/
589 #define MEDIA_KEYWORD "MEDIA_KEYWORD" /**< Media keyword*/
590 #define MEDIA_WEATHER "MEDIA_WEATHER" /**< Media weather*/
591 #define MEDIA_IS_DRM "MEDIA_IS_DRM" /**< Is DRM. 0-not drm, 1-drm*/
592 #define MEDIA_STORAGE_TYPE "MEDIA_STORAGE_TYPE" /**< Media storage. 0-internal storage, 1-external storage*/
593 #define MEDIA_EXPOSURE_TIME "MEDIA_EXPOSURE_TIME" /**< media exposure_time*/
594 #define MEDIA_FNUMBER "MEDIA_FNUMBER" /**< media fnumber*/
595 #define MEDIA_ISO "MEDIA_ISO" /**< media iso*/
596 #define MEDIA_MODEL "MEDIA_MODEL" /**< media model*/
598 #define MEDIA_FILE_NAME_PINYIN "MEDIA_FILE_NAME_PINYIN" /**< Media file name pinyin */
599 #define MEDIA_TITLE_PINYIN "MEDIA_TITLE_PINYIN" /**< Media title pinyin */
600 #define MEDIA_ALBUM_PINYIN "MEDIA_ALBUM_PINYIN" /**< Media album pinyin*/
601 #define MEDIA_ARTIST_PINYIN "MEDIA_ARTIST_PINYIN" /**< Media artist pinyin*/
602 #define MEDIA_ALBUM_ARTIST_PINYIN "MEDIA_ALBUM_ARTIST_PINYIN" /**< Media album_artist pinyin*/
603 #define MEDIA_GENRE_PINYIN "MEDIA_GENRE_PINYIN" /**< Media genre pinyin*/
604 #define MEDIA_COMPOSER_PINYIN "MEDIA_COMPOSER_PINYIN" /**< Media composer pinyin*/
605 #define MEDIA_COPYRIGHT_PINYIN "MEDIA_COPYRIGHT_PINYIN" /**< Media copyright pinyin*/
606 #define MEDIA_DESCRIPTION_PINYIN "MEDIA_DESCRIPTION_PINYIN" /**< Media description pinyin*/
607 #define MEDIA_AUTHOR_PINYIN "MEDIA_AUTHOR_PINYIN" /**< Media authore pinyin*/
608 #define MEDIA_PROVIDER_PINYIN "MEDIA_PROVIDER_PINYIN" /**< Media provider pinyin*/
609 #define MEDIA_CONTENT_NAME_PINYIN "MEDIA_CONTENT_NAME_PINYIN" /**< Media content name pinyin*/
610 #define MEDIA_CATEGORY_PINYIN "MEDIA_CATEGORY_PINYIN" /**< Media category pinyin*/
611 #define MEDIA_LOCATION_TAG_PINYIN "MEDIA_LOCATION_TAG_PINYIN" /**< Media location tag pinyin*/
612 #define MEDIA_AGE_RATING_PINYIN "MEDIA_AGE_RATING_PINYIN" /**< Media age rating pinyin*/
613 #define MEDIA_KEYWORD_PINYIN "MEDIA_KEYWORD_PINYIN" /**< Media keyword pinyin*/
622 * @addtogroup CAPI_CONTENT_MEDIA_FOLDER_MODULE
625 #define FOLDER_ID "FOLDER_ID" /**< Folder ID */
626 #define FOLDER_PATH "FOLDER_PATH" /**< Folder full path */
627 #define FOLDER_NAME "FOLDER_NAME" /**< Folder base name */
628 #define FOLDER_MODIFIED_TIME "FOLDER_MODIFIED_TIME" /**< Folder modified time */
629 #define FOLDER_STORAGE_TYPE "FOLDER_STORAGE_TYPE" /**< Folder storage. 0-internal storage, 1-external storage*/
630 #define FOLDER_NAME_PINYIN "FOLDER_NAME_PINYIN" /**< Folder base name pinyin*/
631 #define FOLDER_ORDER "FOLDER_ORDER" /**< Folder order info */
638 * @addtogroup CAPI_CONTENT_MEDIA_PLAYLIST_MODULE
641 #define PLAYLIST_NAME "PLAYLIST_NAME" /**< Playlist name */
642 #define PLAYLIST_MEMBER_ORDER "PLAYLIST_MEMBER_ORDER" /**< Playlist name */
643 #define PLAYLIST_MEDIA_COUNT "PLAYLIST_MEDIA_COUNT" /**< Media count in playlist view */
650 * @addtogroup CAPI_CONTENT_MEDIA_TAG_MODULE
653 #define TAG_NAME "TAG_NAME" /**< Tag name */
654 #define TAG_MEDIA_COUNT "TAG_MEDIA_COUNT" /**< Media count in tag view */
661 * @addtogroup CAPI_CONTENT_MEDIA_BOOKMARK_MODULE
664 #define BOOKMARK_MARKED_TIME "BOOKMARK_MARKED_TIME" /**< Bookmark marked time */
672 #endif /* __cplusplus */
675 #endif /*__TIZEN_MEDIA_CONTENT_TYPE_H__*/