# ExtractorOutput

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/ExtractorOutput.java+class:androidx.media3.extractor.ExtractorOutput)

*** ** * ** ***


```
@UnstableApi
public interface ExtractorOutput
```

<br />

Known direct subclasses [BundledChunkExtractor](https://developer.android.com/reference/androidx/media3/exoplayer/source/chunk/BundledChunkExtractor), [FakeExtractorOutput](https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput), [ForwardingExtractorOutput](https://developer.android.com/reference/androidx/media3/extractor/ForwardingExtractorOutput), [NoOpExtractorOutput](https://developer.android.com/reference/androidx/media3/extractor/NoOpExtractorOutput), [SubtitleTranscodingExtractorOutput](https://developer.android.com/reference/androidx/media3/extractor/text/SubtitleTranscodingExtractorOutput)

|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/source/chunk/BundledChunkExtractor` | `https://developer.android.com/reference/androidx/media3/exoplayer/source/chunk/ChunkExtractor` implementation that uses ExoPlayer app-bundled `https://developer.android.com/reference/androidx/media3/extractor/Extractor`. |
| `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput` | A fake `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput`. |
| `https://developer.android.com/reference/androidx/media3/extractor/ForwardingExtractorOutput` | An overridable `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput` implementation which forwards all methods to another `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput`. |
| `https://developer.android.com/reference/androidx/media3/extractor/NoOpExtractorOutput` | An `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput` implementation that does nothing. |
| `https://developer.android.com/reference/androidx/media3/extractor/text/SubtitleTranscodingExtractorOutput` | A wrapping `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput` that transcodes `https://developer.android.com/reference/androidx/media3/common/C#TRACK_TYPE_TEXT()` from supported subtitle formats to `https://developer.android.com/reference/androidx/media3/common/MimeTypes#APPLICATION_MEDIA3_CUES()`. |

*** ** * ** ***

Receives stream level data extracted by an `https://developer.android.com/reference/androidx/media3/extractor/Extractor`.

## Summary

| ### Constants |
|---|---|
| `default static final https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput` | `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput#PLACEHOLDER()` Placeholder `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput` implementation throwing an `https://developer.android.com/reference/java/lang/UnsupportedOperationException.html` in each method. |

| ### Public methods |
|---|---|
| `abstract void` | `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput#endTracks()()` Called when all tracks have been identified, meaning no new `trackId` values will be passed to `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput#track(int,int)`. |
| `abstract void` | `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput#seekMap(androidx.media3.extractor.SeekMap)(https://developer.android.com/reference/androidx/media3/extractor/SeekMap seekMap)` Called when a `https://developer.android.com/reference/androidx/media3/extractor/SeekMap` has been extracted from the stream. |
| `abstract https://developer.android.com/reference/androidx/media3/extractor/TrackOutput` | `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput#track(int,int)(int id, @https://developer.android.com/reference/androidx/media3/common/C.TrackType int type)` Called by the `https://developer.android.com/reference/androidx/media3/extractor/Extractor` to get the `https://developer.android.com/reference/androidx/media3/extractor/TrackOutput` for a specific track. |

## Constants

### PLACEHOLDER

```
default static final ExtractorOutput PLACEHOLDER
```

Placeholder `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput` implementation throwing an `https://developer.android.com/reference/java/lang/UnsupportedOperationException.html` in each method.

## Public methods

### endTracks

```
abstract void endTracks()
```

Called when all tracks have been identified, meaning no new `trackId` values will be passed to `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput#track(int,int)`.

### seekMap

```
abstract void seekMap(SeekMap seekMap)
```

Called when a `https://developer.android.com/reference/androidx/media3/extractor/SeekMap` has been extracted from the stream.

| Parameters |
|---|---|
| `https://developer.android.com/reference/androidx/media3/extractor/SeekMap seekMap` | The extracted `https://developer.android.com/reference/androidx/media3/extractor/SeekMap`. |

### track

```
abstract TrackOutput track(int id, @C.TrackType int type)
```

Called by the `https://developer.android.com/reference/androidx/media3/extractor/Extractor` to get the `https://developer.android.com/reference/androidx/media3/extractor/TrackOutput` for a specific track.

The same `https://developer.android.com/reference/androidx/media3/extractor/TrackOutput` is returned if multiple calls are made with the same `
id`.

| Parameters |
|---|---|
| `int id` | A track identifier. |
| `@https://developer.android.com/reference/androidx/media3/common/C.TrackType int type` | The `https://developer.android.com/reference/androidx/media3/common/C.TrackType`. |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/media3/extractor/TrackOutput` | The `https://developer.android.com/reference/androidx/media3/extractor/TrackOutput` for the given track identifier. |