# AudioOutputProvider.OutputConfig

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

*** ** * ** ***


```
public final class AudioOutputProvider.OutputConfig
```

<br />

*** ** * ** ***

Configuration for an `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutput`.

## Summary

| ### Nested types |
|---|
| `public final class https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig.Builder` Builder for `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig` instances. |

| ### Public fields |
|---|---|
| `final https://developer.android.com/reference/androidx/media3/common/AudioAttributes` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#audioAttributes()` The `https://developer.android.com/reference/androidx/media3/common/AudioAttributes` for the audio output. |
| `final int` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#audioSessionId()` The audio session ID. |
| `final int` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#bufferSize()` The buffer size of the output in bytes. |
| `final int` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#channelMask()` The channel mask of the output. |
| `final int` | `@https://developer.android.com/reference/androidx/media3/common/C.Encoding https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#encoding()` The `https://developer.android.com/reference/androidx/media3/common/C.Encoding` of the audio data. |
| `final boolean` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#isOffload()` Whether offload is enabled for this output. |
| `final boolean` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#isTunneling()` Whether tunneling is enabled for this output. |
| `final int` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#sampleRate()` The sample rate of the audio data. |
| `final boolean` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#useOffloadGapless()` Whether gapless offload playback is enabled for this output via `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutput#setOffloadDelayPadding(int,int)`. |
| `final boolean` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#usePlaybackParameters()` Whether playback speed control is enabled for this output. |
| `final int` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#virtualDeviceId()` The virtual device ID, or `https://developer.android.com/reference/androidx/media3/common/C#INDEX_UNSET()` if not specified. |

| ### Public methods |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig.Builder` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#buildUpon()()` Returns a `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig.Builder` initialized with the values of this instance. |
| `boolean` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#equals(java.lang.Object)(@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html o)` |
| `int` | `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig#hashCode()()` |

## Public fields

### audioAttributes

```
public final AudioAttributes audioAttributes
```

The `https://developer.android.com/reference/androidx/media3/common/AudioAttributes` for the audio output.

### audioSessionId

```
public final int audioSessionId
```

The audio session ID.

### bufferSize

```
public final int bufferSize
```

The buffer size of the output in bytes.

### channelMask

```
public final int channelMask
```

The channel mask of the output. See `AudioFormat.CHANNEL_OUT_XXX` constants like `https://developer.android.com/reference/android/media/AudioFormat.html#CHANNEL_OUT_5POINT1`.

### encoding

```
@C.Encoding
public final int encoding
```

The `https://developer.android.com/reference/androidx/media3/common/C.Encoding` of the audio data.

Value is one of the following:

- `Format.NO_VALUE`

<br />

### isOffload

```
public final boolean isOffload
```

Whether offload is enabled for this output.

### isTunneling

```
public final boolean isTunneling
```

Whether tunneling is enabled for this output.

### sampleRate

```
public final int sampleRate
```

The sample rate of the audio data.

### useOffloadGapless

```
public final boolean useOffloadGapless
```

Whether gapless offload playback is enabled for this output via `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutput#setOffloadDelayPadding(int,int)`.

### usePlaybackParameters

```
public final boolean usePlaybackParameters
```

Whether playback speed control is enabled for this output.

### virtualDeviceId

```
public final int virtualDeviceId
```

The virtual device ID, or `https://developer.android.com/reference/androidx/media3/common/C#INDEX_UNSET()` if not specified.

## Public methods

### buildUpon

```
public AudioOutputProvider.OutputConfig.Builder buildUpon()
```

Returns a `https://developer.android.com/reference/androidx/media3/exoplayer/audio/AudioOutputProvider.OutputConfig.Builder` initialized with the values of this instance.

### equals

```
public boolean equals(@Nullable Object o)
```

### hashCode

```
public int hashCode()
```