
Home |
Registration |
Accommodation and Travel |
List of Participants |
Program |
Installation instructions are available here.
These differ from the instructions on the gstlal project page, in that they are based on official GStreamer release tar balls (instead of git clones) and cover installation on LSC clusters only. Installing GStreamer from tar balls is much simpler but is not suitable for people who wish to do GStreamer development.
A quick anatomy lesson, how all the bits fit together.

$ gst-launch-0.10 filesrc location=10_-_My_Boy_Builds_Coffins.mp3 ! mad ! audioconvert ! audioresample ! osssinkgst-launch is a quick and dirty way of constructing pipeline graphs from the command line. We can visualize this graph easily using dot. Try setting the GST_DEBUG_DUMP_DOT_DIR variable:
$ GST_DEBUG_DUMP_DOT_DIR=. gst-launch-0.10 filesrc location=10_-_My_Boy_Builds_Coffins.mp3 ! mad ! audioconvert ! audioresample ! osssink $ dot 0.00.00.157226141-gst-launch.PAUSED_PLAYING.dot -Tpng -o playing.png

$ gst-launch-0.10 filesrc location=10_-_My_Boy_Builds_Coffins.mp3 ! mad ! autoaudiosink
$ gst-inspect gstlal
Plugin Details:
Name: gstlal
Description: Various bits of the LIGO Algorithm Library wrapped in gstreamer elements
Filename: /archive/home/channa/gstopt/lib/gstreamer-0.10/libgstlal.so
Version: 0.1.0
License: GPL
Source module: gstlal
Binary package: gstlal
Origin URL: http://www.lsc-group.phys.uwm.edu/daswg
lal_iirbank: IIR Filter Bank
lal_delay: Drops beginning of a stream
lal_reblock: Reblock
lal_nofakedisconts: Discontinuity flag fix
lal_timeslide: Time Slide
lal_togglecomplex: Toggle Complex
lal_sumsquares: Sum-of-Squares
lal_firbank: FIR Filter Bank
lal_autochisq: Autocorrelation \chi^{2}
lal_chisquare: Inspiral \chi^{2}
lal_gate: Gate
lal_triggerxmlwriter: Trigger XML Writer
lal_triggergen: Trigger Generator
lal_gap_trigger_veto: Gap Trigger Veto
lal_skymap: Skymap
lal_coinc: Coincidence Generator
lal_multiplier: Multiplier
lal_adder: Adder
lal_nxydump: NXY Dump
lal_whiten: Whiten
lal_simulation: Simulation
lal_matrixmixer: Matrix Mixer
lal_framesrc: GWF Frame File Source
23 features:
+-- 23 elements
$ gst-inspect python
Plugin Details:
Name: python
Description: loader for plugins written in python
Filename: /archive/home/channa/gstopt/lib/gstreamer-0.10/libgstpython.so
Version: 0.10.19.2
License: LGPL
Source module: gst-python
Binary package: GStreamer Python Bindings
Origin URL: http://gstreamer.freedesktop.org
lal_checktimestamps: Timestamp Checker Pass-Through Element
lal_fakeadvligosrc: Fake Advanced LIGO Source
lal_fakeligosrc: Fake LIGO Source
lal_fakeskymapsrc: Fake skymap source
lal_onlinehoftsrc: Online h(t) Source
lal_nongap_duty_cycle: Nongap Duty Cycle
6 features:
+-- 6 elements
$ gst-launch \ audiotestsrc wave=pink-noise num-buffers=1 samplesperbuffer=128 \ ! audio/x-raw-float,rate=16384,width=64 ! tee name=in_tee \ \ in_tee. ! queue ! lal_nxydump ! filesink location=x.txt sync=false \ in_tee. ! queue ! audioresample ! audio/x-raw-float,rate=4096,width=64 ! lal_nxydump ! filesink location=y.txt sync=falseThis pipeline creates an audio test source of pink noise sampled at 16384 Hz. It downsamples the stream to 4096 Hz and writes the original stream to disk as well as the downsampled one. This pipeline is a bit more complicated than the previous one:

#!/usr/bin/python
import numpy
import pylab
x = numpy.loadtxt("x.txt")
y = numpy.loadtxt("y.txt")
pylab.plot(x[:,0],x[:,1])
pylab.plot(y[:,0],y[:,1])
pylab.ylabel('amplitude')
pylab.xlabel('time')
pylab.title('Time series at two sample rates')
pylab.savefig('audioresample.png')
