diff options
author | Younghwan Ahn <younghwan_.an@samsung.com> | 2012-09-03 18:38:24 +0900 |
---|---|---|
committer | Younghwan Ahn <younghwan_.an@samsung.com> | 2012-09-03 18:38:24 +0900 |
commit | 86aca17be19ac4cd3b87fcf5d52b225563728cef (patch) | |
tree | 45d5b0491142015b8d222c98a637679963c5c4a3 /src/include | |
parent | f3e126e6f075bf08f52f2e2b84ccc03259b5b1d6 (diff) | |
download | libmm-player-86aca17be19ac4cd3b87fcf5d52b225563728cef.tar.gz libmm-player-86aca17be19ac4cd3b87fcf5d52b225563728cef.tar.bz2 libmm-player-86aca17be19ac4cd3b87fcf5d52b225563728cef.zip |
sync with private (add mm_player_get_track_count, seek check bug)
Diffstat (limited to 'src/include')
-rwxr-xr-x | src/include/mm_player.h | 48 | ||||
-rwxr-xr-x | src/include/mm_player_capture.h | 4 | ||||
-rwxr-xr-x | src/include/mm_player_priv.h | 32 |
3 files changed, 72 insertions, 12 deletions
diff --git a/src/include/mm_player.h b/src/include/mm_player.h index cdfbada..7d3ce63 100755 --- a/src/include/mm_player.h +++ b/src/include/mm_player.h @@ -353,6 +353,11 @@ <td>range</td> </tr> <tr> + <td>"content_text_track_num"</td> + <td>int</td> + <td>range</td> + </tr> + <tr> <td>"tag_artist"</td> <td>string</td> <td>N/A</td> @@ -574,6 +579,12 @@ */ #define MM_PLAYER_AUDIO_TRACK_NUM "content_audio_track_num" /** + * MM_PLAYER_TEXT_TRACK_NUM + * + * track number inside a collection (int) + */ +#define MM_PLAYER_TEXT_TRACK_NUM "content_text_track_num" +/** * MM_PLAYER_TAG_ARTIST * * person(s) responsible for the recording (string) @@ -704,6 +715,15 @@ typedef enum { }MMPlayerPDMode; /** + * Enumeration of track types + */ +typedef enum { + MM_PLAYER_TRACK_TYPE_AUDIO, + MM_PLAYER_TRACK_TYPE_VIDEO, + MM_PLAYER_TRACK_TYPE_TEXT +}MMPlayerTrackType; + +/** * Attribute validity structure */ typedef struct { @@ -1446,6 +1466,7 @@ if (method_info. validity_type == MM_PLAYER_ATTRS_VALID_TYPE_INT_RANGE) * @endcode */ int mm_player_get_attribute_info(MMHandleType player, const char *attribute_name, MMPlayerAttrsInfo *info); + /** * This function is to get download position and total size of progressive download * @@ -1504,6 +1525,33 @@ mm_player_set_pd_message_callback(g_player, msg_callback, NULL); int mm_player_set_pd_message_callback(MMHandleType player, MMMessageCallback callback, void *user_param); /** + * This function is to get the track count + * + * @param player [in] handle of player. + * @param track_type [in] type of the track type + * @param info [out] the count of the track + * + * @return This function returns zero on success, or negative value with error + * code. + * + * @see + * @remark None + * @par Example + * @code +gint audio_count = 0; + +if (mm_player_get_track_count (g_player, MM_PLAYER_TRACK_TYPE_AUDIO, &audio_count) != MM_ERROR_NONE) +{ + printf("failed to get audio track count\n"); +} + +printf("audio track count : %d \n", audio_count); + * @endcode + */ +int mm_player_get_track_count(MMHandleType player, MMPlayerTrackType track_type, int *count); + + +/** @} */ diff --git a/src/include/mm_player_capture.h b/src/include/mm_player_capture.h index 401ca09..81eb123 100755 --- a/src/include/mm_player_capture.h +++ b/src/include/mm_player_capture.h @@ -45,7 +45,7 @@ * @see
*
*/
-int __mmplayer_initialize_video_capture(mm_player_t* player);
+int _mmplayer_initialize_video_capture(mm_player_t* player);
/**
* This function is to release video capture
*
@@ -55,7 +55,7 @@ int __mmplayer_initialize_video_capture(mm_player_t* player); * @see
*
*/
-int __mmplayer_release_video_capture(mm_player_t* player);
+int _mmplayer_release_video_capture(mm_player_t* player);
/**
* This function is to get video snapshot during playback.
*
diff --git a/src/include/mm_player_priv.h b/src/include/mm_player_priv.h index 499aee9..3a29bfc 100755 --- a/src/include/mm_player_priv.h +++ b/src/include/mm_player_priv.h @@ -198,21 +198,31 @@ enum VideoElementID }; /* text pipeline's element id */ -enum SubtitleElementID +enum TextElementID { - MMPLAYER_T_PIPE = 0, /* NOTE : MMPLAYER_T_PIPE should be zero */ - MMPLAYER_T_SRC, + MMPLAYER_T_BIN = 0, /* NOTE : MMPLAYER_V_BIN should be zero */ MMPLAYER_T_QUEUE, - MMPLAYER_T_SUBPARSE, - MMPLAYER_T_TEXTRENDER, - MMPLAYER_T_FLIP, - MMPLAYER_T_CONV1, - MMPLAYER_T_CONV2, - MMPLAYER_T_SCALE, + MMPLAYER_T_OVERLAY, MMPLAYER_T_SINK, MMPLAYER_T_NUM }; +/* subtitle pipeline's element id */ +enum SubtitleElementID +{ + MMPLAYER_SUB_PIPE = 0, /* NOTE : MMPLAYER_SUB_PIPE should be zero */ + MMPLAYER_SUB_SRC, + MMPLAYER_SUB_QUEUE, + MMPLAYER_SUB_SUBPARSE, + MMPLAYER_SUB_TEXTRENDER, + MMPLAYER_SUB_FLIP, + MMPLAYER_SUB_CONV1, + MMPLAYER_SUB_CONV2, + MMPLAYER_SUB_SCALE, + MMPLAYER_SUB_SINK, + MMPLAYER_SUB_NUM +}; + /* midi main pipeline's element id */ enum MidiElementID { @@ -304,6 +314,7 @@ typedef struct { GstTagList *tag_list; MMPlayerGstElement *mainbin; + MMPlayerGstElement *subtitlebin; MMPlayerGstElement *audiobin; MMPlayerGstElement *videobin; MMPlayerGstElement *textbin; @@ -536,6 +547,7 @@ typedef struct { gint audiodec_linked; gint videosink_linked; gint audiosink_linked; + gint textsink_linked; /* missing plugin during autoplugging */ MissingCodec not_supported_codec; @@ -553,7 +565,7 @@ typedef struct { /* support seek even though player is not start */ MMPlayerPendingSeek pending_seek; - gboolean is_seeking; + gboolean doing_seek; /* prevent to post msg over and over */ gboolean posted_msg; |