rendered paste body#!/usr/bin/pythonimport pygstpygst.require("0.10")import gstimport pygtkimport gtkimport gobjectclass Main: def __init__(self): self.pipeline = gst.Pipeline("mypipeline") self.filesrc = gst.element_factory_make("filesrc", "source") self.pipeline.add(self.filesrc) self.filesrc.set_property("location", "/home/user/MyDocs/exportUB2.ogg") self.decode = gst.element_factory_make("decodebin", "decode") self.convert1 = gst.element_factory_make("audioconvert", "convert1") self.pipeline.add(self.convert1) self.convert = gst.element_factory_make("audioconvert", "convert") self.adder = gst.element_factory_make("adder", "add") self.sink = gst.element_factory_make("dsppcmsink", "sink") self.vol1 = gst.element_factory_make("volume", "vol1") self.pipeline.add(self.vol1) self.decode.connect("new-decoded-pad", self.OnDynamicPad, self.convert1, 0) self.pipeline.add(self.decode) self.pipeline.add(self.convert) self.pipeline.add(self.adder) self.pipeline.add(self.sink) self.filesrc.link(self.decode) self.vol1.set_property("volume", 0.5) self.convert1.link(self.vol1) self.vol1.link(self.adder) #self.convert1.link(self.adder) #self.convert2.link(self.adder) self.adder.link(self.convert) self.convert.link(self.sink) self.pipeline.set_state(gst.STATE_PLAYING) print "set playing" gobject.timeout_add(5000, self.weg) def weg(self): self.filesrc2 = gst.element_factory_make("filesrc", "source2") self.pipeline.add(self.filesrc2) self.filesrc2.set_property("location", "/home/user/MyDocs/exportUB2.ogg") self.decode2 = gst.element_factory_make("decodebin", "decode2") self.pipeline.add(self.decode2) self.convert2 = gst.element_factory_make("audioconvert", "convert2") self.pipeline.add(self.convert2) self.vol2 = gst.element_factory_make("volume", "vol2") self.pipeline.add(self.vol2) self.decode2.connect("new-decoded-pad", self.OnDynamicPad, self.convert2, 1) self.filesrc2.link(self.decode2) self.vol2.set_property("volume", 0.5) self.convert2.link(self.vol2) self.decode2.set_state(gst.STATE_PLAYING) self.vol2.link(self.adder) self.pipeline.set_state(gst.STATE_PLAYING) True def OnDynamicPad(self, dbin, pad, islast, worker, ii): print "OnDynamicPad Called!" pad.link(worker.get_compatible_pad(pad, pad.get_caps()))start=Main()gtk.main()