X-Git-Url: https://git.slaskete.net/python-gstreamer-examples/blobdiff_plain/2da3df6c3227bf894baa8410917f6150a280025f..refs/heads/master:/example2.py?ds=sidebyside diff --git a/example2.py b/example2.py index 21d4dbb..9e8ff84 100755 --- a/example2.py +++ b/example2.py @@ -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