audiomixer

audiomixer — Mixes multiple audio streams

Properties

guint64 alignment-threshold Read / Write
GstCaps * caps Read / Write
guint64 discont-wait Read / Write
guint blocksize Read / Write
guint64 output-buffer-duration Read / Write

Types and Values

struct GstAudioMixer

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GstObject
            ╰── GstElement
                ╰── GstAggregator
                    ╰── GstAudioAggregator
                        ╰── GstAudioMixer

Implemented Interfaces

GstAudioMixer implements GstChildProxy.

Description

The audiomixer allows to mix several streams into one by adding the data. Mixed data is clamped to the min/max values of the data format.

The audiomixer currently mixes all data received on the sinkpads as soon as possible without trying to synchronize the streams.

The input pads are from a GstPad subclass and have additional properties to mute each pad individually and set the volume:

  • "mute": Whether to mute the pad or not (gboolean)
  • "volume": The volume of the pad, between 0.0 and 10.0 (gdouble)

Example launch line

1
gst-launch audiotestsrc freq=100 ! audiomixer name=mix ! audioconvert ! alsasink audiotestsrc freq=500 ! mix.
This pipeline produces two sine waves mixed together.

Synopsis

Element Information

plugin

audiomixer

author

Sebastian Dröge <sebastian@centricular.com>

class

Generic/Audio

Element Pads

name

sink_%u

direction

sink

presence

request

details

audio/x-raw, format=(string){ S32LE, U32LE, S16LE, U16LE, S8, U8, F32LE, F64LE }, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], layout=(string){ interleaved, non-interleaved }

name

src

direction

source

presence

always

details

audio/x-raw, format=(string){ S32LE, U32LE, S16LE, U16LE, S8, U8, F32LE, F64LE }, rate=(int)[ 1, 2147483647 ], channels=(int)[ 1, 2147483647 ], layout=(string){ interleaved, non-interleaved }

Functions

Types and Values

struct GstAudioMixer

struct GstAudioMixer;

The audiomixer object structure.

Property Details

The “alignment-threshold” property

  “alignment-threshold”      guint64

Timestamp alignment threshold in nanoseconds.

Flags: Read / Write

Allowed values: <= 18446744073709551614

Default value: 40000000


The “caps” property

  “caps”                     GstCaps *

Set target format for mixing (NULL means ANY). Setting this property takes a reference to the supplied GstCaps object.

Flags: Read / Write


The “discont-wait” property

  “discont-wait”             guint64

Window of time in nanoseconds to wait before creating a discontinuity.

Flags: Read / Write

Allowed values: <= 18446744073709551614

Default value: 1000000000


The “blocksize” property

  “blocksize”                guint

Output block size in number of samples.

Flags: Read / Write

Default value: 1024


The “output-buffer-duration” property

  “output-buffer-duration”   guint64

Output block size in nanoseconds.

Flags: Read / Write

Allowed values: >= 1

Default value: 10000000