support local playback
[platform/core/multimedia/libmm-player.git] / src / mm_player_utils.c
index c226d90..8af1099 100644 (file)
@@ -236,12 +236,14 @@ _mmplayer_dump_pipeline_state(mmplayer_t *player)
                        switch (gst_iterator_next(iter, &item)) {
                        case GST_ITERATOR_OK:
                                element = g_value_get_object(&item);
-                               gst_element_get_state(element, &state, &pending, time);
-
-                               factory = gst_element_get_factory(element) ;
-                               if (factory)
-                                       LOGE("%s:%s : From:%s To:%s   refcount : %d", GST_OBJECT_NAME(factory) , GST_ELEMENT_NAME(element) ,
-                                               gst_element_state_get_name(state), gst_element_state_get_name(pending) , GST_OBJECT_REFCOUNT_VALUE(element));
+                               if (element) {
+                                       gst_element_get_state(element, &state, &pending, time);
+
+                                       factory = gst_element_get_factory(element) ;
+                                       if (factory)
+                                               LOGE("%s:%s : From:%s To:%s   refcount : %d", GST_OBJECT_NAME(factory) , GST_ELEMENT_NAME(element) ,
+                                                       gst_element_state_get_name(state), gst_element_state_get_name(pending) , GST_OBJECT_REFCOUNT_VALUE(element));
+                               }
                                g_value_reset(&item);
                                break;
                        case GST_ITERATOR_RESYNC:
@@ -317,7 +319,7 @@ _mmplayer_exist_file_path(const char *file_path)
        }
 
        if (fd < FD_NUM_FOR_DEBUG)
-               LOGW(("close fd %d", fd);
+               LOGW("close fd %d", fd);
        close(fd);
 
        return MM_ERROR_NONE;
@@ -643,3 +645,17 @@ media_format_mimetype_e _mmplayer_convert_audio_pcm_str_to_media_format_mime(con
                return MEDIA_FORMAT_MAX;
        }
 }
+
+gboolean _mmplayer_use_uridecodebin3(mmplayer_t *player) /* MMPLAYER_USE_URIDECODEBIN3(player) */
+{
+       MMPLAYER_RETURN_VAL_IF_FAIL(player, FALSE);
+
+       if (MMPLAYER_IS_RTSP_STREAMING(player) ||
+               MMPLAYER_IS_MS_BUFF_SRC(player))
+               return FALSE;
+
+       if (!player->ini.use_uridecodebin3)
+               return FALSE;
+
+       return TRUE;
+}