# MetadataRetriever.Builder

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

*** ** * ** ***


```
class MetadataRetriever.Builder
```

<br />

*** ** * ** ***

Builder for `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever` instances.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder#Builder(android.content.Context,androidx.media3.common.MediaItem)(context: https://developer.android.com/reference/android/content/Context.html?, mediaItem: https://developer.android.com/reference/kotlin/androidx/media3/common/MediaItem!)` Creates a new builder. |

| ### Public functions |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever!` | `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder#build()()` Builds the `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever` instance. |
| `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder!` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder#setClock(androidx.media3.common.util.Clock)(clock: https://developer.android.com/reference/kotlin/androidx/media3/common/util/Clock!)` Sets the `https://developer.android.com/reference/kotlin/androidx/media3/common/util/Clock` to be used. |
| `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder!` | `@https://checkerframework.org/api/com/google/errorprone/annotations/CanIgnoreReturnValue.html https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder#setMediaSourceFactory(androidx.media3.exoplayer.source.MediaSource.Factory)(mediaSourceFactory: https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/MediaSource.Factory!)` Sets the `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/MediaSource.Factory` to be used to read the data. |

## Public constructors

### Builder

```
Builder(context: Context?, mediaItem: MediaItem!)
```

Creates a new builder.

| Parameters |
|---|---|
| `context: https://developer.android.com/reference/android/content/Context.html?` | The `https://developer.android.com/reference/android/content/Context.html`. Can be `null` if a `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/MediaSource.Factory` is provided via `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder#setMediaSourceFactory(androidx.media3.exoplayer.source.MediaSource.Factory)`. |
| `mediaItem: https://developer.android.com/reference/kotlin/androidx/media3/common/MediaItem!` | The `https://developer.android.com/reference/kotlin/androidx/media3/common/MediaItem` to retrieve metadata from. |

## Public functions

### build

```
fun build(): MetadataRetriever!
```

Builds the `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever` instance.

### setClock

```
@CanIgnoreReturnValue
fun setClock(clock: Clock!): MetadataRetriever.Builder!
```

Sets the `https://developer.android.com/reference/kotlin/androidx/media3/common/util/Clock` to be used. If not set, `https://developer.android.com/reference/kotlin/androidx/media3/common/util/Clock#DEFAULT()` is used.

| Parameters |
|---|---|
| `clock: https://developer.android.com/reference/kotlin/androidx/media3/common/util/Clock!` | The `https://developer.android.com/reference/kotlin/androidx/media3/common/util/Clock`. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder!` | This builder. |

### setMediaSourceFactory

```
@CanIgnoreReturnValue
fun setMediaSourceFactory(mediaSourceFactory: MediaSource.Factory!): MetadataRetriever.Builder!
```

Sets the `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/MediaSource.Factory` to be used to read the data. If not set, a `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/DefaultMediaSourceFactory` with default extractors will be used.

| Parameters |
|---|---|
| `mediaSourceFactory: https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/MediaSource.Factory!` | The `https://developer.android.com/reference/kotlin/androidx/media3/exoplayer/source/MediaSource.Factory`. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/inspector/MetadataRetriever.Builder!` | This builder. |