D-Bus Interface: Streams

(Back to the toplevel D-Bus Interface page)

Objects and their interfaces:

  • /org/pulseaudio/core1/playback_streamX
      • org.PulseAudio.Core1.Stream - org.freedesktop.DBus.Properties - org.freedesktop.DBus.Introspectable
  • /org/pulseaudio/core1/record_streamX
      • org.PulseAudio.Core1.Stream - org.freedesktop.DBus.Properties - org.freedesktop.DBus.Introspectable

org.PulseAudio.Core1.Stream

Properties

Index

  • Type: Uint32
  • Access: read The stream index. Playback and record stream indices are separate, so it's perfectly normal to have two streams with the same index: the other stream is a playback stream and the other is a record stream.

Driver

  • Type: String
  • Access: read The driver that implements the stream object. This is usually expressed as a source code file name, for example "protocol-native.c".

!OwnerModule

  • Type: ObjectPath
  • Access: read The module that owns this stream. It's not guaranteed that any module claims ownership; in such case this property does not exist.

  • Errors:

Client

  • Type: ObjectPath
  • Access: read The client whose stream this is. Not all streams are created by clients, in those cases this property does not exist.

  • Errors:

Device

  • Type: ObjectPath
  • Access: read The device this stream is connected to.

!SampleFormat

!SampleRate

  • Type: Uint32
  • Access: read The sample rate of the stream.

Channels

Volume

  • Type: [Uint32]
  • Access: read/write The volume of the stream. The array is matched against the Channels property: the first array element is the volume of the first channel in the Channels property, and so on.

There are two ways to adjust the volume. You can either adjust the overall volume by giving a single-value array, or you can precisely control the individual channels by passing an array containing a value for each channel.

The volume can only be written if VolumeWritable is true.

!VolumeWritable

  • Type: Boolean
  • Access: read Whether or not the Volume property can be set. Note that read-only volumes can still change, clients just can't control them.

Mute

  • Type: Boolean
  • Access: read/write Whether or not the stream is currently muted. Record streams don't currently support muting, so this property exists for playback streams only for now.

  • Errors:

!BufferLatency

  • Type: Uint64
  • Access: read The length of buffered audio in microseconds that is not at the device yet/anymore.

!DeviceLatency

  • Type: Uint64
  • Access: read The length of buffered audio in microseconds at the device.

!ResampleMethod

  • Type: String
  • Access: read The resampling algorithm that is used to convert the stream audio data to/from the device's sample rate.

!PropertyList

  • Type: {String -> [Byte]}
  • Access: read The stream's property list.

Methods

Move

  • Arguments: device : ObjectPath
      • device: The device to move to Moves the stream to another device.

Kill

Kills the stream.

Signals

!DeviceUpdated

  • Parameters: device : ObjectPath
      • device: The new device The stream was moved to another device.

!SampleRateUpdated

  • Parameters: sample_rate : Uint32
      • sample_rate: The new sample rate The stream's sample rate was changed.

!VolumeUpdated

  • Parameters: volume : [Uint32]
      • volume: The new volume values The stream's volume was modified.

!MuteUpdated

  • Parameters: muted : Boolean
      • muted: The new mute state The stream was muted or unmuted.

!PropertyListUpdated

  • Parameters: property_list : {String -> [Byte]}
      • property_list: The new property list The stream's property list was modified.

!StreamEvent

  • Parameters: name : String, property_list : {String -> [Byte]}

      • name: Event name - property_list: Additional event parameters This signal is emitted when the server sends an event to a stream. Currently two stream events are defined:
  • "request-cork"

      • An application should cork a specific stream. This can be sent for example if the server implements a policy that when a phone call starts, all music streams shall pause. The property list doesn't contain any additional parameters.
  • "request-uncork"
      • Opposite of "request-cork". The property list doesn't contain any additional parameters.