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

Presencealways

Directionsink

Object typeGstPad


Properties

alignment-threshold

“alignment-threshold” guint64

Timestamp alignment threshold in nanoseconds

Flags : Read / Write

Default value : 40000000


async

“async” gboolean

Go asynchronously to PAUSED

Flags : Read / Write

Default value : true


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


current-device

“current-device” gchararray

The current PulseAudio sink device

Flags : Read


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


last-sample

“last-sample” GstSample *

The last sample received in the sink

Flags : Read


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


mute

“mute” gboolean

Mute state of this stream

Flags : Read / Write

Default value : false


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


sync

“sync” gboolean

Sync on the clock

Flags : Read / Write

Default value : true


throttle-time

“throttle-time” guint64

The time to keep between rendered buffers (0 = disabled)

Flags : Read / Write

Default value : 0


ts-offset

“ts-offset” gint64

Timestamp offset in nanoseconds

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