gstlal_play¶
This program will play data in a variety of ways
This program will play data in a variety of ways. Its input is anything
supported by datasource
. You can additionally whiten the data
or apply a band pass filtering. It can direct its output to either your
sound card, various audio file formats, or stderr/stdout in tab delimited
ASCII text.
Graph of the gsreamer pipeline¶
gray boxes are optional and depend on the command line given
Usage cases¶
See datasource.append_options()
for additional usage cases for datasource specific command line options
Viewing low latency data in stdout (e.g. on CIT cluster) Note ctrl+c kills this:
$ gstlal_play --data-source framexmit --channel-name=L1=FAKE-STRAIN \ --output /dev/stdout
2. Pipe low latency data to an ogg file narrowing in on the sweet spot and add amplification to make it audible. Note ctrl+c kills this:
$ gstlal_play --data-source framexmit --channel-name=L1=FAKE-STRAIN \
--high-pass-filter 40 --low-pass-filter 1000 --amplification 1e21 --output test.ogg
Write injection time series from an xml file into an ASCII delimited text file:
$ gstlal_play --data-source silence --gps-start-time 966383960 \ --gps-end-time 966384960 --channel-name=L1=FAKE-STRAIN \ --injections=BNS-MDC1-FIXEDMASS.xml --output test.txt
Other things are certainly possible. Please add some!
Command line options¶
Usage: gstlal_play [options]
Options:
-h, --help show this help message and exit
--output=filename Set the filename in which to save the output. If not
given, output is sent to the default audio device.
The filename's extension determines the format, the
following are recognized: .wav, .flac, .ogg, .txt,
/dev/stdout, /dev/stderr
--sample-format=name Force a specific sample format for the output. If not
specified, the format is chosen by auto-negotiation
with the encoder. Allowed values are any GStreamer-
recognized format that is compatible with the
requested encoder. Examples include "F32LE", "F64LE".
--rate=Hz Downsample input to this sample rate. Default = 4096
Hz. Must be <= input sample rate or else you will get
a caps negotiation error.
--whiten Whiten the time series (default = do not whiten).
--veto-segments-file=filename
Set the name of the LIGO light-weight XML file from
which to load vetoes (optional). Must coincide with
--whiten
--veto-segments-name=name
Set the name of the segments to extract from the
segment tables and use as the veto list. Must
coincide with --whiten
--reference-psd=file When whitening, normalize the time series to the
spectrum described in this XML file. If this option
is not given, the spectrum is measured from the data.
--low-pass-filter=Hz Low pass filter frequency (default = no low-pass
filter). Low-pass filter is applied after whitening.
--high-pass-filter=Hz
High pass filter frequency (default = no high-pass
filter). High-pass filter is applied after whitening.
--amplification=num Amplify the timeseries this much (default = no
amplification). Amplification is applied after low-
and high-pass filtering. For unwhitened h(t) that is
bandpassed to the most sensitive region you might need
to set this to 1e20 to make it audible
-v, --verbose Be verbose.
Data source options:
Use these options to set up the appropriate data source
--data-source=source
Set the data source from
[frames|framexmit|lvshm|nds|silence|white]. Required.
--block-size=bytes Data block size to read in bytes. Default 16384 * 8 *
512 (512 seconds of double precision data at 16384 Hz.
This parameter is only used if --data-source is one of
white, silence, AdvVirgo, LIGO, AdvLIGO, nds.
--frame-cache=filename
Set the name of the LAL cache listing the LIGO-Virgo
.gwf frame files (optional).
--frame-type=name Set the frame type for a given instrument. Can be
given multiple times as --frame-type=IFO=FRAME-TYPE.
Used with --data-source=frames
--data-find-server=url
Set the data find server for LIGO data discovery. Used
with --data-source=frames
--gps-start-time=seconds
Set the start time of the segment to analyze in GPS
seconds. Required unless --data-source=lvshm
--gps-end-time=seconds
Set the end time of the segment to analyze in GPS
seconds. Required unless --data-source=lvshm
--injection-file=filename
Set the name of the LIGO light-weight XML file from
which to load injections (optional).
--channel-name=name
Set the name of the channels to process. Can be given
multiple times as --channel-name=IFO=CHANNEL-NAME
--idq-channel-name=idqname
iDQ channel names to process. Must also provide idq-
state-channel-name. Can be given multiple times as
--idq-channel-name=IFO=IDQ-CHANNEL-NAME
--idq-state-channel-name=idqstatename
iDQ state channel names to process. Can be given
multiple times as --idq-state-channel-name=IFO=IDQ-
STATE-CHANNEL-NAME
--nds-host=hostname
Set the remote host or IP address that serves nds
data. This is required iff --data-source=nds
--nds-port=portnumber
Set the port of the remote host that serves nds data.
This is required iff --data-source=nds
--nds-channel-type=type
Set the port of the remote host that serves nds data.
This is required only if --data-source=nds.
default==online
--framexmit-addr=name
Set the address of the framexmit service. Can be
given multiple times as --framexmit-
addr=IFO=xxx.xxx.xxx.xxx:port
--framexmit-iface=name
Set the multicast interface address of the framexmit
service.
--state-channel-name=name
Set the name of the state vector channel. This
channel will be used to control the flow of data via
the on/off bits. Can be given multiple times as
--channel-name=IFO=CHANNEL-NAME
--dq-channel-name=name
Set the name of the data quality channel. This
channel will be used to control the flow of data via
the on/off bits. Can be given multiple times as
--channel-name=IFO=CHANNEL-NAME
--shared-memory-partition=name
Set the name of the shared memory partition for a
given instrument. Can be given multiple times as
--shared-memory-partition=IFO=PARTITION-NAME
--shared-memory-dir=name
Set the name of the shared memory directory for a
given instrument. Can be given multiple times as
--shared-memory-dir=IFO=DIR-NAME
--shared-memory-assumed-duration=SHARED_MEMORY_ASSUMED_DURATION
Set the assumed span of files in seconds. Default = 4.
--shared-memory-block-size=SHARED_MEMORY_BLOCK_SIZE
Set the byte size to read per buffer. Default = 4096.
--frame-segments-file=filename
Set the name of the LIGO light-weight XML file from
which to load frame segments. Optional iff --data-
source=frames
--frame-segments-name=name
Set the name of the segments to extract from the
segment tables. Required iff --frame-segments-file is
given
--state-vector-on-bits=bits
Set the state vector on bits to process (optional).
The default is 0x7 for all detectors. Override with
IFO=bits can be given multiple times. Only currently
has meaning for online (lvshm) data.
--state-vector-off-bits=bits
Set the state vector off bits to process (optional).
The default is 0x160 for all detectors. Override with
IFO=bits can be given multiple times. Only currently
has meaning for online (lvshm) data.
--dq-vector-on-bits=bits
Set the DQ vector on bits to process (optional). The
default is 0x7 for all detectors. Override with
IFO=bits can be given multiple times. Only currently
has meaning for online (lvshm) data.
--dq-vector-off-bits=bits
Set the DQ vector off bits to process (optional). The
default is 0x160 for all detectors. Override with
IFO=bits can be given multiple times. Only currently
has meaning for online (lvshm) data.