caps: avoid using in-place oprations
[platform/upstream/gstreamer.git] / docs / manual / advanced-autoplugging.xml
index 3e24f71..9186985 100644 (file)
@@ -314,7 +314,7 @@ init_factories (void)
 {
   /* first filter out the interesting element factories */
   factories = gst_registry_feature_filter (
-      gst_registry_get_default (),
+      gst_registry_get (),
       (GstPluginFeatureFilter) cb_feature_filter, FALSE, NULL);
 
   /* sort them according to their ranks */
@@ -333,7 +333,7 @@ init_factories (void)
       which will continue with the above approach.
     </para>
     <programlisting><!-- example-begin dynamic.c c -->
-static void try_to_plug (GstPad *pad, const GstCaps *caps);
+static void try_to_plug (GstPad *pad, GstCaps *caps);
 
 static GstElement *audiosink;
 
@@ -344,7 +344,7 @@ cb_newpad (GstElement *element,
 {
   GstCaps *caps;
 
-  caps = gst_pad_get_caps (pad, NULL);
+  caps = gst_pad_query_caps (pad, NULL);
   try_to_plug (pad, caps);
   gst_caps_unref (caps);
 }
@@ -389,7 +389,7 @@ close_link (GstPad      *srcpad,
     switch (templ->presence) {
       case GST_PAD_ALWAYS: {
         GstPad *pad = gst_element_get_static_pad (sinkelement, templ->name_template);
-        GstCaps *caps = gst_pad_get_caps (pad, NULL);
+        GstCaps *caps = gst_pad_query_caps (pad, NULL);
 
         /* link */
         try_to_plug (pad, caps);
@@ -413,7 +413,7 @@ close_link (GstPad      *srcpad,
 
 static void
 try_to_plug (GstPad        *pad,
-            const GstCaps *caps)
+            GstCaps       *caps)
 {
   GstObject *parent = GST_OBJECT (GST_OBJECT_PARENT (pad));
   const gchar *mime;
@@ -436,7 +436,7 @@ try_to_plug (GstPad        *pad,
   }
 
   /* can it link to the audiopad? */
-  audiocaps = gst_pad_get_caps (gst_element_get_static_pad (audiosink, "sink"),
+  audiocaps = gst_pad_query_caps (gst_element_get_static_pad (audiosink, "sink"),
   NULL);
   res = gst_caps_intersect (caps, audiocaps);
   if (res &amp;&amp; !gst_caps_is_empty (res)) {