## 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
                        ╰── 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