X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gst%2Fgst.c;h=f14cfef6e6f41d06b7fe3f015c4028cf7d490fdb;hb=321ee10bd6a3fec0951e93e3e112603693d86c33;hp=93a5ca7a1690e3402ca1099952f73ff2310fb288;hpb=1fa356a23cd30a64d743ef1600348dc846f1ab5c;p=platform%2Fupstream%2Fgstreamer.git diff --git a/gst/gst.c b/gst/gst.c index 93a5ca7..f14cfef 100644 --- a/gst/gst.c +++ b/gst/gst.c @@ -360,28 +360,6 @@ gst_init_get_option_group (void) {NULL} }; - /* Since GLib 2.23.2 calling g_thread_init() 'late' is allowed and is - * automatically done as part of g_type_init() */ - if (glib_check_version (2, 23, 3)) { - /* The GLib threading system must be initialised before calling any other - * GLib function according to the documentation; if the application hasn't - * called gst_init() yet or initialised the threading system otherwise, we - * better issue a warning here (since chances are high that the application - * has already called other GLib functions such as g_option_context_new() */ - if (!g_thread_get_initialized ()) { - g_warning ("The GStreamer function gst_init_get_option_group() was\n" - "\tcalled, but the GLib threading system has not been initialised\n" - "\tyet, something that must happen before any other GLib function\n" - "\tis called. The application needs to be fixed so that it calls\n" - "\t if (!g_thread_get_initialized ()) g_thread_init(NULL);\n" - "\tas very first thing in its main() function. Please file a bug\n" - "\tagainst this application."); - g_thread_init (NULL); - } - } else { - /* GLib >= 2.23.2 */ - } - group = g_option_group_new ("gst", _("GStreamer Options"), _("Show GStreamer Options"), NULL, NULL); g_option_group_set_parse_hooks (group, (GOptionParseFunc) init_pre, @@ -424,9 +402,6 @@ gst_init_check (int *argc, char **argv[], GError ** err) #endif gboolean res; - if (!g_thread_get_initialized ()) - g_thread_init (NULL); - if (gst_initialized) { GST_DEBUG ("already initialized gst"); return TRUE; @@ -574,9 +549,6 @@ init_pre (GOptionContext * context, GOptionGroup * group, gpointer data, g_type_init (); - /* we need threading to be enabled right here */ - g_assert (g_thread_get_initialized ()); - #ifndef GST_DISABLE_GST_DEBUG _priv_gst_debug_init (); #endif @@ -654,10 +626,6 @@ init_post (GOptionContext * context, GOptionGroup * group, gpointer data, { GLogLevelFlags llf; -#ifndef GST_DISABLE_TRACE - GstTrace *gst_trace; -#endif /* GST_DISABLE_TRACE */ - if (gst_initialized) { GST_DEBUG ("already initialized"); return TRUE; @@ -666,6 +634,9 @@ init_post (GOptionContext * context, GOptionGroup * group, gpointer data, llf = G_LOG_LEVEL_CRITICAL | G_LOG_LEVEL_ERROR | G_LOG_FLAG_FATAL; g_log_set_handler (g_log_domain_gstreamer, llf, debug_log_handler, NULL); + _priv_gst_alloc_trace_initialize (); + + _priv_gst_mini_object_initialize (); _priv_gst_quarks_initialize (); _priv_gst_memory_initialize (); _priv_gst_format_initialize (); @@ -684,7 +655,6 @@ init_post (GOptionContext * context, GOptionGroup * group, gpointer data, g_type_class_ref (gst_task_get_type ()); g_type_class_ref (gst_clock_get_type ()); - g_type_class_ref (gst_index_factory_get_type ()); gst_uri_handler_get_type (); g_type_class_ref (gst_object_flags_get_type ()); @@ -713,12 +683,6 @@ init_post (GOptionContext * context, GOptionGroup * group, gpointer data, g_type_class_ref (gst_seek_flags_get_type ()); g_type_class_ref (gst_qos_type_get_type ()); g_type_class_ref (gst_format_get_type ()); - g_type_class_ref (gst_index_certainty_get_type ()); - g_type_class_ref (gst_index_entry_type_get_type ()); - g_type_class_ref (gst_index_lookup_method_get_type ()); - g_type_class_ref (gst_assoc_flags_get_type ()); - g_type_class_ref (gst_index_resolver_method_get_type ()); - g_type_class_ref (gst_index_flags_get_type ()); g_type_class_ref (gst_debug_level_get_type ()); g_type_class_ref (gst_debug_color_flags_get_type ()); g_type_class_ref (gst_iterator_result_get_type ()); @@ -762,11 +726,16 @@ init_post (GOptionContext * context, GOptionGroup * group, gpointer data, g_type_class_ref (gst_pad_probe_return_get_type ()); g_type_class_ref (gst_segment_flags_get_type ()); g_type_class_ref (gst_scheduling_flags_get_type ()); + g_type_class_ref (gst_meta_flags_get_type ()); + + g_type_class_ref (gst_control_binding_get_type ()); + g_type_class_ref (gst_control_source_get_type ()); _priv_gst_event_initialize (); _priv_gst_buffer_initialize (); _priv_gst_message_initialize (); _priv_gst_buffer_list_initialize (); + _priv_gst_sample_initialize (); _priv_gst_value_initialize (); g_type_class_ref (gst_param_spec_fraction_get_type ()); _priv_gst_tag_initialize (); @@ -774,8 +743,6 @@ init_post (GOptionContext * context, GOptionGroup * group, gpointer data, _priv_gst_plugin_initialize (); - gst_g_error_get_type (); - /* register core plugins */ gst_plugin_register_static (GST_VERSION_MAJOR, GST_VERSION_MINOR, "staticelements", "core elements linked into the GStreamer library", @@ -796,14 +763,6 @@ init_post (GOptionContext * context, GOptionGroup * group, gpointer data, if (!gst_update_registry ()) return FALSE; -#ifndef GST_DISABLE_TRACE - _gst_trace_on = 0; - if (_gst_trace_on) { - gst_trace = gst_trace_new ("gst.trace", 1024); - gst_trace_set_default (gst_trace); - } -#endif /* GST_DISABLE_TRACE */ - GST_INFO ("GLib runtime version: %d.%d.%d", glib_major_version, glib_minor_version, glib_micro_version); GST_INFO ("GLib headers version: %d.%d.%d", GLIB_MAJOR_VERSION, @@ -836,7 +795,7 @@ gst_debug_help (void) if (!init_post (NULL, NULL, NULL, NULL)) exit (1); - list2 = gst_registry_plugin_filter (gst_registry_get_default (), + list2 = gst_registry_plugin_filter (gst_registry_get (), select_all, FALSE, NULL); /* FIXME this is gross. why don't debug have categories PluginFeatures? */ @@ -1046,6 +1005,8 @@ gst_deinit (void) _priv_gst_registry_cleanup (); + _priv_gst_alloc_trace_deinit (); + g_type_class_unref (g_type_class_peek (gst_object_get_type ())); g_type_class_unref (g_type_class_peek (gst_pad_get_type ())); g_type_class_unref (g_type_class_peek (gst_element_factory_get_type ())); @@ -1054,7 +1015,6 @@ gst_deinit (void) g_type_class_unref (g_type_class_peek (gst_bin_get_type ())); g_type_class_unref (g_type_class_peek (gst_bus_get_type ())); g_type_class_unref (g_type_class_peek (gst_task_get_type ())); - g_type_class_unref (g_type_class_peek (gst_index_factory_get_type ())); g_type_class_unref (g_type_class_peek (gst_object_flags_get_type ())); g_type_class_unref (g_type_class_peek (gst_bin_flags_get_type ())); g_type_class_unref (g_type_class_peek (gst_buffer_flags_get_type ())); @@ -1088,18 +1048,12 @@ gst_deinit (void) g_type_class_unref (g_type_class_peek (gst_seek_flags_get_type ())); g_type_class_unref (g_type_class_peek (gst_qos_type_get_type ())); g_type_class_unref (g_type_class_peek (gst_format_get_type ())); - g_type_class_unref (g_type_class_peek (gst_index_certainty_get_type ())); - g_type_class_unref (g_type_class_peek (gst_index_entry_type_get_type ())); - g_type_class_unref (g_type_class_peek (gst_index_lookup_method_get_type ())); - g_type_class_unref (g_type_class_peek (gst_assoc_flags_get_type ())); - g_type_class_unref (g_type_class_peek (gst_index_resolver_method_get_type - ())); - g_type_class_unref (g_type_class_peek (gst_index_flags_get_type ())); g_type_class_unref (g_type_class_peek (gst_debug_level_get_type ())); g_type_class_unref (g_type_class_peek (gst_debug_color_flags_get_type ())); g_type_class_unref (g_type_class_peek (gst_iterator_result_get_type ())); g_type_class_unref (g_type_class_peek (gst_iterator_item_get_type ())); g_type_class_unref (g_type_class_peek (gst_message_type_get_type ())); + g_type_class_unref (g_type_class_peek (gst_meta_flags_get_type ())); g_type_class_unref (g_type_class_peek (gst_mini_object_flags_get_type ())); g_type_class_unref (g_type_class_peek (gst_pad_link_return_get_type ())); g_type_class_unref (g_type_class_peek (gst_pad_link_check_get_type ())); @@ -1135,6 +1089,9 @@ gst_deinit (void) g_type_class_unref (g_type_class_peek (gst_segment_flags_get_type ())); g_type_class_unref (g_type_class_peek (gst_scheduling_flags_get_type ())); + g_type_class_unref (g_type_class_peek (gst_control_binding_get_type ())); + g_type_class_unref (g_type_class_peek (gst_control_source_get_type ())); + gst_deinitialized = TRUE; GST_INFO ("deinitialized GStreamer"); }