Step 1: Use GstLAL in your python script
- Include the following part in your python script to use GstLAL
Toggle line numbers
1 import sys
2 import gi
3 gi.require_version('Gst', '1.0')
4 from gi.repository import GObject, Gst
5 GObject.threads_init()
6 Gst.init(None)
7
8 from gstlal import pipeparts as pp
9 from gstlal import calibration_parts as cp
10 from gstlal import simplehandler
11 from gstlal import datasource
- Initialize your pipeline
Toggle line numbers
1 pipeline = Gst.Pipeline(name=pname)
2 mainloop = GObject.MainLoop()
3 handler = simplehandler.Handler(mainloop, pipeline)
- Put your pipeline description
...
- Run your pipeline where you need to specify gps_start_time and gps_end_time
Toggle line numbers
1 print >>sys.stderr, "seeking GPS start and stop times ..."
2 if pipeline.set_state(Gst.State.READY) != Gst.StateChangeReturn.SUCCESS:
3 raise RuntimeError("pipeline failed to enter READY state")
4 datasource.pipeline_seek_for_gps(pipeline, gps_start_time, gps_end_time)
5
6 print >>sys.stderr, "setting pipeline state to playing ..."
7 if pipeline.set_state(Gst.State.PLAYING) != Gst.StateChangeReturn.SUCCESS:
8 raise RuntimeError("pipeline failed to enter PLAYING state")
9 else:
10 print >>sys.stderr, "set to playing successfully"
11
12 print >>sys.stderr, "running pipeline ..."
13
14 mainloop.run()
15
16 if pipeline.set_state(Gst.State.NULL) != Gst.StateChangeReturn.SUCCESS:
17 raise RuntimeError("pipeline could not be set to NULL")