X-Git-Url: https://git.slaskete.net/python-gstreamer-examples/blobdiff_plain/b54b187e73a58eb84029383355ae66f95d17d75a..cc05679084a7164c5575feb7e6c85875ed903997:/example1.py?ds=sidebyside diff --git a/example1.py b/example1.py index 3d944ba..5916bb4 100755 --- a/example1.py +++ b/example1.py @@ -1,19 +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, 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") @@ -31,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)