# MediaLoadData

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

*** ** * ** ***


```
@UnstableApi
public final class MediaLoadData
```

<br />

*** ** * ** ***

Descriptor for data being loaded or selected by a `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaSource`.

## Summary

| ### Public fields |
|---|---|
| `final int` | `@https://developer.android.com/reference/androidx/media3/common/C.DataType https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#dataType()` The `https://developer.android.com/reference/androidx/media3/common/C.DataType`. |
| `final long` | `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#mediaEndTimeMs()` The end time of the media in the `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaPeriod`, or `https://developer.android.com/reference/androidx/media3/common/C#TIME_UNSET()` if the data does not belong to a specific `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaPeriod` or the end time is unknown. |
| `final long` | `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#mediaStartTimeMs()` The start time of the media in the `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaPeriod`, or `https://developer.android.com/reference/androidx/media3/common/C#TIME_UNSET()` if the data does not belong to a specific `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaPeriod`. |
| `final @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/androidx/media3/common/Format` | `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#trackFormat()` The format of the track to which the data belongs. |
| `final @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html` | `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#trackSelectionData()` Optional data associated with the selection of the track to which the data belongs. |
| `final int` | `@https://developer.android.com/reference/androidx/media3/common/C.SelectionReason https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#trackSelectionReason()` One of the `https://developer.android.com/reference/androidx/media3/common/C.SelectionReason` if the data belongs to a track. |
| `final int` | `@https://developer.android.com/reference/androidx/media3/common/C.TrackType https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#trackType()` One of the `https://developer.android.com/reference/androidx/media3/common/C.TrackType`, which is a media track type if the data corresponds to media of a specific type, or `https://developer.android.com/reference/androidx/media3/common/C#TRACK_TYPE_UNKNOWN()` otherwise. |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#MediaLoadData(int)(@https://developer.android.com/reference/androidx/media3/common/C.DataType int dataType)` Creates an instance with the given `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#dataType()`. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#MediaLoadData(int,int,androidx.media3.common.Format,int,java.lang.Object,long,long)( @https://developer.android.com/reference/androidx/media3/common/C.DataType int dataType, @https://developer.android.com/reference/androidx/media3/common/C.TrackType int trackType, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/androidx/media3/common/Format trackFormat, @https://developer.android.com/reference/androidx/media3/common/C.SelectionReason int trackSelectionReason, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html trackSelectionData, long mediaStartTimeMs, long mediaEndTimeMs )` Creates media load data. |

## Public fields

### dataType

```
@C.DataType
public final int dataType
```

The `https://developer.android.com/reference/androidx/media3/common/C.DataType`.

### mediaEndTimeMs

```
public final long mediaEndTimeMs
```

The end time of the media in the `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaPeriod`, or `https://developer.android.com/reference/androidx/media3/common/C#TIME_UNSET()` if the data does not belong to a specific `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaPeriod` or the end time is unknown.

### mediaStartTimeMs

```
public final long mediaStartTimeMs
```

The start time of the media in the `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaPeriod`, or `https://developer.android.com/reference/androidx/media3/common/C#TIME_UNSET()` if the data does not belong to a specific `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaPeriod`.

### trackFormat

```
public final @Nullable Format trackFormat
```

The format of the track to which the data belongs. Null if the data does not belong to a specific track.

### trackSelectionData

```
public final @Nullable Object trackSelectionData
```

Optional data associated with the selection of the track to which the data belongs. Null if the data does not belong to a track.

### trackSelectionReason

```
@C.SelectionReason
public final int trackSelectionReason
```

One of the `https://developer.android.com/reference/androidx/media3/common/C.SelectionReason` if the data belongs to a track. `https://developer.android.com/reference/androidx/media3/common/C#SELECTION_REASON_UNKNOWN()` otherwise.

### trackType

```
@C.TrackType
public final int trackType
```

One of the `https://developer.android.com/reference/androidx/media3/common/C.TrackType`, which is a media track type if the data corresponds to media of a specific type, or `https://developer.android.com/reference/androidx/media3/common/C#TRACK_TYPE_UNKNOWN()` otherwise.

## Public constructors

### MediaLoadData

```
public MediaLoadData(@C.DataType int dataType)
```

Creates an instance with the given `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#dataType()`.

### MediaLoadData

```
public MediaLoadData(
    @C.DataType int dataType,
    @C.TrackType int trackType,
    @Nullable Format trackFormat,
    @C.SelectionReason int trackSelectionReason,
    @Nullable Object trackSelectionData,
    long mediaStartTimeMs,
    long mediaEndTimeMs
)
```

Creates media load data.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/media3/common/C.DataType int dataType` | See `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#dataType()`. |
| `@https://developer.android.com/reference/androidx/media3/common/C.TrackType int trackType` | See `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#trackType()`. |
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/androidx/media3/common/Format trackFormat` | See `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#trackFormat()`. |
| `@https://developer.android.com/reference/androidx/media3/common/C.SelectionReason int trackSelectionReason` | See `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#trackSelectionReason()`. |
| `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/Object.html trackSelectionData` | See `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#trackSelectionData()`. |
| `long mediaStartTimeMs` | See `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#mediaStartTimeMs()`. |
| `long mediaEndTimeMs` | See `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaLoadData#mediaEndTimeMs()`. |