* @brief Sets the streaming buffering time.
* @since_tizen 4.0
* @param[in] player The handle to the media player
- * @param[in] prebuffer_ms The time duration of buffering data that must be prerolled to start playback.
+ * @param[in] prebuffer_ms The time duration of buffering data that must be prerolled to start playback
* @param[in] rebuffer_ms The time duration of buffering data that must be prerolled to resume playback
* if player is paused for buffering internally.
* @return @c 0 on success,
* @brief Gets the streaming buffering time.
* @since_tizen 4.0
* @param[in] player The handle to the media player
- * @param[out] prebuffer_ms The time duration of buffering data that must be prerolled to start playback.
+ * @param[out] prebuffer_ms The time duration of buffering data that must be prerolled to start playback
* @param[out] rebuffer_ms The time duration of buffering data that must be prerolled to resume playback
* if player enters pause state for buffering.
* @return @c 0 on success,
{
bool lock = false;
+ LOGD("event %d cb will be cleared", event);
+
if (!cb_info) {
LOGE("cb_info is NULL, event: %d", event);
return;
int (*p_disp_set_evas_display_visible)(void *, bool) = NULL;
#endif
g_mutex_lock(&cb_info->seek_cb_mutex);
- if (cb_info->user_cb[ev] && cb_info->seek_cb_state == PLAYER_SEEK_CB_STATE_NONE) {
+
+ switch (cb_info->seek_cb_state) {
+ case PLAYER_SEEK_CB_STATE_NONE:
+ {
+ if (!cb_info->user_cb[ev]) {
+ LOGW("invalid seek callback info, skip");
+ break;
+ }
+
#ifdef TIZEN_FEATURE_EVAS_RENDERER
if (cb_info->evas_info && cb_info->evas_info->support_video) {
if (cb_info->evas_info->handle && cb_info->evas_info->visible != EVAS_VISIBLE_FALSE) {
LOGD("call seek cb");
((player_seek_completed_cb) cb_info->user_cb[ev]) (cb_info->user_data[ev]);
set_null_user_cb(cb_info, ev);
- } else {
- LOGW("ignored. seek cb %p", cb_info->user_cb[ev]);
+
+ break;
}
+ case PLAYER_SEEK_CB_STATE_DROP:
+ case PLAYER_SEEK_CB_STATE_WAIT: /* not expected */
+ LOGW("ignored. seek cb %p, state %d", cb_info->user_cb[ev], cb_info->seek_cb_state);
+ break;
+ default:
+ LOGE("invalid state value");
+ break;
+ }
+
g_mutex_unlock(&cb_info->seek_cb_mutex);
}
#ifdef TIZEN_FEATURE_EVAS_RENDERER
int (*p_disp_destroy_evas_display)(void **) = NULL;
#endif
- LOGD("ENTER");
+ LOGD("ENTER %p", pc);
/* clear cb and release mem */
set_null_user_cb_lock(pc->cb_info, MUSE_PLAYER_EVENT_TYPE_SEEK);
player_cli_s *pc = (player_cli_s *) player;
char *ret_buf = NULL;
- LOGD("ENTER");
+ LOGD("ENTER %p", pc);
PLAYER_SEND_MSG(api, pc, ret_buf, ret);
if (ret == PLAYER_ERROR_NONE) {
int (*p_disp_evas_display_retrieve_all_packets)(void *, bool) = NULL;
player_state_e state = PLAYER_STATE_NONE;
- LOGD("ENTER");
+ LOGD("ENTER %p", pc);
if (_get_current_state(pc, &state) != PLAYER_ERROR_NONE) {
LOGE("Failed to get state");
player_cli_s *pc = (player_cli_s *) player;
char *ret_buf = NULL;
- LOGD("ENTER");
+ LOGD("ENTER %p", pc);
#ifdef TIZEN_FEATURE_EVAS_RENDERER
int (*p_disp_set_evas_display_visible)(void *, bool) = NULL;
#ifdef TIZEN_FEATURE_EVAS_RENDERER
int (*p_disp_set_evas_display_visible)(void *, bool) = NULL;
#endif
- LOGD("ENTER");
+ LOGD("ENTER %p", pc);
/* check player state */
if (_get_current_state(pc, &state) != PLAYER_ERROR_NONE) {
player_cli_s *pc = (player_cli_s *) player;
char *ret_buf = NULL;
- LOGD("ENTER");
+ LOGD("ENTER %p", pc);
PLAYER_SEND_MSG(api, pc, ret_buf, ret);
g_free(ret_buf);
player_cli_s *pc = (player_cli_s *) player;
char *ret_buf = NULL;
- LOGD("ENTER");
+ LOGD("ENTER %p", pc);
if (!pc->cb_info) {
LOGE("cb_info is null");