<div dir="ltr">Hello, <br>With this code, I can play a music file encode in vorbis and muxer in ogg. Now I want to play a video in mpg. To do it, I want use the element playbin.<br><br><i>#!/usr/bin/python<br># import a buch of things<br>
import pygst<br>pygst.require(&quot;0.10&quot;)<br>import gst<br>import pygtk<br>import gtk<br>import gtk.glade<br><br># create a class and its constructor<br>class Main:<br>&nbsp;&nbsp;&nbsp; def __init__(self):<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # set up the glade file<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.wTree = gtk.glade.XML(&quot;Gui_client.glade&quot;, &quot;mainwindow&quot;)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; signals = {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &quot;on_play_clicked&quot; : self.OnPlay,<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &quot;on_stop_clicked&quot; : self.OnStop,<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &quot;on_quit_clicked&quot; : self.OnQuit,<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.wTree.signal_autoconnect(signals)<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # creating the pipeline<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.pipeline = gst.Pipeline(&quot;mypipeline&quot;)<br>
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # creating a gnlcomposition<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.comp = gst.element_factory_make(&quot;gnlcomposition&quot;, &quot;mycomposition&quot;)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.pipeline.add(self.comp)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.comp.connect(&quot;pad-added&quot;, self.OnPad)<br>
<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # create an audioconvert<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.compconvert = gst.element_factory_make(&quot;audioconvert&quot;, &quot;compconvert&quot;)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.pipeline.add(self.compconvert)<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # create an alsasink<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.sink = gst.element_factory_make(&quot;alsasink&quot;, &quot;alsasink&quot;)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.pipeline.add(self.sink)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.compconvert.link(self.sink)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # create a gnlfilesource<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.audio = gst.element_factory_make(&quot;gnlfilesource&quot;, &quot;audio&quot;)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.comp.add(self.audio)<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # set the gnlfilesource properties<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.audio.set_property(&quot;location&quot;, &quot;/home/toto/Desktop/VoD/Sound.ogg&quot;)<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.audio.set_property(&quot;start&quot;, 10 * gst.SECOND)<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.audio.set_property(&quot;duration&quot;, 10000000 * gst.SECOND )<br><br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; # show the window<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.window = self.wTree.get_widget(&quot;mainwindow&quot;)<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.window.show_all()<br><br>&nbsp;&nbsp;&nbsp; def OnPad(self, comp, pad):<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; print &quot;pad added!&quot;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; convpad = self.compconvert.get_compatible_pad(pad, pad.get_caps())<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; pad.link(convpad)<br><br>
&nbsp;&nbsp;&nbsp; def OnPlay(self, widget):<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; print &quot;play&quot;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.pipeline.set_state(gst.STATE_PLAYING)<br><br>&nbsp;&nbsp;&nbsp; def OnStop(self, widget):<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; print &quot;stop&quot;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; self.pipeline.set_state(gst.STATE_NULL)<br>
<br>&nbsp;&nbsp;&nbsp; def OnQuit(self, widget):<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; print &quot;quitting&quot;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; gtk.main_quit()<br><br>start=Main()<br>gtk.main()</i><br><br><br>Now I want to play a video in mpg. To do it, I would like to use the playbin element but I don&#39;t arrive there.<br>
Somebody knows how I could make that ?<br><br>Thanks,<br>Fab<br></div>