## audiomixer

audiomixer

## 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.

Unlike the adder element audiomixer properly synchronises all input 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