Slightly less derpy way to let the pipeline play
[python-gstreamer-examples] / example3.py
index f5af59b29b05e6d6915fa254bb72e1deac1a9cce..c7d79703344f3980b3487e27652effebae43bf30 100755 (executable)
@@ -4,21 +4,20 @@
 # http://bazaar.launchpad.net/~jderose/+junk/gst-examples/view/head:/video-player-1.0
 
 # GdkX11 to get access to xid, GstVideo to get access to set_window_handle
-import gi
+import gi, signal
 gi.require_version('Gtk', '3.0')
 gi.require_version('Gst', '1.0')
 gi.require_version('GstVideo', '1.0')
 from gi.repository import Gtk, Gst, GdkX11, GstVideo
-import signal
 
 class Main:
     def __init__(self):
-        
+
         # Create gui bits and bobs
 
         self.mainwindow = Gtk.Builder()
         self.mainwindow.add_from_file("example3.glade")
-        
+
         signals = {
             "on_play_clicked" : self.OnPlay,
             "on_stop_clicked" : self.OnStop,
@@ -37,12 +36,12 @@ class Main:
         self.videotestsrc = Gst.ElementFactory.make("videotestsrc", "videosource")
         self.videotestsrc.set_property("pattern", "snow")
         self.pipeline.add(self.videotestsrc)
-        
+
         # Add a capsfilter that we want to apply to our videotestsrc
         self.videotestcaps = Gst.ElementFactory.make("capsfilter", "videotestcaps")
         self.videotestcaps.set_property("caps",Gst.Caps.from_string("video/x-raw,width=640,height=480"))
         self.pipeline.add(self.videotestcaps)
-        
+
         # Link the capsfilter to the videotestsrc
         self.videotestsrc.link(self.videotestcaps)
 
@@ -52,17 +51,17 @@ class Main:
 
         # Link the already linked videotestcaps to the sink
         self.videotestcaps.link(self.videosink)
-        
+
         # Set up a bus to our pipeline to get notified when the video is ready
         self.bus = self.pipeline.get_bus()
         self.bus.enable_sync_message_emission()
         self.bus.connect("sync-message::element", self.OnSyncElement)
-        
+
         # Summon the window and connect the window's close button to quit
         self.window = self.mainwindow.get_object("mainwindow")
         self.window.connect("delete-event", Gtk.main_quit)
         self.window.show_all()
-        
+
         # Get window ID of the viewport widget from the GUI
         self.win_id = self.mainwindow.get_object("viewport").get_window().get_xid()
 
@@ -81,7 +80,7 @@ class Main:
     def OnStop(self, widget):
         print("stop")
         self.pipeline.set_state(Gst.State.READY)
-        
+
     def OnQuit(self, widget):
         print("quit")
         Gtk.main_quit()