[0.6.99] disable max-size-time, use-rate-estimate in queue2 when PD mode 25/179925/1 accepted/tizen/4.0/unified/20180524.131135 submit/tizen_4.0/20180523.102543
authorGilbok Lee <gilbok.lee@samsung.com>
Fri, 18 May 2018 04:39:01 +0000 (13:39 +0900)
committerGilbok Lee <gilbok.lee@samsung.com>
Wed, 23 May 2018 10:22:16 +0000 (19:22 +0900)
Change-Id: I89f2c32007f43191d4a1215f3bbff00f269e6340

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

index 58588018fa296e79c33cef334c7b8f11defe331b..105741f250186a69b3f47742c8a39e995de5eae1 100644 (file)
@@ -1,6 +1,6 @@
 Name:       libmm-player
 Summary:    Multimedia Framework Player Library
-Version:    0.6.98
+Version:    0.6.99
 Release:    0
 Group:      Multimedia/Libraries
 License:    Apache-2.0
index 4ea76380a22dbdb992821284f62553cbfe655625..b400b1a554f22e2027226b2045603b871ec2b15d 100644 (file)
@@ -129,6 +129,7 @@ typedef struct {
        gboolean        is_buffering;
        gboolean        is_buffering_done;      /* get info from bus sync callback */
        gboolean        is_adaptive_streaming;
+       gboolean        is_pd_mode;
 
        gint            buffering_percent;
 
index af6d32ea5103cf70b6f9149b57ef055a2fd10f07..ddccc3d1274a571d4f3d6227a8624fb215033e6c 100644 (file)
 
 #define ADAPTIVE_VARIANT_DEFAULT_VALUE -1 /* auto */
 
+/* For PD mode */
+#define PLAYER_PD_EXT_MAX_SIZE_BYTE            1024 * 1024 * 3
+
 #define PLAYER_BUS_MSG_DEFAULT_TIMEOUT 500 /* bus msg wait timeout */
 #define PLAYER_BUS_MSG_PREPARE_TIMEOUT 10
 
@@ -6835,10 +6838,12 @@ __mmplayer_gst_create_pipeline(mm_player_t* player)
 
                pre_buffering_time = (pre_buffering_time > 0) ? (pre_buffering_time) : (player->ini.http_buffering_time);
 
+               player->streamer->is_pd_mode = TRUE;
+
                __mm_player_streaming_set_queue2(player->streamer,
                                element,
                                TRUE,
-                               player->ini.http_max_size_bytes + 52428800, // http_max_size_types + 5Mb
+                               player->ini.http_max_size_bytes + PLAYER_PD_EXT_MAX_SIZE_BYTE,
                                pre_buffering_time,
                                1.0,
                                player->ini.http_buffering_limit,
index 2e3071f29b95c4d4312c43369e8114358258a295..78e9b0a3d42e1c5d1105448662a12f69067f471c 100644 (file)
@@ -131,9 +131,11 @@ void __mm_player_streaming_initialize(mm_player_streaming_t* streamer)
        streamer->is_buffering = FALSE;
        streamer->is_buffering_done = FALSE;
        streamer->is_adaptive_streaming = FALSE;
-       streamer->buffering_percent = -1;
+       streamer->is_pd_mode = FALSE;
 
+       streamer->buffering_percent = -1;
        streamer->ring_buffer_size = DEFAULT_RING_BUFFER_SIZE;
+
        MMPLAYER_FLEAVE();
        return;
 }
@@ -164,6 +166,7 @@ void __mm_player_streaming_deinitialize(mm_player_streaming_t* streamer)
        streamer->is_buffering = FALSE;
        streamer->is_buffering_done = FALSE;
        streamer->is_adaptive_streaming = FALSE;
+       streamer->is_pd_mode = FALSE;
 
        streamer->buffering_percent = -1;
        streamer->ring_buffer_size = DEFAULT_RING_BUFFER_SIZE;
@@ -468,7 +471,7 @@ void __mm_player_streaming_set_queue2(mm_player_streaming_t* streamer,
                if (use_buffering) {
                        streamer->streaming_buffer_type = BUFFER_TYPE_MUXED;
 
-                       if (content_size > 0) {
+                       if (content_size > 0 || streamer->is_pd_mode) {
                                if (streamer->buffering_req.prebuffer_time > 0)
                                        streamer->buffering_req.is_pre_buffering = TRUE;
                                else