pulsesrc

This element captures audio from a PulseAudio sound server.

Example pipelines

 gst-launch-1.0 -v pulsesrc ! audioconvert ! vorbisenc ! oggmux ! filesink location=alsasrc.ogg

Record from a sound card using pulseaudio and encode to Ogg/Vorbis.

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstBaseSrc
                    ╰──GstPushSrc
                        ╰──GstAudioBaseSrc
                            ╰──GstAudioSrc
                                ╰──pulsesrc

Factory details

Authors: – Lennart Poettering

Classification:Source/Audio

Rank – primary + 10

Plugin – gstpulseaudio

Package – GStreamer Good Plug-ins git

Pad Templates

src

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 ]

Presencealways

Directionsrc


Properties

actual-buffer-time

“actual-buffer-time” gint64 *

Actual configured size of audio buffer in microseconds

Flags : Read

Default value : 18446744073709551615


actual-latency-time

“actual-latency-time” gint64 *

Actual configured audio latency in microseconds

Flags : Read

Default value : 18446744073709551615


blocksize

“blocksize” guint *

Size in bytes to read per buffer (-1 = default)

Flags : Read / Write

Default value : 0


buffer-time

“buffer-time” gint64 *

Size of audio buffer in microseconds. This is the maximum amount of data that is buffered in the device and the maximum latency that the source reports. This value might be ignored by the element if necessary; see "actual-buffer-time"

Flags : Read / Write

Default value : 200000


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 source device

Flags : Read


device

“device” gchararray *

The PulseAudio source 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


do-timestamp

“do-timestamp” gboolean *

Apply current stream time to buffers

Flags : Read / Write

Default value : false


latency-time

“latency-time” gint64 *

The minimum amount of data to read in each iteration in microseconds. This is the minimum latency that the source reports. This value might be ignored by the element if necessary; see "actual-latency-time"

Flags : Read / Write

Default value : 10000


mute

“mute” gboolean *

Whether the stream is muted or not.

Flags : Read / Write

Default value : false


name

“name” gchararray *

The name of the object

Flags : Read / Write / Construct

Default value : NULL


num-buffers

“num-buffers” gint *

Number of buffers to output before sending EOS (-1 = unlimited)

Flags : Read / Write

Default value : -1


parent

“parent” GstObject *

The parent of the object

Flags : Read / Write


provide-clock

“provide-clock” gboolean *

Provide a clock to be used as the global pipeline clock

Flags : Read / Write

Default value : true


server

“server” gchararray *

The PulseAudio server to connect to

Flags : Read / Write

Default value : NULL


slave-method

“slave-method” Audio-base-src-slave-method

Algorithm used to match the rate of the masterclock

Flags : Read / Write

Default value : skew (2)


source-output-index

“source-output-index” guint *

The index of the PulseAudio source output corresponding to this element.

Flags : Read

Default value : -1


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 (props);

Flags : Read / Write


typefind

“typefind” gboolean *

Run typefind before negotiating (deprecated, non-functional)

Flags : Read / Write

Default value : false


volume

“volume” gdouble *

The volume of the record stream.

Flags : Read / Write

Default value : 1


Named constants

Audio-base-src-slave-method

Members

resample (0) – GST_AUDIO_BASE_SRC_SLAVE_RESAMPLE
re-timestamp (1) – GST_AUDIO_BASE_SRC_SLAVE_RE_TIMESTAMP
skew (2) – GST_AUDIO_BASE_SRC_SLAVE_SKEW
none (3) – GST_AUDIO_BASE_SRC_SLAVE_NONE

The results of the search are