X-Git-Url: https://git.slaskete.net/python-gstreamer-examples/blobdiff_plain/aa88dcf1d218876da18ed18bb2079c84b3dd7ae3..cc05679084a7164c5575feb7e6c85875ed903997:/example1.py diff --git a/example1.py b/example1.py index c2e6e6e..5916bb4 100755 --- a/example1.py +++ b/example1.py @@ -1,20 +1,21 @@ #!/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/ -# +# # It uses Gstreamer 1.0, and replaces alsa with pulse for audio output, and # drops the use of the GTK main loop, since we're not bothered with a GUI # Info on porting python scripts to Gstreamer 1.0 can be found here: # https://wiki.ubuntu.com/Novacut/GStreamer1.0 -from gi.repository import Gst -import gobject +import gi +gi.require_version('Gst', '1.0') +from gi.repository import Gst, GLib class Main: def __init__(self): # 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") @@ -32,5 +33,9 @@ class Main: # Create the pipelie and enter main loop, quit with ctrl+c start = Main() -mainloop = gobject.MainLoop() -mainloop.run() +mainloop = GLib.MainLoop() + +try: + mainloop.run() +except KeyboardInterrupt: + exit(0)