Fix codestyle and autoplug menu. 26/49326/1
authorAndrey Shelest <a.shelest@samsung.com>
Mon, 12 Oct 2015 14:09:22 +0000 (17:09 +0300)
committerAndrey Shelest <a.shelest@samsung.com>
Mon, 12 Oct 2015 14:09:22 +0000 (17:09 +0300)
Change-Id: If8e0eb87caba0947dfd45346991b1b3f10af9e06
Signed-off-by: Andrey Shelest <a.shelest@samsung.com>
include/media_streamer.h
include/media_streamer_gst.h
include/media_streamer_node.h
include/media_streamer_util.h
src/media_streamer.c
src/media_streamer_gst.c
src/media_streamer_node.c
src/media_streamer_priv.c
src/media_streamer_util.c
test/media_streamer_test.c

index 96195333b593b4ad989c1f2913bec894ff793f5c..d26c43709d15bf952ded2d3b9d22faaec5e08b20 100644 (file)
@@ -848,7 +848,7 @@ int media_streamer_get_state(media_streamer_h streamer,
  * @see media_streamer_node_destroy()
  */
 int media_streamer_node_create_src(media_streamer_node_src_type_e type,
-                              media_streamer_node_h *src);
+                                   media_streamer_node_h *src);
 
 /**
  * @brief Pushes packet into custom source node.
@@ -868,7 +868,7 @@ int media_streamer_node_create_src(media_streamer_node_src_type_e type,
  * @see #media_packet_h
  */
 int media_streamer_node_push_packet(media_streamer_node_h src,
-                               media_packet_h packet);
+                                    media_packet_h packet);
 
 /**
  * @brief Creates media streamer sink node.
@@ -890,7 +890,7 @@ int media_streamer_node_push_packet(media_streamer_node_h src,
  * @see media_streamer_node_destroy()
  */
 int media_streamer_node_create_sink(media_streamer_node_sink_type_e type,
-                               media_streamer_node_h *sink);
+                                    media_streamer_node_h *sink);
 
 /**
  * @brief Pulls packet from custom sink node.
@@ -910,7 +910,7 @@ int media_streamer_node_create_sink(media_streamer_node_sink_type_e type,
  * @see media_streamer_node_create_sink()
  */
 int media_streamer_node_pull_packet(media_streamer_node_h sink,
-                               media_packet_h *packet);
+                                    media_packet_h *packet);
 
 /**
  * @brief Creates media streamer node except MEDIA_STREAMER_NODE_TYPE_SRC and MEDIA_STREAMER_NODE_TYPE_SINK.
@@ -1046,8 +1046,8 @@ int media_streamer_node_link(media_streamer_node_h src_node,
  * @see #media_format_h
  */
 int media_streamer_node_set_pad_format(media_streamer_node_h node,
-                                   const char *pad_name,
-                                   media_format_h fmt);
+                                       const char *pad_name,
+                                       media_format_h fmt);
 
 /**
  * @brief Gets media format for pad of media streamer node.
@@ -1066,8 +1066,8 @@ int media_streamer_node_set_pad_format(media_streamer_node_h node,
  * @see #media_format_h
  */
 int media_streamer_node_get_pad_format(media_streamer_node_h node,
-                                   const char *pad_name,
-                                   media_format_h *fmt);
+                                       const char *pad_name,
+                                       media_format_h *fmt);
 
 /**
  * @brief Gets name of node pads.
@@ -1092,10 +1092,10 @@ int media_streamer_node_get_pad_format(media_streamer_node_h node,
  * @see media_streamer_node_create_sink()
  */
 int media_streamer_node_get_pad_name(media_streamer_node_h node,
-                                       char ***src_pad_name,
-                                       int *src_pad_num,
-                                       char ***sink_pad_name,
-                                       int *sink_pad_num);
+                                     char ***src_pad_name,
+                                     int *src_pad_num,
+                                     char ***sink_pad_name,
+                                     int *sink_pad_num);
 
 
 /**
@@ -1165,7 +1165,7 @@ int media_streamer_node_get_params(media_streamer_node_h node,
  * @see media_streamer_node_get_param()
  */
 int media_streamer_node_set_param(media_streamer_node_h node,
-                                 const char *param_name, const char *param_value);
+                                  const char *param_name, const char *param_value);
 
 
 /**
index c664cc7a6da1149f11e3ecc85882872b89e45dd2..8a11b992c6289309644a8dcab3fe92856bcda524 100755 (executable)
@@ -64,9 +64,9 @@ GstElement *__ms_create_element_by_registry(GstPad *src_pad, const gchar *klass_
  *
  * @since_tizen 3.0
  */
-GstElement * __ms_link_with_new_element(GstElement *previous_element,
-                                        GstElement *new_element,
-                                        const gchar *next_elem_bin_name);
+GstElement *__ms_link_with_new_element(GstElement *previous_element,
+                                       GstElement *new_element,
+                                       const gchar *next_elem_bin_name);
 
 /**
  * @brief Creates GstElement by plugin name.
@@ -150,7 +150,7 @@ gint __ms_decodebin_autoplug_select(GstElement *bin,
                                     gpointer data);
 
 /**
- * @brief Callback function to link decodebin for file playing.
+ * @brief Callback function to link decodebin with the sink element at the streamer part.
  *
  * @since_tizen 3.0
  */
@@ -175,11 +175,11 @@ void __decodebin_newpad_client_cb(GstElement *decodebin, GstPad *pad, gpointer u
  *
  * @since_tizen 3.0
  */
-GstElement * __ms_combine_next_element(GstElement *previous_element,
-                                       const gchar *next_elem_klass_name,
-                                       const gchar *next_elem_bin_name,
-                                       const gchar *element_type,
-                                       gchar *default_element);
+GstElement *__ms_combine_next_element(GstElement *previous_element,
+                                      const gchar *next_elem_klass_name,
+                                      const gchar *next_elem_bin_name,
+                                      const gchar *element_type,
+                                      gchar *default_element);
 
 /**
  * @brief Creates pipeline, bus and src/sink/topology bins.
@@ -223,6 +223,13 @@ media_format_h __ms_element_get_pad_fmt(GstElement *gst_element, const char *pad
  */
 int __ms_element_set_fmt(media_streamer_node_s *node, const char *pad_name, media_format_h fmt);
 
+/**
+ * @brief Seeks GstElement to according time value.
+ *
+ * @since_tizen 3.0
+ */
+gboolean __ms_gst_seek(GstElement *element, gint64 g_time, GstSeekFlags seek_flag);
+
 /**
  * @brief Push the media packet buffer to the source element.
  *
index afb522fe006da4e8ccf3117121b4fe61a2b51509..74d919a346d96b77c89a773eeeee7320a91c7cad 100755 (executable)
@@ -22,8 +22,8 @@
  * @since_tizen 3.0
  */
 int __ms_node_set_property(media_streamer_node_s *ms_node,
-                                  const gchar *param_key,
-                                  const gchar *param_value);
+                           const gchar *param_key,
+                           const gchar *param_value);
 
 /**
  * @brief Creates media streamer node using input and output format.
index 074d3d821c76b6d9f45dfc18e976507c8863097b..71643e80f858986a092e0a0efd542cc8695966a3 100755 (executable)
@@ -108,7 +108,7 @@ typedef struct __media_streamer_ini {
 /* setting default values if each value is not specified in .ini file */
 /* general */
 #define DEFAULT_GENERATE_DOT                FALSE
-#define DEFAULT_USE_DECODEBIN                          FALSE
+#define DEFAULT_USE_DECODEBIN               FALSE
 #define DEFAULT_AUDIO_SOURCE                "alsasrc"
 #define DEFAULT_CAMERA_SOURCE               "v4l2src"
 #define DEFAULT_VIDEO_SOURCE                "ximagesrc"
@@ -140,7 +140,7 @@ typedef struct __media_streamer_ini {
 #define DEFAULT_AUDIO_RTPDEPAY              "rtpL16depay"
 
 #define MEDIA_STREAMER_DEFAULT_CAMERA_FORMAT "video/x-raw,width=1280,height=720"
-#define MEDIA_STREAMER_DEFAULT_AUDIO_FORMAT "audio/x-raw,channels=1,rate=44100,format=S16BE"
+#define MEDIA_STREAMER_DEFAULT_AUDIO_FORMAT "audio/x-raw,channels=1,rate=44100,format=S16LE"
 #define MEDIA_STREAMER_DEFAULT_ENCODER_FORMAT "video/x-h263,stream-format=byte-stream,profile=high"
 
 #define MS_ELEMENT_IS_OUTPUT(el) g_strrstr(el, "out")
@@ -152,8 +152,7 @@ typedef struct __media_streamer_ini {
 #define MS_ELEMENT_IS_DECODER(el) g_strrstr(el, "decoder")
 
 #define MEDIA_STREAMER_DEFAULT_DOT_DIR "/tmp"
-#define MEDIA_STREAMER_DEFAULT_INI \
-"\
+#define MEDIA_STREAMER_DEFAULT_INI "\
 [general] \n\
 ; generating dot file representing pipeline state \n\
 generate dot = no \n\
index c212b403b38d5aa53ec90179162aecea240909a2..508306e292a2ca35931b9864798f3d8c58b22506 100755 (executable)
@@ -30,7 +30,7 @@
 */
 
 int media_streamer_node_create_src(media_streamer_node_src_type_e type,
-                              media_streamer_node_h *src)
+                                   media_streamer_node_h *src)
 {
        int ret = MEDIA_STREAMER_ERROR_NONE;
 
@@ -57,7 +57,7 @@ int media_streamer_node_create_src(media_streamer_node_src_type_e type,
 }
 
 int media_streamer_node_create_sink(media_streamer_node_sink_type_e type,
-                               media_streamer_node_h *sink)
+                                    media_streamer_node_h *sink)
 {
        int ret = MEDIA_STREAMER_ERROR_NONE;
 
@@ -554,21 +554,21 @@ int media_streamer_get_play_position(media_streamer_h streamer, int *time)
 }
 
 int media_streamer_node_push_packet(media_streamer_node_h src,
-                               media_packet_h packet)
+                                    media_packet_h packet)
 {
        media_streamer_node_s *ms_node = (media_streamer_node_s *)src;
        ms_retvm_if(ms_node == NULL, MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Handle is NULL");
 
        ms_retvm_if(ms_node->type != MEDIA_STREAMER_NODE_TYPE_SRC,
-                       MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Node type must be Src type for pushing packets.");
+                   MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Node type must be Src type for pushing packets.");
        ms_retvm_if(ms_node->subtype != MEDIA_STREAMER_NODE_SRC_TYPE_CUSTOM,
-                       MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Source Node must be a custom type for pushing packets.");
+                   MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Source Node must be a custom type for pushing packets.");
 
        return __ms_element_push_packet(ms_node->gst_element, packet);
 }
 
 int media_streamer_node_pull_packet(media_streamer_node_h sink,
-                               media_packet_h *packet)
+                                    media_packet_h *packet)
 {
        media_streamer_node_s *ms_node = (media_streamer_node_s *)sink;
        ms_retvm_if(ms_node == NULL, MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Handle is NULL");
@@ -576,9 +576,9 @@ int media_streamer_node_pull_packet(media_streamer_node_h sink,
 
        ms_retvm_if(ms_node->gst_element == NULL, MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Handle is NULL");
        ms_retvm_if(ms_node->type != MEDIA_STREAMER_NODE_TYPE_SINK,
-                       MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Node type must be Sink type for pulling packets.");
+                   MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Node type must be Sink type for pulling packets.");
        ms_retvm_if(ms_node->subtype != MEDIA_STREAMER_NODE_SINK_TYPE_CUSTOM,
-                       MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Sink Node must be a custom type for pulling packets.");
+                   MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Sink Node must be a custom type for pulling packets.");
 
        return __ms_element_pull_packet(ms_node->gst_element, packet);
 }
@@ -707,7 +707,7 @@ int media_streamer_node_get_params(media_streamer_node_h node,
 }
 
 int media_streamer_node_set_param(media_streamer_node_h node,
-                                 const char *param_name, const char *param_value)
+                                  const char *param_name, const char *param_value)
 {
        media_streamer_node_s *ms_node = (media_streamer_node_s *)node;
        ms_retvm_if(ms_node == NULL, MEDIA_STREAMER_ERROR_INVALID_PARAMETER, "Handle is NULL");
@@ -729,7 +729,7 @@ int media_streamer_node_get_param(media_streamer_node_h node,
 
        char *ms_param = NULL;
 
-       if (__ms_node_write_param_into_value(ms_node, param_name,&ms_param) != MEDIA_STREAMER_ERROR_NONE) {
+       if (__ms_node_write_param_into_value(ms_node, param_name, &ms_param) != MEDIA_STREAMER_ERROR_NONE) {
                ms_info("Node [%s] does not have param [%s]", ms_node->name, param_name);
 
                return MEDIA_STREAMER_ERROR_INVALID_OPERATION;
index 97642fcf39ce301323bd83417b81834be142a7de..b7dcc8e2e815b4a189a1aac8bc38d9d7b0a19efd 100755 (executable)
@@ -42,8 +42,8 @@ static int __ms_add_no_target_ghostpad(GstElement *gst_bin,
        gchar *bin_name = gst_element_get_name(gst_bin);
        GstPad *ghost_pad = gst_ghost_pad_new_no_target(ghost_pad_name, pad_direction);
        if (gst_element_add_pad(GST_ELEMENT(gst_bin), ghost_pad)) {
-       gst_pad_set_active(ghost_pad, TRUE);
-       ms_info("Added [%s] empty ghostpad into [%s]", ghost_pad_name, bin_name);
+               gst_pad_set_active(ghost_pad, TRUE);
+               ms_info("Added [%s] empty ghostpad into [%s]", ghost_pad_name, bin_name);
        } else {
                ms_info("Error: Failed to add empty [%s] ghostpad into [%s]", ghost_pad_name, bin_name);
                ret = MEDIA_STREAMER_ERROR_INVALID_OPERATION;
@@ -82,7 +82,7 @@ static int __ms_add_ghostpad(GstElement *gst_element,
                ret = MEDIA_STREAMER_ERROR_NONE;
        } else {
                ms_error("Error: element [%s] does not have valid [%s] pad for adding into [%s] bin",
-                               element_name, pad_name, bin_name);
+                        element_name, pad_name, bin_name);
                ret = MEDIA_STREAMER_ERROR_INVALID_OPERATION;
        }
 
@@ -134,8 +134,7 @@ gboolean __ms_element_set_property(GstElement *element, const char *key, const g
 
        __ms_node_check_param_name(element, TRUE, key, &init_name);
 
-       if (init_name)
-       {
+       if (init_name) {
                GObject *obj = __ms_get_property_owner(element, init_name, &value);
 
                if (obj == NULL) {
@@ -424,7 +423,7 @@ int __ms_get_rank_increase(const char *factory_name)
 int __ms_factory_rank_compare(GstPluginFeature *first_feature, GstPluginFeature *second_feature)
 {
        const gchar *name;
-       int first_feature_rank_inc=0, second_feature_rank_inc = 0;
+       int first_feature_rank_inc = 0, second_feature_rank_inc = 0;
 
        name = gst_plugin_feature_get_plugin_name(first_feature);
        first_feature_rank_inc = __ms_get_rank_increase(name);
@@ -433,7 +432,7 @@ int __ms_factory_rank_compare(GstPluginFeature *first_feature, GstPluginFeature
        second_feature_rank_inc = __ms_get_rank_increase(name);
 
        return (gst_plugin_feature_get_rank(second_feature) + second_feature_rank_inc) -
-                (gst_plugin_feature_get_rank(first_feature) + first_feature_rank_inc );
+              (gst_plugin_feature_get_rank(first_feature) + first_feature_rank_inc);
 }
 
 gboolean __ms_feature_filter(GstPluginFeature *feature, gpointer data)
@@ -453,15 +452,14 @@ GstElement *__ms_create_element_by_registry(GstPad *src_pad, const gchar *klass_
        GstCaps *new_pad_caps = gst_pad_query_caps(src_pad, NULL);
 
        factories = gst_registry_feature_filter(gst_registry_get(),
-                                           (GstPluginFeatureFilter)__ms_feature_filter, FALSE, NULL);
+                                               (GstPluginFeatureFilter)__ms_feature_filter, FALSE, NULL);
        factories = g_list_sort(factories, (GCompareFunc)__ms_factory_rank_compare);
 
-       for(; factories != NULL ; factories = factories->next) {
+       for (; factories != NULL ; factories = factories->next) {
                GstElementFactory *factory = GST_ELEMENT_FACTORY(factories->data);
 
-               if (g_strrstr(gst_element_factory_get_klass(GST_ELEMENT_FACTORY(factory)), klass_name))
-               {
-                       for(pads = gst_element_factory_get_static_pad_templates(factory); pads != NULL; pads = pads->next) {
+               if (g_strrstr(gst_element_factory_get_klass(GST_ELEMENT_FACTORY(factory)), klass_name)) {
+                       for (pads = gst_element_factory_get_static_pad_templates(factory); pads != NULL; pads = pads->next) {
 
                                GstCaps *intersect_caps = NULL;
                                GstCaps *static_caps = NULL;
@@ -480,6 +478,7 @@ GstElement *__ms_create_element_by_registry(GstPad *src_pad, const gchar *klass_
                                intersect_caps = gst_caps_intersect_full(new_pad_caps, static_caps, GST_CAPS_INTERSECT_FIRST);
 
                                if ((!gst_caps_is_any(static_caps)) && (!gst_caps_is_empty(intersect_caps))) {
+
                                        if (!next_element) {
                                                next_element = __ms_element_create(GST_OBJECT_NAME(factory), NULL);
                                        }
@@ -494,9 +493,9 @@ GstElement *__ms_create_element_by_registry(GstPad *src_pad, const gchar *klass_
        return next_element;
 }
 
-GstElement * __ms_link_with_new_element(GstElement *previous_element,
-                                        GstElement *new_element,
-                                        const gchar *next_elem_bin_name)
+GstElement *__ms_link_with_new_element(GstElement *previous_element,
+                                       GstElement *new_element,
+                                       const gchar *next_elem_bin_name)
 {
        GstCaps *new_pad_caps = NULL;
        GstStructure *new_pad_struct = NULL;
@@ -518,16 +517,16 @@ GstElement * __ms_link_with_new_element(GstElement *previous_element,
                        new_pad_type = gst_structure_get_name(new_pad_struct);
 
                        if (!gst_pad_is_linked(sink_pad)) {
-                               if(!strncmp(new_pad_type,GST_PAD_NAME(sink_pad), COMPARED_NUMBER)) {
+                               if (!strncmp(new_pad_type, GST_PAD_NAME(sink_pad), COMPARED_NUMBER)) {
                                        if (gst_element_link_pads_filtered(previous_element, "src", new_element,
-                                                       GST_PAD_NAME(sink_pad), NULL)) {
+                                                                          GST_PAD_NAME(sink_pad), NULL)) {
                                                ms_info("Succeeded to link [%s] -> [%s]\n",
-                                GST_ELEMENT_NAME(previous_element),
-                                GST_ELEMENT_NAME(new_element));
+                                                       GST_ELEMENT_NAME(previous_element),
+                                                       GST_ELEMENT_NAME(new_element));
                                        } else {
                                                ms_error("Failed to link [%s] -> [%s]\n",
-                                 GST_ELEMENT_NAME(previous_element),
-                                 GST_ELEMENT_NAME(new_element));
+                                                        GST_ELEMENT_NAME(previous_element),
+                                                        GST_ELEMENT_NAME(new_element));
                                        }
                                }
                        }
@@ -544,12 +543,12 @@ GstElement * __ms_link_with_new_element(GstElement *previous_element,
 
                if (ret) {
                        ms_info("Succeeded to link [%s] -> [%s]\n",
-                    GST_ELEMENT_NAME(previous_element),
-                    GST_ELEMENT_NAME(new_element));
+                               GST_ELEMENT_NAME(previous_element),
+                               GST_ELEMENT_NAME(new_element));
                } else {
                        ms_error("Failed to link [%s] and [%s] \n",
-                     GST_ELEMENT_NAME(previous_element),
-                     GST_ELEMENT_NAME(new_element));
+                                GST_ELEMENT_NAME(previous_element),
+                                GST_ELEMENT_NAME(new_element));
 
                        /*Remove created element*/
                        if (gst_bin_remove(GST_BIN(GST_ELEMENT_PARENT(new_element)), new_element)) {
@@ -572,7 +571,7 @@ GstElement *__ms_combine_next_element(GstElement *previous_element,
        GstElement *found_element = NULL;
        GstElement *parent_element = NULL;
 
-       if(!previous_element) {
+       if (!previous_element) {
                return NULL;
        }
 
@@ -593,12 +592,14 @@ GstElement *__ms_combine_next_element(GstElement *previous_element,
                        ms_error("Bin [%s] was not found", next_elem_bin_name);
                        return NULL;
 
-               /* Create element by element name*/
-               } else if(!found_element && !next_elem_klass_name && default_element) {
+                       /* Create element by element name*/
+               } else if (!found_element && !next_elem_klass_name && default_element) {
                        found_element = __ms_element_create(default_element, NULL);
 
-               /* Create element by predefined format element type*/
-               } else if(!found_element && MS_ELEMENT_IS_ENCODER(next_elem_bin_name)) {
+                       /* Create element by predefined format element type*/
+               } else if (!found_element
+                               && next_elem_bin_name
+                               && MS_ELEMENT_IS_ENCODER(next_elem_bin_name)) {
 
                        dictionary *dict = NULL;
 
@@ -612,7 +613,7 @@ GstElement *__ms_combine_next_element(GstElement *previous_element,
 
                        __ms_destroy_ini_dictionary(dict);
 
-               /* Create element by caps of the previous element */
+                       /* Create element by caps of the previous element */
                } else if (!found_element) {
                        GstPad *src_pad = gst_element_get_static_pad(previous_element, "src");
                        found_element = __ms_create_element_by_registry(src_pad, next_elem_klass_name);
@@ -623,21 +624,21 @@ GstElement *__ms_combine_next_element(GstElement *previous_element,
                if (found_element) {
                        if (gst_bin_add(GST_BIN(parent_element), found_element)) {
                                ms_debug("Element [%s] added into [%s] bin",
-                                                GST_ELEMENT_NAME(found_element),
-                                                GST_ELEMENT_NAME(parent_element));
+                                        GST_ELEMENT_NAME(found_element),
+                                        GST_ELEMENT_NAME(parent_element));
 
                                gst_element_sync_state_with_parent(found_element);
                                previous_element = __ms_link_with_new_element(previous_element, found_element, NULL);
                                __ms_generate_dots(parent_element, GST_ELEMENT_NAME(found_element));
                        } else {
                                ms_error("Element [%s] was not added into [%s] bin",
-                                                GST_ELEMENT_NAME(found_element),
-                                                GST_ELEMENT_NAME(parent_element));
+                                        GST_ELEMENT_NAME(found_element),
+                                        GST_ELEMENT_NAME(parent_element));
                                MS_SAFE_UNREF(found_element);
                                found_element = NULL;
                        }
                } else {
-                       ms_error("Could not find compatible element to link [%s]",GST_ELEMENT_NAME(previous_element));
+                       ms_error("Could not find compatible element to link [%s]", GST_ELEMENT_NAME(previous_element));
                }
        }
 
@@ -646,7 +647,7 @@ GstElement *__ms_combine_next_element(GstElement *previous_element,
        return found_element;
 }
 
- gint __ms_decodebin_autoplug_select(GstElement *bin,
+gint __ms_decodebin_autoplug_select(GstElement *bin,
                                     GstPad *pad,
                                     GstCaps *caps,
                                     GstElementFactory *factory,
@@ -654,9 +655,9 @@ GstElement *__ms_combine_next_element(GstElement *previous_element,
 {
        /* NOTE : GstAutoplugSelectResult is defined in gstplay-enum.h but not exposed */
        typedef enum {
-               GST_AUTOPLUG_SELECT_TRY,
-               GST_AUTOPLUG_SELECT_EXPOSE,
-               GST_AUTOPLUG_SELECT_SKIP
+           GST_AUTOPLUG_SELECT_TRY,
+           GST_AUTOPLUG_SELECT_EXPOSE,
+           GST_AUTOPLUG_SELECT_SKIP
        } GstAutoplugSelectResult;
 
        gchar *factory_name = NULL;
@@ -703,8 +704,7 @@ void __decodebin_newpad_streamer_cb(GstElement *decodebin, GstPad *new_pad, gpoi
        new_pad_struct = gst_caps_get_structure(new_pad_caps, 0);
        new_pad_type = gst_structure_get_name(new_pad_struct);
 
-       if (g_str_has_prefix(new_pad_type, "video"))
-       {
+       if (g_str_has_prefix(new_pad_type, "video")) {
                found_element = __ms_combine_next_element(decodebin, NULL, NULL, NULL, DEFAULT_QUEUE);
                found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_BIN_KLASS, "video_encoder", "encoder", DEFAULT_VIDEO_ENCODER);
                found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_PAYLOADER_KLASS, NULL, NULL, NULL);
@@ -769,14 +769,14 @@ void __decodebin_newpad_cb(GstElement *decodebin, GstPad *new_pad, gpointer user
                /*Add created sink bin*/
                if (gst_bin_add(GST_BIN(ms_streamer->pipeline), sink_bin)) {
                        ms_debug("Bin [%s] added into [%s] bin",
-                                        GST_ELEMENT_NAME(sink_bin),
-                                        GST_ELEMENT_NAME(ms_streamer->pipeline));
+                                GST_ELEMENT_NAME(sink_bin),
+                                GST_ELEMENT_NAME(ms_streamer->pipeline));
 
                        gst_element_sync_state_with_parent(sink_bin);
                } else {
                        ms_error("Bin [%s] was not added into [%s] bin",
-                                        GST_ELEMENT_NAME(sink_bin),
-                                        GST_ELEMENT_NAME(ms_streamer->pipeline));
+                                GST_ELEMENT_NAME(sink_bin),
+                                GST_ELEMENT_NAME(ms_streamer->pipeline));
                }
 
                queue_element = __ms_element_create(DEFAULT_QUEUE, NULL);
@@ -784,23 +784,23 @@ void __decodebin_newpad_cb(GstElement *decodebin, GstPad *new_pad, gpointer user
                /*Add created queue element*/
                if (gst_bin_add(GST_BIN(sink_bin), queue_element)) {
                        ms_debug("Element [%s] added into [%s] bin",
-                                        GST_ELEMENT_NAME(queue_element),
-                                        GST_ELEMENT_NAME(sink_bin));
+                                GST_ELEMENT_NAME(queue_element),
+                                GST_ELEMENT_NAME(sink_bin));
 
                        gst_element_sync_state_with_parent(queue_element);
                        found_element = __ms_link_with_new_element(found_element, queue_element, NULL);
                        __ms_generate_dots(ms_streamer->pipeline, GST_ELEMENT_NAME(found_element));
                } else {
                        ms_error("Element [%s] was not added into [%s] bin",
-                                        GST_ELEMENT_NAME(queue_element),
-                                        GST_ELEMENT_NAME(sink_bin));
+                                GST_ELEMENT_NAME(queue_element),
+                                GST_ELEMENT_NAME(sink_bin));
                }
        }
 
        /* Getting Sink */
        found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_SINK_KLASS, NULL, NULL, NULL);
 
-       if(!found_element) {
+       if (!found_element) {
                ms_error("Could not link to sink element \n");
        }
 
@@ -841,8 +841,7 @@ void __decodebin_newpad_client_cb(GstElement *decodebin, GstPad *new_pad, gpoint
 
                found_element = __ms_combine_next_element(decodebin, NULL, NULL, NULL, DEFAULT_TEXT_OVERLAY);
                found_element = __ms_combine_next_element(found_element, NULL, NULL, NULL, DEFAULT_VIDEO_CONVERT);
-       }
-       else {
+       } else {
                ms_error("Pad type of the element is invalid");
                return;
        }
@@ -850,7 +849,7 @@ void __decodebin_newpad_client_cb(GstElement *decodebin, GstPad *new_pad, gpoint
        /* Getting Sink */
        found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_SINK_KLASS, NULL, NULL, NULL);
 
-       if(!found_element) {
+       if (!found_element) {
                ms_error("Could not link to sink element \n");
        }
        gst_caps_unref(new_pad_caps);
@@ -870,18 +869,18 @@ static gboolean __ms_sink_bin_prepare(media_streamer_node_s *ms_node,
 
        /* Getting Depayloader */
        found_element = __ms_bin_find_element_by_klass(sink_bin, MEDIA_STREAMER_DEPAYLOADER_KLASS,
-                                                   MEDIA_STREAMER_NODE_TYPE_NONE);
+                                                      MEDIA_STREAMER_NODE_TYPE_NONE);
 
        if (!found_element) {
                found_element = __ms_create_element_by_registry(source_pad, MEDIA_STREAMER_DEPAYLOADER_KLASS);
                if (gst_bin_add(GST_BIN(sink_bin), found_element)) {
                        ms_debug("Succeeded to add element [%s] into bin [%s]",
-                     GST_ELEMENT_NAME(found_element),
-                     GST_ELEMENT_NAME(sink_bin));
+                                GST_ELEMENT_NAME(found_element),
+                                GST_ELEMENT_NAME(sink_bin));
                } else {
                        ms_error("Failed to add element [%s] into bin [%s]",
-                     GST_ELEMENT_NAME(found_element),
-                     GST_ELEMENT_NAME(sink_bin));
+                                GST_ELEMENT_NAME(found_element),
+                                GST_ELEMENT_NAME(sink_bin));
                }
        }
 
@@ -899,7 +898,7 @@ static gboolean __ms_sink_bin_prepare(media_streamer_node_s *ms_node,
                        found_element = __ms_element_create("decodebin", NULL);
                        gst_bin_add_many((GstBin *)sink_bin, found_element, NULL);
                        gst_element_sync_state_with_parent(found_element);
-                       g_signal_connect(found_element, "pad-added", G_CALLBACK(__decodebin_newpad_client_cb), (gpointer )ms_node);
+                       g_signal_connect(found_element, "pad-added", G_CALLBACK(__decodebin_newpad_client_cb), (gpointer)ms_node);
                        g_signal_connect(found_element, "autoplug-select", G_CALLBACK(__ms_decodebin_autoplug_select), NULL);
                        previous_element = __ms_link_with_new_element(previous_element, found_element, NULL);
                        __ms_element_set_state(found_element, GST_STATE_PLAYING);
@@ -911,13 +910,13 @@ static gboolean __ms_sink_bin_prepare(media_streamer_node_s *ms_node,
                        new_pad_type = gst_structure_get_name(new_pad_struct);
 
                        /* Getting elements if Decodebin is not used */
-                       if(MS_ELEMENT_IS_VIDEO(new_pad_type)) {
+                       if (MS_ELEMENT_IS_VIDEO(new_pad_type)) {
                                previous_element = __ms_combine_next_element(previous_element, MEDIA_STREAMER_PARSER_KLASS, NULL, NULL, NULL);
                                previous_element = __ms_combine_next_element(previous_element, MEDIA_STREAMER_DECODER_KLASS, NULL, NULL, NULL);
                                previous_element = __ms_combine_next_element(previous_element, NULL, NULL, NULL, DEFAULT_QUEUE);
                                previous_element = __ms_combine_next_element(previous_element, NULL, NULL, NULL, DEFAULT_VIDEO_CONVERT);
                        }
-                       if(MS_ELEMENT_IS_AUDIO(new_pad_type)) {
+                       if (MS_ELEMENT_IS_AUDIO(new_pad_type)) {
                                previous_element = __ms_combine_next_element(previous_element, NULL, NULL, NULL, DEFAULT_AUDIO_CONVERT);
                        }
 
@@ -940,7 +939,7 @@ static gboolean __ms_sink_bin_prepare(media_streamer_node_s *ms_node,
                if (!decodebin_usage) {
 
                        /* Find sink element and link with it, if it was not linked yet */
-                       previous_element = __ms_combine_next_element(previous_element, MEDIA_STREAMER_SINK_KLASS, NULL,NULL, NULL);
+                       previous_element = __ms_combine_next_element(previous_element, MEDIA_STREAMER_SINK_KLASS, NULL, NULL, NULL);
                        if (!gst_pad_is_linked(src_pad)) {
                                previous_element = __ms_link_with_new_element(previous_element, found_element, NULL);
                        }
@@ -1002,7 +1001,7 @@ static void __ms_rtpbin_pad_added_cb(GstElement *src, GstPad *new_pad, gpointer
                                        add_ret = gst_bin_add(GST_BIN(ms_node->parent_streamer->pipeline), sink_bin);
                                }
 
-                               if(add_ret) {
+                               if (add_ret) {
                                        gst_element_sync_state_with_parent(sink_bin);
 
                                        if (gst_element_link_pads(ms_node->gst_element, source_pad_name, sink_bin, "sink")) {
@@ -1040,7 +1039,7 @@ int __ms_element_set_state(GstElement *gst_element, GstState gst_state)
        ret_state = gst_element_set_state(gst_element, gst_state);
        if (ret_state == GST_STATE_CHANGE_FAILURE) {
                ms_error("Failed to set element [%s] into %s state",
-                 element_name, gst_element_state_get_name(gst_state));
+                        element_name, gst_element_state_get_name(gst_state));
                MS_SAFE_GFREE(element_name);
                return MEDIA_STREAMER_ERROR_INVALID_OPERATION;
        }
@@ -1231,7 +1230,7 @@ GstElement *__ms_rtp_element_create(media_streamer_node_s *ms_node)
        ms_retvm_if(!rtp_container || !rtp_elem, (GstElement *)NULL,
                    "Error: creating elements for rtp container");
 
-       if(!gst_bin_add(GST_BIN(rtp_container), rtp_elem)) {
+       if (!gst_bin_add(GST_BIN(rtp_container), rtp_elem)) {
                MS_SAFE_UNREF(rtp_container);
                MS_SAFE_UNREF(rtp_elem);
                return NULL;
@@ -1427,7 +1426,7 @@ __ms_parse_gst_error(media_streamer_s *ms_streamer, GstMessage *message, GError
        }
 
        /* post error to application */
-       if(ms_streamer->error_cb.callback) {
+       if (ms_streamer->error_cb.callback) {
                media_streamer_error_cb error_cb = (media_streamer_error_cb)ms_streamer->error_cb.callback;
                error_cb((media_streamer_h)ms_streamer, ret_error, ms_streamer->error_cb.user_data);
        }
@@ -1474,7 +1473,7 @@ static gboolean __ms_bus_cb(GstBus *bus, GstMessage *message, gpointer userdata)
                                                                                        gst_element_state_get_name(state_new));
                                                ms_info("GST_MESSAGE_STATE_CHANGED: [%s] %s",
                                                        gst_object_get_name(GST_MESSAGE_SRC(message)),
-                                                               state_transition_name);
+                                                       state_transition_name);
                                                __ms_generate_dots(ms_streamer->pipeline, state_transition_name);
 
                                                MS_SAFE_GFREE(state_transition_name);
@@ -1625,7 +1624,7 @@ static media_format_h __ms_create_fmt_from_caps(GstCaps *caps)
 
        fmt_ret  = media_format_create(&fmt);
        ms_retvm_if(fmt_ret != MEDIA_FORMAT_ERROR_NONE, NULL,
-                       "Error: while creating media format object, err[%d]!", fmt_ret);
+                   "Error: while creating media format object, err[%d]!", fmt_ret);
 
        pad_struct = gst_caps_get_structure(caps, 0);
        const gchar *pad_type = gst_structure_get_name(pad_struct);
@@ -1671,9 +1670,9 @@ int __ms_iterate_pads(GstElement *gst_element, GstPadDirection pad_type, char **
        char **pad_names = NULL;
        GstIterator *pad_iterator = NULL;
 
-       if(pad_type == GST_PAD_SRC) {
+       if (pad_type == GST_PAD_SRC) {
                pad_iterator = gst_element_iterate_src_pads(gst_element);
-       } else if(pad_type == GST_PAD_SINK) {
+       } else if (pad_type == GST_PAD_SINK) {
                pad_iterator = gst_element_iterate_sink_pads(gst_element);
        } else {
                pad_iterator = gst_element_iterate_pads(gst_element);
@@ -1683,8 +1682,8 @@ int __ms_iterate_pads(GstElement *gst_element, GstPadDirection pad_type, char **
        while (GST_ITERATOR_OK == gst_iterator_next(pad_iterator, &elem)) {
                pad = (GstPad *)g_value_get_object(&elem);
 
-               pad_names = (char **)realloc(pad_names, sizeof(char *) * (pad_number + 1));
-               if(!pad_names){
+               pad_names = (char **)realloc(pad_names, sizeof(char *)*(pad_number + 1));
+               if (!pad_names) {
                        ms_error("Error allocation memory");
                        ret = MEDIA_STREAMER_ERROR_INVALID_OPERATION;
                        pad_number = 0;
@@ -1760,7 +1759,7 @@ int __ms_element_set_fmt(media_streamer_node_s *node, const char *pad_name, medi
                        __ms_get_rtp_elements(node, &rtp_elem, &rtcp_elem, "video", "in", FALSE);
 
                        rtp_caps_str = g_strdup_printf("application/x-rtp,media=video,clock-rate=90000,encoding-name=%s",
-                                       __ms_convert_mime_to_rtp_format(mime));
+                                                      __ms_convert_mime_to_rtp_format(mime));
                        caps = gst_caps_from_string(rtp_caps_str);
                        ms_retvm_if(caps == NULL, MEDIA_STREAMER_ERROR_INVALID_OPERATION, "Fail creating caps from fmt.");
 
@@ -1769,7 +1768,7 @@ int __ms_element_set_fmt(media_streamer_node_s *node, const char *pad_name, medi
                        __ms_get_rtp_elements(node, &rtp_elem, &rtcp_elem, "audio", "in", FALSE);
 
                        rtp_caps_str = g_strdup_printf("application/x-rtp,media=audio,clock-rate=%d,encoding-name=%s,channels=%d,payload=96",
-                                       audio_samplerate, __ms_convert_mime_to_rtp_format(mime), audio_channels);
+                                                      audio_samplerate, __ms_convert_mime_to_rtp_format(mime), audio_channels);
                        caps = gst_caps_from_string(rtp_caps_str);
                        ms_retvm_if(caps == NULL, MEDIA_STREAMER_ERROR_INVALID_OPERATION, "Fail creating caps from fmt.");
 
@@ -1827,7 +1826,7 @@ int __ms_element_push_packet(GstElement *src_element, media_packet_h packet)
 
        media_packet_get_buffer_data_ptr(packet, (void **)&buffer_data);
 
-       if(buffer_data != NULL) {
+       if (buffer_data != NULL) {
                GstMapInfo buff_info = GST_MAP_INFO_INIT;
                guint64 pts = 0;
                guint64 duration = 0;
@@ -1835,16 +1834,16 @@ int __ms_element_push_packet(GstElement *src_element, media_packet_h packet)
 
                media_packet_get_buffer_size(packet, &size);
 
-               buffer = gst_buffer_new_and_alloc (size);
+               buffer = gst_buffer_new_and_alloc(size);
                if (!buffer) {
                        ms_error("Failed to allocate memory for push buffer");
                        return MEDIA_STREAMER_ERROR_INVALID_OPERATION;
                }
 
-               if (gst_buffer_map (buffer, &buff_info, GST_MAP_READWRITE)) {
-                       memcpy (buff_info.data, buffer_data, size);
+               if (gst_buffer_map(buffer, &buff_info, GST_MAP_READWRITE)) {
+                       memcpy(buff_info.data, buffer_data, size);
                        buff_info.size = size;
-                       gst_buffer_unmap (buffer, &buff_info);
+                       gst_buffer_unmap(buffer, &buff_info);
                }
 
                media_packet_get_pts(packet, &pts);
@@ -1857,7 +1856,7 @@ int __ms_element_push_packet(GstElement *src_element, media_packet_h packet)
                gst_buffer_unref(buffer);
 
        } else {
-                g_signal_emit_by_name(G_OBJECT(src_element), "end-of-stream", &gst_ret, NULL);
+               g_signal_emit_by_name(G_OBJECT(src_element), "end-of-stream", &gst_ret, NULL);
        }
 
        if (gst_ret != GST_FLOW_OK) {
index cb4c07e90e05bb3f1a856f047ebbc38be2e5d2ff..f5580017d38381026398b47560933bf6b0c87c02 100755 (executable)
@@ -153,27 +153,24 @@ int __ms_node_create(media_streamer_node_s *node,
        switch (node->type) {
                case MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER:
                        format_prefix = g_strdup_printf("%s:encoder", __ms_convert_mime_to_string(mime));
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         format_prefix, DEFAULT_VIDEO_ENCODER);
+                       plugin_name = __ms_ini_get_string(dict, format_prefix, DEFAULT_VIDEO_ENCODER);
                        node->gst_element = __ms_video_encoder_element_create(dict, mime);
                        break;
                case MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER:
                        dec_use = iniparser_getboolean(dict, "general:use decodebin", DEFAULT_USE_DECODEBIN);
                        if (dec_use) {
                                node->gst_element = __ms_element_create("decodebin", NULL);
-                               g_signal_connect(node->gst_element, "pad-added", G_CALLBACK(__decodebin_newpad_client_cb), (gpointer )node);
+                               g_signal_connect(node->gst_element, "pad-added", G_CALLBACK(__decodebin_newpad_client_cb), (gpointer)node);
                                g_signal_connect(node->gst_element, "autoplug-select", G_CALLBACK(__ms_decodebin_autoplug_select), NULL);
                        } else {
                                format_prefix = g_strdup_printf("%s:decoder", __ms_convert_mime_to_string(mime));
-                               plugin_name = __ms_ini_get_string(dict,
-                                                                     format_prefix, DEFAULT_VIDEO_DECODER);
+                               plugin_name = __ms_ini_get_string(dict, format_prefix, DEFAULT_VIDEO_DECODER);
                                node->gst_element = __ms_video_decoder_element_create(dict, mime);
                        }
                        break;
                case MEDIA_STREAMER_NODE_TYPE_PARSER:
                        format_prefix = g_strdup_printf("%s:parser", __ms_convert_mime_to_string(mime));
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         format_prefix, DEFAULT_VIDEO_PARSER);
+                       plugin_name = __ms_ini_get_string(dict, format_prefix, DEFAULT_VIDEO_PARSER);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_TYPE_FILTER:
@@ -181,24 +178,20 @@ int __ms_node_create(media_streamer_node_s *node,
                        break;
                case MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY:
                        format_prefix = g_strdup_printf("%s:rtppay", __ms_convert_mime_to_string(mime));
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         format_prefix, DEFAULT_VIDEO_RTPPAY);
+                       plugin_name = __ms_ini_get_string(dict, format_prefix, DEFAULT_VIDEO_RTPPAY);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY:
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         "audio-raw:rtppay", DEFAULT_AUDIO_RTPPAY);
+                       plugin_name = __ms_ini_get_string(dict, "audio-raw:rtppay", DEFAULT_AUDIO_RTPPAY);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY:
                        format_prefix = g_strdup_printf("%s:rtpdepay", __ms_convert_mime_to_string(mime));
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         format_prefix, DEFAULT_VIDEO_RTPDEPAY);
+                       plugin_name = __ms_ini_get_string(dict, format_prefix, DEFAULT_VIDEO_RTPDEPAY);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY:
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         "audio-raw:rtpdepay", DEFAULT_AUDIO_RTPDEPAY);
+                       plugin_name = __ms_ini_get_string(dict, "audio-raw:rtpdepay", DEFAULT_AUDIO_RTPDEPAY);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_TYPE_RTP:
@@ -246,7 +239,7 @@ static void __ms_src_start_feed_cb(GstElement *pipeline, guint size, gpointer da
        if (ms_src->callbacks_structure != NULL) {
                media_streamer_callback_s *src_callback = (media_streamer_callback_s *)ms_src->callbacks_structure;
                media_streamer_custom_buffer_status_cb buffer_status_cb =
-                               (media_streamer_custom_buffer_status_cb) src_callback->callback;
+                   (media_streamer_custom_buffer_status_cb) src_callback->callback;
                buffer_status_cb((media_streamer_node_h)ms_src, MEDIA_STREAMER_CUSTOM_BUFFER_UNDERRUN, src_callback->user_data);
        }
 }
@@ -261,7 +254,7 @@ static void __ms_src_stop_feed_cb(GstElement *pipeline, gpointer data)
        if (ms_src->callbacks_structure != NULL) {
                media_streamer_callback_s *src_callback = (media_streamer_callback_s *)ms_src->callbacks_structure;
                media_streamer_custom_buffer_status_cb buffer_status_cb =
-                               (media_streamer_custom_buffer_status_cb) src_callback->callback;
+                   (media_streamer_custom_buffer_status_cb) src_callback->callback;
                buffer_status_cb((media_streamer_node_h)ms_src, MEDIA_STREAMER_CUSTOM_BUFFER_OVERFLOW, src_callback->user_data);
        }
 }
@@ -288,19 +281,16 @@ int __ms_src_node_create(media_streamer_node_s *node)
                        node->gst_element = __ms_element_create(DEFAULT_HTTP_SOURCE, NULL);
                        break;
                case MEDIA_STREAMER_NODE_SRC_TYPE_CAMERA:
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         "sources:camera_source", DEFAULT_CAMERA_SOURCE);
+                       plugin_name = __ms_ini_get_string(dict, "sources:camera_source", DEFAULT_CAMERA_SOURCE);
                        node->gst_element = __ms_camera_element_create(plugin_name);
 
                        break;
                case MEDIA_STREAMER_NODE_SRC_TYPE_AUDIO_CAPTURE:
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         "sources:audio_source", DEFAULT_AUDIO_SOURCE);
+                       plugin_name = __ms_ini_get_string(dict, "sources:audio_source", DEFAULT_AUDIO_SOURCE);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_SRC_TYPE_VIDEO_CAPTURE:
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         "sources:video_source", DEFAULT_VIDEO_SOURCE);
+                       plugin_name = __ms_ini_get_string(dict, "sources:video_source", DEFAULT_VIDEO_SOURCE);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_SRC_TYPE_VIDEO_TEST:
@@ -336,9 +326,9 @@ static void __ms_sink_new_buffer_cb(GstElement *sink, gpointer *data)
 
        if (ms_sink->callbacks_structure != NULL) {
                media_streamer_sink_callbacks_s *sink_callbacks =
-                               (media_streamer_sink_callbacks_s *)ms_sink->callbacks_structure;
+                   (media_streamer_sink_callbacks_s *)ms_sink->callbacks_structure;
                media_streamer_sink_data_ready_cb data_ready_cb =
-                               (media_streamer_sink_data_ready_cb) sink_callbacks->data_ready_cb.callback;
+                   (media_streamer_sink_data_ready_cb) sink_callbacks->data_ready_cb.callback;
 
                if (data_ready_cb) {
                        data_ready_cb((media_streamer_node_h)ms_sink, sink_callbacks->data_ready_cb.user_data);
@@ -354,9 +344,9 @@ static void sink_eos(GstElement *sink, gpointer *data)
 
        if (ms_sink->callbacks_structure != NULL) {
                media_streamer_sink_callbacks_s *sink_callbacks =
-                               (media_streamer_sink_callbacks_s *)ms_sink->callbacks_structure;
+                   (media_streamer_sink_callbacks_s *)ms_sink->callbacks_structure;
                media_streamer_sink_eos_cb eos_cb =
-                               (media_streamer_sink_eos_cb) sink_callbacks->eos_cb.callback;
+                   (media_streamer_sink_eos_cb) sink_callbacks->eos_cb.callback;
 
                if (eos_cb) {
                        eos_cb((media_streamer_node_h)ms_sink, sink_callbacks->eos_cb.user_data);
@@ -386,13 +376,11 @@ int __ms_sink_node_create(media_streamer_node_s *node)
                        ms_error("Error: not implemented yet");
                        break;
                case MEDIA_STREAMER_NODE_SINK_TYPE_AUDIO:
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         "sinks:audio_sink", DEFAULT_AUDIO_SINK);
+                       plugin_name = __ms_ini_get_string(dict, "sinks:audio_sink", DEFAULT_AUDIO_SINK);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_SINK_TYPE_SCREEN:
-                       plugin_name = __ms_ini_get_string(dict,
-                                                         "sinks:video_sink", DEFAULT_VIDEO_SINK);
+                       plugin_name = __ms_ini_get_string(dict, "sinks:video_sink", DEFAULT_VIDEO_SINK);
                        node->gst_element = __ms_element_create(plugin_name, NULL);
                        break;
                case MEDIA_STREAMER_NODE_SINK_TYPE_FAKE:
@@ -498,8 +486,7 @@ int __ms_autoplug_prepare(media_streamer_s *ms_streamer)
        /* Find unlinked element in src_bin */
        unlinked_pad = gst_bin_find_unlinked_pad(GST_BIN(ms_streamer->src_bin), GST_PAD_SRC);
 
-       while (unlinked_pad)
-       {
+       while (unlinked_pad) {
                unlinked_element = gst_pad_get_parent_element(unlinked_pad);
                ms_debug("Autoplug: found unlinked element [%s]\n", GST_ELEMENT_NAME(unlinked_element));
 
@@ -507,17 +494,16 @@ int __ms_autoplug_prepare(media_streamer_s *ms_streamer)
                ms_info("Received new pad '%s' from [%s]\n", GST_PAD_NAME(unlinked_pad), GST_ELEMENT_NAME(unlinked_element));
 
                /* If element in src bin is filesrc */
-               if (__ms_src_need_typefind(unlinked_element))
-               {
+               if (__ms_src_need_typefind(unlinked_element)) {
                        found_element = __ms_element_create("decodebin", NULL);
                        gst_bin_add_many((GstBin *)ms_streamer->topology_bin, found_element, NULL);
 
                        gst_element_sync_state_with_parent(found_element);
 
-                       if(__ms_bin_find_element_by_klass(ms_streamer->topology_bin,MEDIA_STREAMER_BIN_KLASS, "rtp_container")) {
-                               g_signal_connect(found_element, "pad-added", G_CALLBACK (__decodebin_newpad_streamer_cb), ms_streamer);
+                       if (__ms_bin_find_element_by_klass(ms_streamer->topology_bin, MEDIA_STREAMER_BIN_KLASS, "rtp_container")) {
+                               g_signal_connect(found_element, "pad-added", G_CALLBACK(__decodebin_newpad_streamer_cb), ms_streamer);
                        } else {
-                               g_signal_connect(found_element, "pad-added", G_CALLBACK (__decodebin_newpad_cb), ms_streamer);
+                               g_signal_connect(found_element, "pad-added", G_CALLBACK(__decodebin_newpad_cb), ms_streamer);
                        }
                        g_signal_connect(found_element, "autoplug-select", G_CALLBACK(__ms_decodebin_autoplug_select), NULL);
 
@@ -541,13 +527,13 @@ int __ms_autoplug_prepare(media_streamer_s *ms_streamer)
                        new_pad_struct = gst_caps_get_structure(new_pad_caps, 0);
                        new_pad_type = gst_structure_get_name(new_pad_struct);
 
-                       if(MS_ELEMENT_IS_VIDEO(new_pad_type)) {
+                       if (MS_ELEMENT_IS_VIDEO(new_pad_type)) {
                                found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_BIN_KLASS, "video_encoder", "encoder", DEFAULT_VIDEO_ENCODER);
                                found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_PAYLOADER_KLASS, NULL, NULL, NULL);
                                found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_BIN_KLASS, "rtp_container", NULL, NULL);
                        }
 
-                       if(MS_ELEMENT_IS_AUDIO(new_pad_type)) {
+                       if (MS_ELEMENT_IS_AUDIO(new_pad_type)) {
                                found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_BIN_KLASS, "audio_encoder", "encoder", DEFAULT_AUDIO_PARSER);
                                found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_PAYLOADER_KLASS, NULL, NULL, NULL);
                                found_element = __ms_combine_next_element(found_element, MEDIA_STREAMER_BIN_KLASS, "rtp_container", NULL, NULL);
@@ -610,17 +596,17 @@ static void __ms_node_get_param_value(GParamSpec *param, GValue value, char **st
                pint = G_PARAM_SPEC_INT(param);
                string_val = g_strdup_printf("%d", g_value_get_int(&value));
                ms_info("Got int value: [%s], range: %d - %d", string_val,
-                               pint->minimum, pint->maximum);
+                       pint->minimum, pint->maximum);
        } else if (!g_strcmp0(param->name, MEDIA_STREAMER_PARAM_CAPTURE_WIDTH)) {
                pint = G_PARAM_SPEC_INT(param);
                string_val = g_strdup_printf("%d", g_value_get_int(&value));
                ms_info("Got int value: [%s], range: %d - %d", string_val,
-                               pint->minimum, pint->maximum);
+                       pint->minimum, pint->maximum);
        } else if (!g_strcmp0(param->name, MEDIA_STREAMER_PARAM_CAPTURE_HEIGHT)) {
                pint = G_PARAM_SPEC_INT(param);
                string_val = g_strdup_printf("%d", g_value_get_int(&value));
                ms_info("Got int value: [%s], range: %d - %d", string_val,
-                               pint->minimum, pint->maximum);
+                       pint->minimum, pint->maximum);
        } else if (!g_strcmp0(param->name, MEDIA_STREAMER_PARAM_IS_LIVE_STREAM)) {
                string_val = g_strdup_printf("%s", g_value_get_boolean(&value) ? "true" : "false");
                ms_info("Got boolean value: [%s]", string_val);
@@ -637,27 +623,27 @@ static void __ms_node_get_param_value(GParamSpec *param, GValue value, char **st
                pint = G_PARAM_SPEC_INT(param);
                string_val = g_strdup_printf("%d", g_value_get_int(&value));
                ms_info("Got int value: [%s], range: %d - %d", string_val,
-                pint->minimum, pint->maximum);
+                       pint->minimum, pint->maximum);
        } else if (!g_strcmp0(param->name, MEDIA_STREAMER_PARAM_VIDEO_IN_PORT)) {
                pint = G_PARAM_SPEC_INT(param);
                string_val = g_strdup_printf("%d", g_value_get_int(&value));
                ms_info("Got int value: [%s], range: %d - %d", string_val,
-                               pint->minimum, pint->maximum);
+                       pint->minimum, pint->maximum);
        } else if (!g_strcmp0(param->name, MEDIA_STREAMER_PARAM_AUDIO_IN_PORT)) {
                pint = G_PARAM_SPEC_INT(param);
                string_val = g_strdup_printf("%d", g_value_get_int(&value));
                ms_info("Got int value: [%s], range: %d - %d", string_val,
-                               pint->minimum, pint->maximum);
+                       pint->minimum, pint->maximum);
        } else if (!g_strcmp0(param->name, MEDIA_STREAMER_PARAM_VIDEO_OUT_PORT)) {
                pint = G_PARAM_SPEC_INT(param);
                string_val = g_strdup_printf("%d", g_value_get_int(&value));
                ms_info("Got int value: [%s], range: %d - %d", string_val,
-                               pint->minimum, pint->maximum);
+                       pint->minimum, pint->maximum);
        } else if (!g_strcmp0(param->name, MEDIA_STREAMER_PARAM_AUDIO_OUT_PORT)) {
                pint = G_PARAM_SPEC_INT(param);
                string_val = g_strdup_printf("%d", g_value_get_int(&value));
                ms_info("Got int value: [%s], range: %d - %d", string_val,
-                               pint->minimum, pint->maximum);
+                       pint->minimum, pint->maximum);
        } else if (!g_strcmp0(param->name, MEDIA_STREAMER_PARAM_IP_ADDRESS)) {
                string_val = g_strdup_printf("%s", g_value_get_string(&value));
                ms_info("Got string value: [%s]", g_value_get_string(&value));
@@ -692,25 +678,24 @@ void __ms_node_check_param_name(GstElement *element, gboolean name_is_known,
 {
        char *set_param_name = NULL;
        char *orig_param_name = NULL;
-       int it_param=0;
+       int it_param = 0;
 
        GParamSpec *param;
 
-       for(it_param = 0; it_param < PROPERTY_COUNT; it_param++)
-       {
+       for (it_param = 0; it_param < PROPERTY_COUNT; it_param++) {
                set_param_name = param_table[it_param][0];
                orig_param_name = param_table[it_param][1];
                param = g_object_class_find_property(G_OBJECT_GET_CLASS(element), orig_param_name);
 
                if (name_is_known) {
-                       if(!g_strcmp0(param_name, set_param_name)) {
+                       if (!g_strcmp0(param_name, set_param_name)) {
                                if (param) {
                                        *init_param_name = orig_param_name;
                                        break;
                                }
                        }
                } else {
-                       if(!g_strcmp0(param_name, orig_param_name)) {
+                       if (!g_strcmp0(param_name, orig_param_name)) {
                                if (param) {
                                        *init_param_name = set_param_name;
                                        break;
@@ -729,7 +714,7 @@ int __ms_node_write_params_into_bundle(media_streamer_node_s *node,
        char *param_init_name = NULL;
 
        property_specs = g_object_class_list_properties(G_OBJECT_GET_CLASS(node->gst_element),
-                                                    &num_properties);
+                                                       &num_properties);
 
        if (num_properties <= 0) {
                return MEDIA_STREAMER_ERROR_INVALID_OPERATION;
@@ -776,8 +761,7 @@ int __ms_node_write_param_into_value(media_streamer_node_s *node, const char *pa
 
        __ms_node_check_param_name(node->gst_element, TRUE, param_name, &param_init_name);
 
-       if (param_init_name)
-       {
+       if (param_init_name) {
                param = g_object_class_find_property(G_OBJECT_GET_CLASS(node->gst_element), param_init_name);
 
                ms_info("Getting parameter of the Node [%s]", node->name);
index e70f271c56d5c8ba8ea34dc2418d294a2158e8b1..494774e491b75803773f7c0389fda7d4c537cfc9 100755 (executable)
@@ -174,13 +174,13 @@ void __ms_streamer_destroy(media_streamer_s *ms_streamer)
        MS_TABLE_SAFE_UNREF(ms_streamer->nodes_table);
 
        if (ms_streamer->sink_video_bin &&
-                       GST_OBJECT_PARENT(ms_streamer->sink_video_bin) != GST_OBJECT(ms_streamer->pipeline)) {
+           GST_OBJECT_PARENT(ms_streamer->sink_video_bin) != GST_OBJECT(ms_streamer->pipeline)) {
                MS_SAFE_UNREF(ms_streamer->sink_video_bin);
                ms_info("sink_video_bin removed from pipeline");
        }
 
        if (ms_streamer->sink_audio_bin &&
-                       GST_OBJECT_PARENT(ms_streamer->sink_audio_bin) != GST_OBJECT(ms_streamer->pipeline)) {
+           GST_OBJECT_PARENT(ms_streamer->sink_audio_bin) != GST_OBJECT(ms_streamer->pipeline)) {
                MS_SAFE_UNREF(ms_streamer->sink_audio_bin);
                ms_info("sink_audio_bin removed from pipeline");
        }
index bac167fe34ef93a08d2710c370049cdc0eec38a9..21d83136fa8edd6aa56e0d4ab1f3eb039fb2c812 100755 (executable)
@@ -111,7 +111,7 @@ int __ms_load_ini_settings(media_streamer_ini_t *ini)
                ini->use_decodebin = iniparser_getboolean(dict, "general:use decodebin", DEFAULT_USE_DECODEBIN);
        }
 
-        else { /* if dict is not available just fill the structure with default value */
+       else { /* if dict is not available just fill the structure with default value */
                ms_debug("failed to load ini. using hardcoded default");
 
                /* general settings*/
index 6099990a20be284577fa73f0c49ec1129f408008..8e817646ba98159a08eeb7ca44ebac6db47c59e7 100755 (executable)
@@ -59,8 +59,7 @@ typedef enum {
        PRESET_DOUBLE_VOIP_CLIENT_2 = PRESET_RTP_CLIENT | DOUBLE_STREAMER_MASK | SECOND_VOIP_MASK
 } preset_type_e;
 
-typedef enum
-{
+typedef enum {
        SCENARIO_MODE_UNKNOWN,
        SCENARIO_MODE_CAMERA_SCREEN,
        SCENARIO_MODE_MICROPHONE_PHONE,
@@ -120,7 +119,8 @@ static void streamer_error_cb(media_streamer_h streamer,
        g_print("Media Streamer posted error [%d] \n", error);
 }
 
-static void streamer_seek_cb(void *user_data) {
+static void streamer_seek_cb(void *user_data)
+{
        g_print("Media Streamer seeked to required position \n");
 }
 
@@ -223,20 +223,20 @@ static void _stop()
        g_print("== success stop \n");
 }
 
-static gboolean _destroy(media_streamer_h streamer)
+static void _destroy(media_streamer_h streamer)
 {
        g_print("== destroy \n");
        int ret = MEDIA_STREAMER_ERROR_NONE;
 
        if (streamer == NULL) {
                g_print("media streamer already destroyed");
-               return TRUE;
+               return;
        }
 
        ret = media_streamer_destroy(streamer);
        if (ret != MEDIA_STREAMER_ERROR_NONE) {
                g_print("Fail to destroy media streamer");
-               return FALSE;
+               return;
        }
 
        if (current_media_streamer == g_media_streamer) {
@@ -247,7 +247,6 @@ static gboolean _destroy(media_streamer_h streamer)
        current_media_streamer = NULL;
 
        g_print("== success destroy \n");
-       return TRUE;
 }
 
 static void create_formats(void)
@@ -268,7 +267,7 @@ static void create_formats(void)
 
        /* Define encoded video format */
        media_format_create(&vfmt_encoded);
-       if (media_format_set_video_mime(vfmt_encoded, MEDIA_FORMAT_H264_SP) != MEDIA_FORMAT_ERROR_NONE) {
+       if (media_format_set_video_mime(vfmt_encoded, MEDIA_FORMAT_H263) != MEDIA_FORMAT_ERROR_NONE) {
                g_print("media_format_set_video_mime failed!");
        }
        media_format_set_video_width(vfmt_encoded, 800);
@@ -294,8 +293,7 @@ static void set_rtp_params(media_streamer_node_h rtp_node,
 {
        bundle *params = bundle_create();
 
-       if (g_audio_is_on)
-       {
+       if (g_audio_is_on) {
                gchar *audio_src_port = g_strdup_printf("%d", port_reverse ? (audio_port + 5) : audio_port);
                gchar *audio_sink_port = g_strdup_printf("%d", port_reverse ? audio_port : (audio_port + 5));
 
@@ -310,8 +308,7 @@ static void set_rtp_params(media_streamer_node_h rtp_node,
                g_free(audio_sink_port);
        }
 
-       if (g_video_is_on)
-       {
+       if (g_video_is_on) {
                char *video_src_port = g_strdup_printf("%d", port_reverse ? (video_port + 5) : video_port);
                char *video_sink_port = g_strdup_printf("%d", port_reverse ? video_port : (video_port + 5));
 
@@ -338,46 +335,75 @@ static void set_rtp_params(media_streamer_node_h rtp_node,
 static void _create_file_playing()
 {
        media_streamer_node_h file_src = NULL;
-       media_streamer_node_create_src( MEDIA_STREAMER_NODE_SRC_TYPE_FILE, &file_src);
-       media_streamer_node_set_param(file_src,MEDIA_STREAMER_PARAM_URI, g_uri);
+       media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_FILE, &file_src);
+       media_streamer_node_set_param(file_src, MEDIA_STREAMER_PARAM_URI, g_uri);
        media_streamer_node_add(current_media_streamer, file_src);
+
+       /*********************** videosink *********************************** */
+       media_streamer_node_h video_sink = NULL;
+       media_streamer_node_create_sink(MEDIA_STREAMER_NODE_SINK_TYPE_SCREEN, &video_sink);
+       media_streamer_node_add(current_media_streamer, video_sink);
+
+       /*********************** audiosink *********************************** */
+       media_streamer_node_h audio_sink = NULL;
+       media_streamer_node_create_sink(MEDIA_STREAMER_NODE_SINK_TYPE_AUDIO, &audio_sink);
+       media_streamer_node_add(current_media_streamer, audio_sink);
 }
 
 static void _create_file_sub_playing()
 {
        media_streamer_node_h file_sub_src = NULL;
-       media_streamer_node_create_src( MEDIA_STREAMER_NODE_SRC_TYPE_FILE, &file_sub_src);
-       media_streamer_node_set_param(file_sub_src,MEDIA_STREAMER_PARAM_URI, g_uri);
+       media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_FILE, &file_sub_src);
+       media_streamer_node_set_param(file_sub_src, MEDIA_STREAMER_PARAM_URI, g_uri);
        media_streamer_node_add(current_media_streamer, file_sub_src);
 
        media_streamer_node_h txt_src = NULL;
-       media_streamer_node_create_src( MEDIA_STREAMER_NODE_SRC_TYPE_FILE, &txt_src);
-       media_streamer_node_set_param(txt_src,MEDIA_STREAMER_PARAM_URI, g_sub_uri);
+       media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_FILE, &txt_src);
+       media_streamer_node_set_param(txt_src, MEDIA_STREAMER_PARAM_URI, g_sub_uri);
        media_streamer_node_add(current_media_streamer, txt_src);
+
+       /*********************** videosink *********************************** */
+       media_streamer_node_h video_sink = NULL;
+       media_streamer_node_create_sink(MEDIA_STREAMER_NODE_SINK_TYPE_SCREEN, &video_sink);
+       media_streamer_node_add(current_media_streamer, video_sink);
+
+       /*********************** audiosink *********************************** */
+       media_streamer_node_h audio_sink = NULL;
+       media_streamer_node_create_sink(MEDIA_STREAMER_NODE_SINK_TYPE_AUDIO, &audio_sink);
+       media_streamer_node_add(current_media_streamer, audio_sink);
 }
 
 static void _create_http_playing()
 {
        media_streamer_node_h http_src = NULL;
-       media_streamer_node_create_src( MEDIA_STREAMER_NODE_SRC_TYPE_HTTP, &http_src);
-       media_streamer_node_set_param(http_src,MEDIA_STREAMER_PARAM_URI, g_uri);
+       media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_HTTP, &http_src);
+       media_streamer_node_set_param(http_src, MEDIA_STREAMER_PARAM_URI, g_uri);
        media_streamer_node_add(current_media_streamer, http_src);
+
+       /*********************** videosink *********************************** */
+       media_streamer_node_h video_sink = NULL;
+       media_streamer_node_create_sink(MEDIA_STREAMER_NODE_SINK_TYPE_SCREEN, &video_sink);
+       media_streamer_node_add(current_media_streamer, video_sink);
+
+       /*********************** audiosink *********************************** */
+       media_streamer_node_h audio_sink = NULL;
+       media_streamer_node_create_sink(MEDIA_STREAMER_NODE_SINK_TYPE_AUDIO, &audio_sink);
+       media_streamer_node_add(current_media_streamer, audio_sink);
 }
 
 static void _create_rtp_streamer(media_streamer_node_h rtp_bin)
 {
        g_print("== _create_rtp_streamer \n");
 
-       if (g_video_is_on)
-       {
+       if (g_video_is_on) {
                /*********************** video source *********************************** */
                media_streamer_node_h video_src = NULL;
 
                if (g_scenario_mode == SCENARIO_MODE_CAMERA_SCREEN ||
-            g_scenario_mode == SCENARIO_MODE_FULL_VIDEO_AUDIO) {
+                   g_scenario_mode == SCENARIO_MODE_FULL_VIDEO_AUDIO) {
                        media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_CAMERA, &video_src);
                } else if (g_scenario_mode == SCENARIO_MODE_VIDEOTEST_SCREEN ||
-                   g_scenario_mode == SCENARIO_MODE_TEST_VIDEO_AUDIO) {
+                          g_scenario_mode == SCENARIO_MODE_TEST_VIDEO_AUDIO) {
                        media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_VIDEO_TEST, &video_src);
                }
 
@@ -385,35 +411,32 @@ static void _create_rtp_streamer(media_streamer_node_h rtp_bin)
 
                /*********************** encoder **************************************** */
                media_streamer_node_h video_enc = NULL;
-               media_streamer_node_create(MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER, NULL,
-                               vfmt_encoded, &video_enc);
+               media_streamer_node_create(MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER, NULL, vfmt_encoded, &video_enc);
                media_streamer_node_add(current_media_streamer, video_enc);
 
                /*********************** videopay *************************************** */
                media_streamer_node_h video_pay = NULL;
-               media_streamer_node_create(MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY, NULL,
-                               vfmt_encoded, &video_pay);
+               media_streamer_node_create(MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY, NULL, vfmt_encoded, &video_pay);
                media_streamer_node_add(current_media_streamer, video_pay);
 
                /*====================Linking Video Streamer=========================== */
-               /* media_streamer_node_link(video_src, "src", video_enc, "sink"); */
-               /* media_streamer_node_link(video_enc, "src", video_pay, "sink"); */
-               /* media_streamer_node_link(video_pay, "src", rtp_bin, "video_in"); */
+               media_streamer_node_link(video_src, "src", video_enc, "sink");
+               media_streamer_node_link(video_enc, "src", video_pay, "sink");
+               media_streamer_node_link(video_pay, "src", rtp_bin, "video_in");
                /*====================================================================== */
 
                g_print("== success streamer video part \n");
        }
 
-       if (g_audio_is_on)
-       {
+       if (g_audio_is_on) {
                /*********************** audiosrc *********************************** */
                media_streamer_node_h audio_src = NULL;
 
                if (g_scenario_mode == SCENARIO_MODE_MICROPHONE_PHONE ||
-            g_scenario_mode == SCENARIO_MODE_FULL_VIDEO_AUDIO) {
+                   g_scenario_mode == SCENARIO_MODE_FULL_VIDEO_AUDIO) {
                        media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_AUDIO_CAPTURE, &audio_src);
                } else if (g_scenario_mode == SCENARIO_MODE_AUDIOTEST_PHONE ||
-                   g_scenario_mode == SCENARIO_MODE_TEST_VIDEO_AUDIO) {
+                          g_scenario_mode == SCENARIO_MODE_TEST_VIDEO_AUDIO) {
                        media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_AUDIO_TEST, &audio_src);
                }
 
@@ -430,9 +453,9 @@ static void _create_rtp_streamer(media_streamer_node_h rtp_bin)
                media_streamer_node_add(current_media_streamer, audio_pay);
 
                /*====================Linking Audio Streamer========================== */
-               /* media_streamer_node_link(audio_src, "src", audio_enc, "sink"); */
-               /* media_streamer_node_link(audio_enc, "src", audio_pay, "sink"); */
-               /* media_streamer_node_link(audio_pay, "src", rtp_bin, "audio_in"); */
+               media_streamer_node_link(audio_src, "src", audio_enc, "sink");
+               media_streamer_node_link(audio_enc, "src", audio_pay, "sink");
+               media_streamer_node_link(audio_pay, "src", rtp_bin, "audio_in");
                /*====================================================================== */
 
                g_print("== success streamer audio part \n");
@@ -443,16 +466,15 @@ static void _create_rtp_streamer_autoplug(media_streamer_node_h rtp_bin)
 {
        g_print("== _create_rtp_streamer_autoplug \n");
 
-       if (g_video_is_on)
-       {
+       if (g_video_is_on) {
                /*********************** video source *********************************** */
                media_streamer_node_h video_src = NULL;
 
                if (g_scenario_mode == SCENARIO_MODE_CAMERA_SCREEN ||
-            g_scenario_mode == SCENARIO_MODE_FULL_VIDEO_AUDIO) {
+                   g_scenario_mode == SCENARIO_MODE_FULL_VIDEO_AUDIO) {
                        media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_CAMERA, &video_src);
                } else if (g_scenario_mode == SCENARIO_MODE_VIDEOTEST_SCREEN ||
-                   g_scenario_mode == SCENARIO_MODE_TEST_VIDEO_AUDIO) {
+                          g_scenario_mode == SCENARIO_MODE_TEST_VIDEO_AUDIO) {
                        media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_VIDEO_TEST, &video_src);
                }
 
@@ -461,16 +483,15 @@ static void _create_rtp_streamer_autoplug(media_streamer_node_h rtp_bin)
                g_print("== success streamer_autoplug video part \n");
        }
 
-       if (g_audio_is_on)
-       {
+       if (g_audio_is_on) {
                /*********************** audiosrc *********************************** */
                media_streamer_node_h audio_src = NULL;
 
                if (g_scenario_mode == SCENARIO_MODE_MICROPHONE_PHONE ||
-            g_scenario_mode == SCENARIO_MODE_FULL_VIDEO_AUDIO) {
+                   g_scenario_mode == SCENARIO_MODE_FULL_VIDEO_AUDIO) {
                        media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_AUDIO_CAPTURE, &audio_src);
                } else if (g_scenario_mode == SCENARIO_MODE_AUDIOTEST_PHONE ||
-                   g_scenario_mode == SCENARIO_MODE_TEST_VIDEO_AUDIO) {
+                          g_scenario_mode == SCENARIO_MODE_TEST_VIDEO_AUDIO) {
                        media_streamer_node_create_src(MEDIA_STREAMER_NODE_SRC_TYPE_AUDIO_TEST, &audio_src);
                }
 
@@ -484,7 +505,7 @@ static void _create_rtp_client(media_streamer_node_h rtp_bin)
 {
        g_print("== _create_rtp_client \n");
 
-    if(g_video_is_on) {
+       if (g_video_is_on) {
 
                /*********************** video_depay*********************************** */
                media_streamer_node_h video_depay = NULL;
@@ -515,16 +536,6 @@ static void _create_rtp_client(media_streamer_node_h rtp_bin)
                media_streamer_node_create(MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY, NULL, NULL, &audio_depay);
                media_streamer_node_add(current_media_streamer, audio_depay);
 
-               /*********************** audioconvert *********************************** */
-               /*media_streamer_node_h audio_converter = NULL;*/
-               /*media_streamer_node_create(MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER, NULL, NULL, &audio_converter);*/
-               /*media_streamer_node_add(current_media_streamer, audio_converter);*/
-
-               /*********************** audioresample *********************************** */
-               /*media_streamer_node_h audio_res = NULL;*/
-               /*media_streamer_node_create(MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE, NULL, NULL, &audio_res);*/
-               /*media_streamer_node_add(current_media_streamer, audio_res);*/
-
                /*********************** audiosink *********************************** */
                media_streamer_node_h audio_sink = NULL;
                media_streamer_node_create_sink(MEDIA_STREAMER_NODE_SINK_TYPE_AUDIO, &audio_sink);
@@ -545,7 +556,7 @@ static void _create_rtp_client_autoplug(media_streamer_node_h rtp_bin)
 {
        g_print("== _create_rtp_client_autoplug \n");
 
-       if(g_video_is_on) {
+       if (g_video_is_on) {
 
                /*********************** videosink *********************************** */
                media_streamer_node_h video_sink = NULL;
@@ -553,7 +564,7 @@ static void _create_rtp_client_autoplug(media_streamer_node_h rtp_bin)
                media_streamer_node_add(current_media_streamer, video_sink);
 
                g_print("== success client_autoplug video part \n");
-    }
+       }
 
        if (g_audio_is_on) {
 
@@ -580,11 +591,11 @@ static media_streamer_node_h _create_rtp(int video_port,
        return rtp_bin;
 }
 
-//#if 0
 /* Application source callback */
 static void buffer_status_cb(media_streamer_node_h node,
-               media_streamer_custom_buffer_status_e status,
-               void *user_data) {
+                             media_streamer_custom_buffer_status_e status,
+                             void *user_data)
+{
 
        static int count = 0;
 
@@ -651,7 +662,6 @@ static void _create_app_test()
 
        g_print("== success appsrc part \n");
 }
-//#endif
 
 /***************************************************************/
 /**  Testsuite */
@@ -876,9 +886,6 @@ static void display_menu(void)
                        case SUBMENU_STATE_PLAYING_SCENARIO:
                                display_playing_scenario_select_menu();
                                break;
-                       case SUBMENU_STATE_FORMAT:
-                               /* display_format_menu(); */
-                               break;
                        default:
                                g_print("*** Unknown Submenu state.\n");
                                break;
@@ -1178,13 +1185,16 @@ void _interpret_getting_uri_menu(char *cmd)
 
 void _interpret_autoplug_menu(char *cmd)
 {
-       int cmd_number = atoi(cmd) - 1;
-
-       if (cmd_number == 1 || cmd_number == 0) {
-               g_autoplug_mode = cmd_number;
+       if (strlen(cmd) == 1) {
+               if (cmd[0] == '2') {
+                       g_autoplug_mode = true;
+               } else {
+                       g_autoplug_mode = false;
+               }
        } else {
                g_print("Invalid input. Default autoplug mode will be used\n");
        }
+
        g_print("Selected pluging mode is [%s]\n",
                g_autoplug_mode == TRUE ? "autoplug" : "manual");
 
@@ -1291,9 +1301,6 @@ static void interpret_cmd(char *cmd)
                        case SUBMENU_STATE_AUTOPLUG:
                                _interpret_autoplug_menu(cmd);
                                break;
-                       case SUBMENU_STATE_FORMAT:
-                               /*display_format_menu(); */
-                               break;
                        case SUBMENU_STATE_SCENARIO:
                                _interpret_scenario_menu(cmd);
                                break;