gst-fractions the bane of my existence
[python-gstreamer-examples] / example2.py
index 21d4dbb9517917caef3a234aca3488bb8fd0b820..9e8ff84d12d09b9743961450734f76eb9a6335a3 100755 (executable)
@@ -1,22 +1,25 @@
 #!/usr/bin/env python
-# This is a reworked version of the example from Jono Bacon's Python+Gstreamer primer:
-# http://www.jonobacon.org/2006/08/28/getting-started-with-gstreamer-with-python/
-# 
+# This is a reworked version gstreamer example 2 from Jono Bacon's Python and
+# Gstreamer primer:
+# http://www.jonobacon.org/2006/08/28/getting-started-with-gstreamer-with-python
+#
 # It uses Gstreamer 1.0, GTK3, and replaces alsa with pulse for audio output
 # Info on porting python scripts to GStreamer 1.0 can be found here:
 # https://wiki.ubuntu.com/Novacut/GStreamer1.0
 
+import gi, signal
+gi.require_version('Gtk', '3.0')
+gi.require_version('Gst', '1.0')
 from gi.repository import Gtk, Gst
-import signal
 
 class Main:
     def __init__(self):
-        
+
         # Create gui bits and bobs
 
         self.wTree = Gtk.Builder()
         self.wTree.add_from_file("example2.glade")
-        
+
         signals = {
             "on_play_clicked" : self.OnPlay,
             "on_stop_clicked" : self.OnStop,
@@ -29,11 +32,11 @@ class Main:
 
         # Initiate the pipeline
         Gst.init(None)
-        self.pipeline = Gst.Pipeline("mypipeline")
+        self.pipeline = Gst.Pipeline()
 
         # Add an audiotestsrc element to the pipeline
         self.audiotestsrc = Gst.ElementFactory.make("audiotestsrc", "audio")
-        self.audiotestsrc.set_property("freq", 200)
+        self.audiotestsrc.set_property("freq", 800)
         self.pipeline.add(self.audiotestsrc)
 
         # Add a pulsesink element to the pipeline
@@ -50,15 +53,15 @@ class Main:
 
 
     def OnPlay(self, widget):
-        print "play"
+        print("play")
         self.pipeline.set_state(Gst.State.PLAYING)
 
     def OnStop(self, widget):
-        print "stop"
+        print("stop")
         self.pipeline.set_state(Gst.State.READY)
-        
+
     def OnQuit(self, widget):
-        print "quit"
+        print("quit")
         Gtk.main_quit()
 
     # Workaround to get Ctrl+C to terminate from command line