# FakeExtractorOutput

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

*** ** * ** ***

<br />

```
@UnstableApi
public final class FakeExtractorOutput implements ExtractorOutput, Dumper.Dumpable
```

<br />

*** ** * ** ***

A fake `https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput`.

## Summary

| ### Public fields |
|---|---|
| `int` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#numberOfTracks()` |
| `@https://checkerframework.org/api/org/checkerframework/checker/nullness/qual/MonotonicNonNull.html https://developer.android.com/reference/androidx/media3/extractor/SeekMap` | `@https://checkerframework.org/api/org/checkerframework/checker/nullness/qual/MonotonicNonNull.html https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#seekMap()` |
| `final https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/androidx/media3/test/utils/FakeTrackOutput>` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#trackOutputs()` |
| `boolean` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#tracksEnded()` |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#FakeExtractorOutput()()` |
| `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#FakeExtractorOutput(androidx.media3.test.utils.FakeTrackOutput.Factory)(https://developer.android.com/reference/androidx/media3/test/utils/FakeTrackOutput.Factory trackOutputFactory)` |

| ### Public methods |
|---|---|
| `void` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#clearTrackOutputs()()` |
| `void` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#dump(androidx.media3.test.utils.Dumper)(https://developer.android.com/reference/androidx/media3/test/utils/Dumper dumper)` Dumps the fields of the object using the `dumper`. |
| `void` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#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)`. |
| `https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://developer.android.com/reference/androidx/media3/test/utils/FakeTrackOutput>` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#getTrackOutputsForType(int)(@https://developer.android.com/reference/androidx/media3/common/C.TrackType int trackType)` Returns a list of `https://developer.android.com/reference/androidx/media3/test/utils/FakeTrackOutput` of given `https://developer.android.com/reference/androidx/media3/common/C.TrackType`. |
| `void` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#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. |
| `https://developer.android.com/reference/androidx/media3/test/utils/FakeTrackOutput` | `https://developer.android.com/reference/androidx/media3/test/utils/FakeExtractorOutput#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. |

### Inherited Constants

From [androidx.media3.extractor.ExtractorOutput](https://developer.android.com/reference/androidx/media3/extractor/ExtractorOutput) `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 fields

### numberOfTracks

```
public int numberOfTracks
```

### seekMap

```
@MonotonicNonNull
public @MonotonicNonNull SeekMap seekMap
```

### trackOutputs

```
public final SparseArray<FakeTrackOutput> trackOutputs
```

### tracksEnded

```
public boolean tracksEnded
```

## Public constructors

### FakeExtractorOutput

```
public FakeExtractorOutput()
```

### FakeExtractorOutput

```
public FakeExtractorOutput(FakeTrackOutput.Factory trackOutputFactory)
```

## Public methods

### clearTrackOutputs

```
public void clearTrackOutputs()
```

### dump

```
public void dump(Dumper dumper)
```

Dumps the fields of the object using the `dumper`.

| Parameters |
|---|---|
| `https://developer.android.com/reference/androidx/media3/test/utils/Dumper dumper` | The `https://developer.android.com/reference/androidx/media3/test/utils/Dumper` to be used to dump fields. |

### endTracks

```
public 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)`.

### getTrackOutputsForType

```
public ImmutableList<FakeTrackOutput> getTrackOutputsForType(@C.TrackType int trackType)
```

Returns a list of `https://developer.android.com/reference/androidx/media3/test/utils/FakeTrackOutput` of given `https://developer.android.com/reference/androidx/media3/common/C.TrackType`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/media3/common/C.TrackType int trackType` | The `https://developer.android.com/reference/androidx/media3/common/C.TrackType`. |

| Returns |
|---|---|
| `https://guava.dev/releases/snapshot-android/api/docs/com/google/common/collect/ImmutableList.html<https://developer.android.com/reference/androidx/media3/test/utils/FakeTrackOutput>` | A list of `https://developer.android.com/reference/androidx/media3/test/utils/FakeTrackOutput`. |

### seekMap

```
public 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

```
public FakeTrackOutput 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/test/utils/FakeTrackOutput` | The `https://developer.android.com/reference/androidx/media3/extractor/TrackOutput` for the given track identifier. |