# CodecParameters.Builder

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/CodecParameters.java+class:androidx.media3.exoplayer.CodecParameters.Builder)

*** ** * ** ***


```
public final class CodecParameters.Builder
```

<br />

*** ** * ** ***

A builder for `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters` instances.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder#Builder()()` Creates an empty builder. |

| ### Public methods |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters` | `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder#build()()` Builds the `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters` instance. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder#remove(java.lang.String)(https://developer.android.com/reference/java/lang/String.html key)` Removes a parameter from this builder, preventing it from being applied. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder#setByteBuffer(java.lang.String,java.nio.ByteBuffer)(https://developer.android.com/reference/java/lang/String.html key, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/nio/ByteBuffer.html value)` Sets a byte buffer parameter value. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder#setFloat(java.lang.String,float)(https://developer.android.com/reference/java/lang/String.html key, float value)` Sets a float parameter value. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder#setInteger(java.lang.String,int)(https://developer.android.com/reference/java/lang/String.html key, int value)` Sets an integer parameter value. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder#setLong(java.lang.String,long)(https://developer.android.com/reference/java/lang/String.html key, long value)` Sets a long parameter value. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder#setString(java.lang.String,java.lang.String)(https://developer.android.com/reference/java/lang/String.html key, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html value)` Sets a string parameter value. |

## Public constructors

### Builder

```
public Builder()
```

Creates an empty builder.

## Public methods

### build

```
public CodecParameters build()
```

Builds the `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters` instance.

### remove

```
@CanIgnoreReturnValue
public CodecParameters.Builder remove(String key)
```

Removes a parameter from this builder, preventing it from being applied.

Note: This does not reset a parameter on a live codec. To do so, explicitly set the parameter to its default value.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html key` | The key of the parameter to remove. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | This builder. |

### setByteBuffer

```
@CanIgnoreReturnValue
public CodecParameters.Builder setByteBuffer(String key, @Nullable ByteBuffer value)
```

Sets a byte buffer parameter value.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html key` | The parameter key. |
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/nio/ByteBuffer.html value` | The `https://developer.android.com/reference/java/nio/ByteBuffer.html` value, which may be `null`. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | This builder. |

### setFloat

```
@CanIgnoreReturnValue
public CodecParameters.Builder setFloat(String key, float value)
```

Sets a float parameter value.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html key` | The parameter key. |
| `float value` | The float value. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | This builder. |

### setInteger

```
@CanIgnoreReturnValue
public CodecParameters.Builder setInteger(String key, int value)
```

Sets an integer parameter value.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html key` | The parameter key. |
| `int value` | The integer value. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | This builder. |

### setLong

```
@CanIgnoreReturnValue
public CodecParameters.Builder setLong(String key, long value)
```

Sets a long parameter value.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html key` | The parameter key. |
| `long value` | The long value. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | This builder. |

### setString

```
@CanIgnoreReturnValue
public CodecParameters.Builder setString(String key, @Nullable String value)
```

Sets a string parameter value.

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html key` | The parameter key. |
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html value` | The string value, which may be `null`. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/CodecParameters.Builder` | This builder. |