summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGilbok Lee <gilbok.lee@samsung.com>2020-08-28 16:09:52 +0900
committerGilbok Lee <gilbok.lee@samsung.com>2020-09-01 15:42:48 +0900
commitd5fec5b9bca75865ad9e768db1d1943fcfdf16f4 (patch)
treec039283b7414034a814fc59a5d5d956e9532b010
parente3cd1029693098d97c3ec5dd4b601948156d8833 (diff)
downloadlibmm-player-d5fec5b9bca75865ad9e768db1d1943fcfdf16f4.tar.gz
libmm-player-d5fec5b9bca75865ad9e768db1d1943fcfdf16f4.tar.bz2
libmm-player-d5fec5b9bca75865ad9e768db1d1943fcfdf16f4.zip
[0.6.234] Disable ringbuffer in queue2 when streaming mp3
- Setting ringbuffer make queue2 work in pull mode which causes the memory usage increases in muse-server Change-Id: I29e120d6d51ab6ce2c83e5f8b8523b989ea889fa
-rw-r--r--packaging/libmm-player.spec2
-rw-r--r--src/mm_player_gst.c25
2 files changed, 25 insertions, 2 deletions
diff --git a/packaging/libmm-player.spec b/packaging/libmm-player.spec
index 47ffbc3..84cbf1f 100644
--- a/packaging/libmm-player.spec
+++ b/packaging/libmm-player.spec
@@ -1,6 +1,6 @@
Name: libmm-player
Summary: Multimedia Framework Player Library
-Version: 0.6.233
+Version: 0.6.234
Release: 0
Group: Multimedia/Libraries
License: Apache-2.0
diff --git a/src/mm_player_gst.c b/src/mm_player_gst.c
index cefa10e..ccc7bbd 100644
--- a/src/mm_player_gst.c
+++ b/src/mm_player_gst.c
@@ -82,6 +82,28 @@ print_tag(const GstTagList *list, const gchar *tag, gpointer unused)
#endif
static gboolean
+__mmplayer_is_hls_type(gchar *type) {
+ if (g_strrstr(type, "application/x-hls"))
+ return TRUE;
+ return FALSE;
+}
+
+static gboolean
+__mmplayer_is_mpegts_type(gchar *type) {
+ if (g_strrstr(type, "video/mpegts"))
+ return TRUE;
+ return FALSE;
+}
+
+static gboolean
+__mmplayer_is_mp3_type(gchar *type) {
+ if (g_strrstr(type, "application/x-id3") ||
+ (g_strrstr(type, "audio/mpeg") && g_strrstr(type, "mpegversion=(int)1")))
+ return TRUE;
+ return FALSE;
+}
+
+static gboolean
__mmplayer_check_error_posted_from_activated_track(mmplayer_t *player, gchar *src_element_name)
{
/* check whether the error is posted from not-activated track or not */
@@ -3073,7 +3095,8 @@ __mmplayer_gst_deep_element_added(GstElement *bin, GstBin *child, GstElement *el
/* NOTE : in case of ts streaming, player could not get the correct duration info *
* skip the pull mode(file or ring buffering) setting. */
if (dur_bytes > 0) {
- if ((!g_strrstr(player->type, "video/mpegts")) && (!g_strrstr(player->type, "application/x-hls"))) {
+ if (!(__mmplayer_is_mpegts_type(player->type) || __mmplayer_is_hls_type(player->type)
+ || __mmplayer_is_mp3_type(player->type))) {
type = MUXED_BUFFER_TYPE_MEM_RING_BUFFER;
player->streamer->ring_buffer_size = player->ini.http_ring_buffer_size;
}