pulsesink

pulsesink — Plays audio to a PulseAudio server

Synopsis

struct              GstPulseSink;

Object Hierarchy

  GObject
   +----GstObject
         +----GstElement
               +----GstBaseSink
                     +----GstBaseAudioSink
                           +----GstPulseSink

Implemented Interfaces

GstPulseSink implements GstStreamVolume, GstImplementsInterface and GstPropertyProbe.

Properties

  "device"                   gchar*                : Read / Write
  "server"                   gchar*                : Read / Write
  "device-name"              gchar*                : Read
  "volume"                   gdouble               : Read / Write
  "mute"                     gboolean              : Read / Write
  "client"                   gchar*                : Read / Write
  "stream-properties"        GstStructure*         : Read / Write

Description

This element outputs audio to a PulseAudio sound server.

Example pipelines

gst-launch -v filesrc location=sine.ogg ! oggdemux ! vorbisdec ! audioconvert ! audioresample ! pulsesink
Play an Ogg/Vorbis file.
gst-launch -v audiotestsrc ! audioconvert ! volume volume=0.4 ! pulsesink
Play a 440Hz sine wave.

Synopsis

Element Information

plugin

pulseaudio

author

Lennart Poettering

class

Sink/Audio

Element Pads

name

sink

direction

sink

presence

always

details

audio/x-raw-int, endianness=(int){ 1234, 4321 }, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]

audio/x-raw-float, endianness=(int){ 1234, 4321 }, width=(int)32, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]

audio/x-raw-int, endianness=(int){ 1234, 4321 }, signed=(boolean)true, width=(int)32, depth=(int)32, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]

audio/x-raw-int, endianness=(int){ 1234, 4321 }, signed=(boolean)true, width=(int)24, depth=(int)24, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]

audio/x-raw-int, endianness=(int){ 1234, 4321 }, signed=(boolean)true, width=(int)32, depth=(int)24, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]

audio/x-raw-int, signed=(boolean)false, width=(int)8, depth=(int)8, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]

audio/x-alaw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]

audio/x-mulaw, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 32 ]

Details

struct GstPulseSink

struct GstPulseSink;

Property Details

The "device" property

  "device"                   gchar*                : Read / Write

The PulseAudio sink device to connect to.

Default value: NULL


The "server" property

  "server"                   gchar*                : Read / Write

The PulseAudio server to connect to.

Default value: NULL


The "device-name" property

  "device-name"              gchar*                : Read

Human-readable name of the sound device.

Default value: NULL


The "volume" property

  "volume"                   gdouble               : Read / Write

Linear volume of this stream, 1.0=100%.

Allowed values: [0,10]

Default value: 1


The "mute" property

  "mute"                     gboolean              : Read / Write

Mute state of this stream.

Default value: FALSE


The "client" property

  "client"                   gchar*                : Read / Write

The PulseAudio client name to use.

Default value: "<unknown>"

Since 0.10.27


The "stream-properties" property

  "stream-properties"        GstStructure*         : Read / Write

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

Since 0.10.26

See Also

pulsesrc, pulsemixer