[0.6.58] modify buffering msg handling 85/145685/1 accepted/tizen_3.0_ivi accepted/tizen/3.0/common/20170825.070106 accepted/tizen/3.0/ivi/20170824.221448 accepted/tizen/3.0/mobile/20170824.221440 accepted/tizen/3.0/tv/20170824.221432 accepted/tizen/3.0/wearable/20170824.221436 submit/tizen_3.0/20170823.092442
authorEunhae Choi <eunhae1.choi@samsung.com>
Wed, 23 Aug 2017 07:52:48 +0000 (16:52 +0900)
committerEunhae Choi <eunhae1.choi@samsung.com>
Wed, 23 Aug 2017 09:04:30 +0000 (18:04 +0900)
Change-Id: I0cacf09a7deeba951f807368efe338dd28e8a5a2

packaging/libmm-player.spec
src/include/mm_player_priv.h
src/mm_player_priv.c

index 9286b7b..b88cefa 100644 (file)
@@ -1,6 +1,6 @@
 Name:       libmm-player
 Summary:    Multimedia Framework Player Library
-Version:    0.6.57
+Version:    0.6.58
 Release:    0
 Group:      Multimedia/Libraries
 License:    Apache-2.0
index db96c1d..54bec62 100644 (file)
@@ -688,7 +688,6 @@ typedef struct {
        gboolean sent_bos;
 
        /* timeout source for lazy pause */
-       guint lazy_pause_event_id;
        guint resume_event_id;
        guint resumable_cancel_id;
 
index 93e8b84..d00d5f4 100644 (file)
@@ -1294,9 +1294,21 @@ __mmplayer_gst_callback(GstBus *bus, GstMessage *msg, gpointer data) // @
                                break;
                        }
 
-                       if (!MMPLAYER_CMD_TRYLOCK(player)) {
-                               LOGW("Fail to get cmd lock. skip msg handling.");
-                               break;
+                       if (player->pd_mode == MM_PLAYER_PD_MODE_URI) {
+                               if (!MMPLAYER_CMD_TRYLOCK(player)) {
+                                       gint per = 0;
+
+                                       LOGW("[PD mode] can't get cmd lock, only post buffering msg");
+
+                                       gst_message_parse_buffering(msg, &per);
+                                       LOGD("[PD mode][%s] buffering %d %%....", GST_OBJECT_NAME(GST_MESSAGE_SRC(msg)), per);
+
+                                       msg_param.connection.buffering = per;
+                                       MMPLAYER_POST_MSG(player, MM_MESSAGE_BUFFERING, &msg_param);
+                                       break;
+                               }
+                       } else {
+                               MMPLAYER_CMD_LOCK(player);
                        }
 
                        __mmplayer_update_buffer_setting(player, msg);
@@ -8734,13 +8746,6 @@ _mmplayer_destroy(MMHandleType handle) // @
        if (MM_ERROR_NONE != _mmplayer_resource_manager_deinit(&player->resource_manager))
                LOGE("failed to deinitialize resource manager\n");
 
-#ifdef USE_LAZY_PAUSE
-       if (player->lazy_pause_event_id) {
-               __mmplayer_remove_g_source_from_context(player->context.global_default, player->lazy_pause_event_id);
-               player->lazy_pause_event_id = 0;
-       }
-#endif
-
        if (player->resume_event_id) {
                g_source_remove(player->resume_event_id);
                player->resume_event_id = 0;