[pitivi] Make effect factory working for audios effects



commit 7f7a52bf5faa6cd05cab1e01631a2c8fac02518c
Author: Thibault Saunier <tsaunier src gnome org>
Date:   Sat Jun 12 12:29:42 2010 -0400

    Make effect factory working for audios effects

 pitivi/factories/operation.py |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)
---
diff --git a/pitivi/factories/operation.py b/pitivi/factories/operation.py
index 08fc75f..ad83d93 100644
--- a/pitivi/factories/operation.py
+++ b/pitivi/factories/operation.py
@@ -63,7 +63,20 @@ class EffectFactory (TransformFactory):
         self._effect = effect
 
     def _makeBin (self, *args):
-        return gst.element_factory_make(self._effect)
+        bin = gst.Bin()
+        fx = gst.element_factory_make(self._effect)
+        if isinstance(self.input_streams[0], VideoStream):
+            csp = gst.element_factory_make("ffmpegcolorspace")
+        else:
+            csp = gst.parse_bin_from_description("audioconvert ! audioresample")
+
+        bin.add(fx, csp)
+        csp.link(fx)
+
+        bin.add_pad(gst.GhostPad("sink", csp.get_pad("sink")))
+        bin.add_pad(gst.GhostPad("src", fx.get_pad("src")))
+
+        return bin
 
     def addInputStream(self, stream):
         return OperationFactory.addInputStream(self, stream)



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