pulsesink
This element outputs audio to a PulseAudio sound server.
Example pipelines
gst-launch-1.0 -v filesrc location=sine.ogg ! oggdemux ! vorbisdec ! audioconvert ! audioresample ! pulsesink
Play an Ogg/Vorbis file.
gst-launch-1.0 -v audiotestsrc ! audioconvert ! volume volume=0.4 ! pulsesink
Play a 440Hz sine wave.
gst-launch-1.0 -v audiotestsrc ! pulsesink stream-properties="props,media.title=test"
Play a sine wave and set a stream property. The property can be checked with "pactl list".
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──GstBaseSink ╰──GstAudioBaseSink ╰──pulsesink
Factory details
Authors: – Lennart Poettering
Classification: – Sink/Audio
Rank – primary + 10
Plugin – gstpulseaudio
Package – GStreamer Good Plug-ins
Pad Templates
sink
audio/x-raw:
format: { S16LE, S16BE, F32LE, F32BE, S32LE, S32BE, S24LE, S24BE, S24_32LE, S24_32BE, U8 }
layout: interleaved
rate: [ 1, 384000 ]
channels: [ 1, 32 ]
audio/x-alaw:
rate: [ 1, 384000 ]
channels: [ 1, 32 ]
audio/x-mulaw:
rate: [ 1, 384000 ]
channels: [ 1, 32 ]
audio/x-ac3:
framed: true
audio/x-eac3:
framed: true
audio/x-dts:
framed: true
block-size: { (int)512, (int)1024, (int)2048 }
audio/mpeg:
mpegversion: 1
mpegaudioversion: [ 1, 3 ]
parsed: true
audio/mpeg:
mpegversion: { (int)2, (int)4 }
framed: true
stream-format: adts
Properties
alignment-threshold
“alignment-threshold” guint64
Timestamp alignment threshold in nanoseconds
Flags : Read / Write
Default value : 40000000
blocksize
“blocksize” guint
Size in bytes to pull per buffer (0 = default)
Flags : Read / Write
Default value : 4096
buffer-time
“buffer-time” gint64
Size of audio buffer in microseconds, this is the minimum latency that the sink reports
Flags : Read / Write
Default value : 200000
can-activate-pull
“can-activate-pull” gboolean
Allow pull-based scheduling
Flags : Read / Write
Default value : false
client-name
“client-name” gchararray
The PulseAudio client name to use.
Flags : Read / Write
Default value : gst-hotdoc-plugins-scanner
device
“device” gchararray
The PulseAudio sink device to connect to
Flags : Read / Write
Default value : NULL
device-name
“device-name” gchararray
Human-readable name of the sound device
Flags : Read
Default value : NULL
discont-wait
“discont-wait” guint64
Window of time in nanoseconds to wait before creating a discontinuity
Flags : Read / Write
Default value : 1000000000
drift-tolerance
“drift-tolerance” gint64
Tolerance for clock drift in microseconds
Flags : Read / Write
Default value : 40000
enable-last-sample
“enable-last-sample” gboolean
Enable the last-sample property
Flags : Read / Write
Default value : false
latency-time
“latency-time” gint64
The minimum amount of data to write in each iteration in microseconds
Flags : Read / Write
Default value : 10000
max-bitrate
“max-bitrate” guint64
The maximum bits per second to render (0 = disabled)
Flags : Read / Write
Default value : 0
max-lateness
“max-lateness” gint64
Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)
Flags : Read / Write
Default value : 18446744073709551615
processing-deadline
“processing-deadline” guint64
Maximum processing time for a buffer in nanoseconds
Flags : Read / Write
Default value : 20000000
provide-clock
“provide-clock” gboolean
Provide a clock to be used as the global pipeline clock
Flags : Read / Write
Default value : true
qos
“qos” gboolean
Generate Quality-of-Service events upstream
Flags : Read / Write
Default value : false
render-delay
“render-delay” guint64
Additional render delay of the sink in nanoseconds
Flags : Read / Write
Default value : 0
server
“server” gchararray
The PulseAudio server to connect to
Flags : Read / Write
Default value : NULL
slave-method
“slave-method” GstAudioBaseSinkSlaveMethod *
Algorithm used to match the rate of the masterclock
Flags : Read / Write
Default value : skew (1)
stats
“stats” GstStructure *
Sink Statistics
Flags : Read
Default value :
application/x-gst-base-sink-stats, average-rate=(double)0, dropped=(guint64)0, rendered=(guint64)0;
stream-properties
“stream-properties” GstStructure *
List of pulseaudio stream properties. A list of defined properties can be found in the pulseaudio api docs.
Below is an example for registering as a music application to pulseaudio.
GstStructure *props;
props = gst_structure_from_string ("props,media.role=music", NULL);
g_object_set (pulse, "stream-properties", props, NULL);
gst_structure_free
Flags : Read / Write
throttle-time
“throttle-time” guint64
The time to keep between rendered buffers (0 = disabled)
Flags : Read / Write
Default value : 0
volume
“volume” gdouble
Linear volume of this stream, 1.0=100%%
Flags : Read / Write
Default value : 1
The results of the search are