# ForwardingExtractorsFactory

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

*** ** * ** ***


```
@UnstableApi
class ForwardingExtractorsFactory : ExtractorsFactory
```

<br />

*** ** * ** ***

A forwarding `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory` that forwards all methods to the underlying implementation.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ForwardingExtractorsFactory#ForwardingExtractorsFactory(androidx.media3.extractor.ExtractorsFactory)(factory: https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!)` Creates a forwarding `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory`. |

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/kotlin/androidx/media3/extractor/Extractor!>!` | `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ForwardingExtractorsFactory#createExtractors()()` Returns an array of new `https://developer.android.com/reference/kotlin/androidx/media3/extractor/Extractor` instances. |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/kotlin/androidx/media3/extractor/Extractor!>!` | `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ForwardingExtractorsFactory#createExtractors(android.net.Uri,java.util.Map<java.lang.String,java.util.List<java.lang.String>>)( uri: https://developer.android.com/reference/android/net/Uri.html!, responseHeaders: (https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-map/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!, (https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!>! )` Returns an array of new `https://developer.android.com/reference/kotlin/androidx/media3/extractor/Extractor` instances. |
| `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!` | `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ForwardingExtractorsFactory#experimentalSetTextTrackTranscodingEnabled(boolean)( textTrackTranscodingEnabled: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html )` **This function is deprecated.** This method (and all support for 'legacy' subtitle decoding during rendering) will be removed in a future release. <br /> |
| `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!` | `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ForwardingExtractorsFactory#setParseHagcMetadata(boolean)(parseHagcMetadata: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html)` Sets whether to parse HAGC (ST 2094-50) metadata. |
| `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!` | `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ForwardingExtractorsFactory#setSubtitleParserFactory(androidx.media3.extractor.text.SubtitleParser.Factory)(subtitleParserFactory: https://developer.android.com/reference/kotlin/androidx/media3/extractor/text/SubtitleParser.Factory!)` Sets a `https://developer.android.com/reference/kotlin/androidx/media3/extractor/text/SubtitleParser.Factory` to use when transcoding text tracks. |

### Inherited Constants

From [androidx.media3.extractor.ExtractorsFactory](https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory) `const https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!` `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory#EMPTY()`

Extractor factory that returns an empty list of extractors.

## Public constructors

### ForwardingExtractorsFactory

```
ForwardingExtractorsFactory(factory: ExtractorsFactory!)
```

Creates a forwarding `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory`.

| Parameters |
|---|---|
| `factory: https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!` | The `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory` to forward to. |

## Public functions

### createExtractors

```
fun createExtractors(): Array<Extractor!>!
```

Returns an array of new `https://developer.android.com/reference/kotlin/androidx/media3/extractor/Extractor` instances.

### createExtractors

```
fun createExtractors(
    uri: Uri!,
    responseHeaders: (Mutable)Map<String!, (Mutable)List<String!>!>!
): Array<Extractor!>!
```

Returns an array of new `https://developer.android.com/reference/kotlin/androidx/media3/extractor/Extractor` instances.

| Parameters |
|---|---|
| `uri: https://developer.android.com/reference/android/net/Uri.html!` | The `https://developer.android.com/reference/android/net/Uri.html` of the media to extract. |
| `responseHeaders: (https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-map/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!, (https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html)https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!>!>!` | The response headers of the media to extract, or an empty map if there are none. The map lookup should be case-insensitive. |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://developer.android.com/reference/kotlin/androidx/media3/extractor/Extractor!>!` | The `https://developer.android.com/reference/kotlin/androidx/media3/extractor/Extractor` instances. |

### experimentalSetTextTrackTranscodingEnabled

```
fun experimentalSetTextTrackTranscodingEnabled(
    textTrackTranscodingEnabled: Boolean
): ExtractorsFactory!
```

> [!CAUTION]
> **This function is deprecated.**   
>
> This method (and all support for 'legacy' subtitle decoding during rendering) will be removed in a future release.

Enables transcoding of text track samples to `https://developer.android.com/reference/kotlin/androidx/media3/common/MimeTypes#APPLICATION_MEDIA3_CUES()` before the data is emitted to `https://developer.android.com/reference/kotlin/androidx/media3/extractor/TrackOutput`.

Transcoding is enabled by default.

This method is experimental and will be renamed or removed in a future release.

| Parameters |
|---|---|
| `textTrackTranscodingEnabled: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | Whether to enable transcoding. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!` | The factory, for convenience. |

### setParseHagcMetadata

```
fun setParseHagcMetadata(parseHagcMetadata: Boolean): ExtractorsFactory!
```

Sets whether to parse HAGC (ST 2094-50) metadata.

| Parameters |
|---|---|
| `parseHagcMetadata: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | Whether HAGC metadata parsing is enabled. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!` | This factory, for convenience. |

### setSubtitleParserFactory

```
fun setSubtitleParserFactory(subtitleParserFactory: SubtitleParser.Factory!): ExtractorsFactory!
```

Sets a `https://developer.android.com/reference/kotlin/androidx/media3/extractor/text/SubtitleParser.Factory` to use when transcoding text tracks.

This is only works if `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory#experimentalSetTextTrackTranscodingEnabled(boolean)` is enabled.

| Parameters |
|---|---|
| `subtitleParserFactory: https://developer.android.com/reference/kotlin/androidx/media3/extractor/text/SubtitleParser.Factory!` | The factory for `https://developer.android.com/reference/kotlin/androidx/media3/extractor/text/SubtitleParser` instances. |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/media3/extractor/ExtractorsFactory!` | The factory, for convenience. |