diff options
author | Clint Savage <herlo1@gmail.com> | 2010-01-30 22:20:33 -0700 |
---|---|---|
committer | Clint Savage <herlo1@gmail.com> | 2010-01-30 22:20:33 -0700 |
commit | 0ad07b2549788c64b63aa6d6a1d27caf02c34e06 (patch) | |
tree | 48232c6bca0328f1a5c8863ac1b4a2174d75cb9e | |
parent | dbe4f2e06020bb05db82c80c6fb46dadd45f4f4a (diff) | |
download | freeseer-playground.tar.gz freeseer-playground.tar.xz freeseer-playground.zip |
adding dvdemux code from ausilplayground
-rwxr-xr-x | src/freeseer.py | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/freeseer.py b/src/freeseer.py index 138580c..308b3fb 100755 --- a/src/freeseer.py +++ b/src/freeseer.py @@ -106,6 +106,12 @@ class FreeSeeR: imagesink.set_property("force-aspect-ratio", True) imagesink.set_xwindow_id(self.window_id) + def _dvdemux_padded(self, dbin, pad): + print "dvdemux got pad %s" % pad.get_name() + if pad.get_name() == 'video': + print "Linking dvdemux to queue1" + self.dv1394dvdemux.link(self.dv1394q1) + def change_videosrc(self, new_source, new_device): if (self.viddrv == 'dv1394src'): self.player.remove(self.dv1394q1) @@ -133,7 +139,9 @@ class FreeSeeR: self.dv1394dvdemux = gst.element_factory_make("dvdemux", "dv1394dvdemux") self.dv1394dvdec = gst.element_factory_make("dvdec", "dv1394dvdec") self.player.add(self.dv1394q1, self.dv1394q2, self.dv1394dvdemux, self.dv1394dvdec) - gst.element_link_many(self.vidsrc, self.dv1394q1, self.dv1394dvdemux, self.dv1394q2, self.dv1394dvdec, self.cspace) + self.vidsrc.link(self.dv1394dvdemux) + self.dv1394dvdemux.connect('pad-added', self._dvdemux_padded) + gst.element_link_many( self.dv1394q1, self.dv1394dvdec, self.cspace) return gst.element_link_many(self.vidsrc, self.cspace) |