[pitivi] elements: Use new fast pad linking methods



commit 49049dc3ee642442712fc51d1e7d3b16585ffce1
Author: Edward Hervey <bilboed bilboed com>
Date:   Thu Jul 29 11:35:06 2010 +0200

    elements: Use new fast pad linking methods

 pitivi/elements/mixer.py           |   12 ++++++------
 pitivi/elements/singledecodebin.py |    5 +++--
 2 files changed, 9 insertions(+), 8 deletions(-)
---
diff --git a/pitivi/elements/mixer.py b/pitivi/elements/mixer.py
index 20bae4c..7d0d976 100644
--- a/pitivi/elements/mixer.py
+++ b/pitivi/elements/mixer.py
@@ -51,7 +51,7 @@ class SmartAdderBin(gst.Bin):
         csp = gst.element_factory_make("capsfilter")
         csp.props.caps = gst.Caps("audio/x-raw-int,depth=32,width=32,signed=True,rate=44100,channels=2,endianness=1234")
         self.add(self.adder, csp)
-        self.adder.link(csp)
+        self.adder.link_pads_full("src", csp, "sink", gst.PAD_LINK_CHECK_NOTHING)
         srcpad = gst.GhostPad("src", csp.get_pad("src"))
         srcpad.set_active(True)
         self.add_pad(srcpad)
@@ -70,9 +70,9 @@ class SmartAdderBin(gst.Bin):
         self.add(aconv, aresample)
         aconv.sync_state_with_parent()
         aresample.sync_state_with_parent()
-        aconv.link(aresample)
+        aconv.link_pads_full("src", aresample, "sink", gst.PAD_LINK_CHECK_NOTHING)
         adderpad = self.adder.get_request_pad("sink%d")
-        aresample.get_pad("src").link(adderpad)
+        aresample.get_pad("src").link_full(adderpad, gst.PAD_LINK_CHECK_NOTHING)
 
         pad = gst.GhostPad(name, aconv.get_pad("sink"))
         pad.set_active(True)
@@ -130,7 +130,7 @@ class SmartVideomixerBin(gst.Bin):
         # FIXME : USE THE PROJECT SETTINGS FOR THESE CAPS !
         csp = gst.element_factory_make("ffmpegcolorspace")
         self.add(self.videomixer, csp)
-        self.videomixer.link(csp)
+        self.videomixer.link_pads_full("src", csp, "sink", gst.PAD_LINK_CHECK_NOTHING)
         srcpad = gst.GhostPad("src", csp.get_pad("src"))
         srcpad.set_active(True)
         self.add_pad(srcpad)
@@ -160,13 +160,13 @@ class SmartVideomixerBin(gst.Bin):
 
         self.add(csp, capsfilter)
 
-        csp.link(capsfilter)
+        csp.link_pads_full("src", capsfilter, "sink", gst.PAD_LINK_CHECK_NOTHING)
         csp.sync_state_with_parent()
         capsfilter.sync_state_with_parent()
 
         videomixerpad = self.videomixer.get_request_pad("sink_%d" % self.pad_count)
 
-        capsfilter.get_pad("src").link(videomixerpad)
+        capsfilter.get_pad("src").link_full(videomixerpad, gst.PAD_LINK_CHECK_NOTHING)
 
         pad = gst.GhostPad(name, csp.get_pad("sink"))
         pad.set_active(True)
diff --git a/pitivi/elements/singledecodebin.py b/pitivi/elements/singledecodebin.py
index 7c656bf..7e06ec6 100644
--- a/pitivi/elements/singledecodebin.py
+++ b/pitivi/elements/singledecodebin.py
@@ -89,7 +89,8 @@ class SingleDecodeBin(gst.Bin):
             # Set the blocksize to 512kbytes, this will only matter for push-based sources
             if hasattr(self.urisrc.props, "blocksize"):
                 self.urisrc.props.blocksize = 524288
-            self.urisrc.link(self.typefind)
+            self.urisrc.link_pads_full("src", self.typefind, "sink",
+                                       gst.PAD_LINK_CHECK_NOTHING)
         else:
             self._sinkpad = gst.GhostPad("sink", self.typefind.get_pad("sink"))
             self._sinkpad.set_active(True)
@@ -188,7 +189,7 @@ class SingleDecodeBin(gst.Bin):
         queue.props.max_size_buffers = 3
         self.add(queue)
         queue.sync_state_with_parent()
-        pad.link(queue.get_pad("sink"))
+        pad.link_full(queue.get_pad("sink"), gst.PAD_LINK_CHECK_NOTHING)
         pad = queue.get_pad("src")
 
         return pad



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]