# DefaultAudioMixer.Factory

Artifact: [androidx.media3:media3-transformer](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/transformer/DefaultAudioMixer.java+class:androidx.media3.transformer.DefaultAudioMixer.Factory)

*** ** * ** ***


```
public final class DefaultAudioMixer.Factory implements AudioMixer.Factory
```

<br />

*** ** * ** ***

An `https://developer.android.com/reference/androidx/media3/transformer/AudioMixer.Factory` implementation for `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer` instances.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer.Factory#Factory()()` Creates an instance. |
| `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer.Factory#Factory(boolean,boolean)(boolean outputSilenceWithNoSources, boolean clipFloatOutput)` Creates an instance. |
| `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer.Factory#Factory(boolean,boolean,boolean)( boolean outputSilenceWithNoSources, boolean clipFloatOutput, boolean useConstantPowerMixingMatrices )` Creates an instance. |

| ### Public methods |
|---|---|
| `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer` | `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer.Factory#create()()` |

## Public constructors

### Factory

```
public Factory()
```

Creates an instance. This is equivalent to `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer.Factory#Factory(boolean,boolean,boolean)`.

### Factory

```
public Factory(boolean outputSilenceWithNoSources, boolean clipFloatOutput)
```

Creates an instance. This is equivalent to `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer.Factory#Factory(boolean,boolean,boolean)`.

| Parameters |
|---|---|
| `boolean outputSilenceWithNoSources` | Whether to `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer#getOutput()` silence when there are no `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer#addSource(androidx.media3.common.audio.AudioProcessor.AudioFormat,long)`. |
| `boolean clipFloatOutput` | Whether to clip the output signal to be in the \[-1.0, 1.0\] range if the output encoding is `https://developer.android.com/reference/androidx/media3/common/C#ENCODING_PCM_FLOAT()`. This parameter is ignored for non-float output signals. For float output signals, non-float input signals are converted to float signals in the \[-1.0, 1.0\] range. All input signals (float or non-float) are then added and the result is clipped if and only if `clipFloatOutput` is true. |

### Factory

```
public Factory(
    boolean outputSilenceWithNoSources,
    boolean clipFloatOutput,
    boolean useConstantPowerMixingMatrices
)
```

Creates an instance.

| Parameters |
|---|---|
| `boolean outputSilenceWithNoSources` | Whether to `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer#getOutput()` silence when there are no `https://developer.android.com/reference/androidx/media3/transformer/DefaultAudioMixer#addSource(androidx.media3.common.audio.AudioProcessor.AudioFormat,long)`. |
| `boolean clipFloatOutput` | Whether to clip the output signal to be in the \[-1.0, 1.0\] range if the output encoding is `https://developer.android.com/reference/androidx/media3/common/C#ENCODING_PCM_FLOAT()`. This parameter is ignored for non-float output signals. For float output signals, non-float input signals are converted to float signals in the \[-1.0, 1.0\] range. All input signals (float or non-float) are then added and the result is clipped if and only if `clipFloatOutput` is true. |
| `boolean useConstantPowerMixingMatrices` | Whether to upmix/downmix using `https://developer.android.com/reference/androidx/media3/common/audio/ChannelMixingMatrix#createForConstantPower(int,int)`. If `false`, uses `https://developer.android.com/reference/androidx/media3/common/audio/ChannelMixingMatrix#createForConstantGain(int,int)`. |

## Public methods

### create

```
public DefaultAudioMixer create()
```