# androidx.media3.exoplayer.hls

*** ** * ** ***

## Annotations

|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsMediaSource.MetadataType` | The types of metadata that can be extracted from HLS streams. |

## Interfaces

|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsContentSteeringTracker.Callback` | A callback to be notified of `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsContentSteeringTracker` events. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsDataSourceFactory` | Creates `https://developer.android.com/reference/androidx/media3/datasource/DataSource`s for HLS playlists, encryption and media chunks. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsExtractorFactory` | Factory for HLS media chunk extractors. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsInterstitialsAdsLoader.Listener` | A listener to be notified of events emitted by the ads loader. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsMediaChunkExtractor` | Extracts samples and track `https://developer.android.com/reference/androidx/media3/common/Format` from `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsMediaChunk`. |

## Classes

|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/BundledHlsMediaChunkExtractor` | `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsMediaChunkExtractor` implementation that uses ExoPlayer app-bundled `https://developer.android.com/reference/androidx/media3/extractor/Extractor`. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/DefaultHlsDataSourceFactory` | Default implementation of `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsDataSourceFactory`. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/DefaultHlsExtractorFactory` | Default `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsExtractorFactory` implementation. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsContentSteeringTracker` | Tracks the content steering states for an HLS stream. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsInterstitialsAdsLoader` | An `https://developer.android.com/reference/androidx/media3/exoplayer/source/ads/AdsLoader` that reads interstitials from the HLS playlist, adds them to the `https://developer.android.com/reference/androidx/media3/common/AdPlaybackState` and passes the ad playback state to `https://developer.android.com/reference/androidx/media3/exoplayer/source/ads/AdsLoader.EventListener#onAdPlaybackState(androidx.media3.common.AdPlaybackState)`. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsInterstitialsAdsLoader.AdsMediaSourceFactory` | A `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaSource.Factory` to create a media source to play HLS streams with interstitials. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsInterstitialsAdsLoader.AdsResumptionState` | The state of the given ads ID to resume playback at the given `https://developer.android.com/reference/androidx/media3/common/AdPlaybackState`. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsInterstitialsAdsLoader.Asset` | An asset with a URI and a duration. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsInterstitialsAdsLoader.AssetList` | Holds a list of `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsInterstitialsAdsLoader.Asset`. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsManifest` | Holds a multivariant playlist along with a snapshot of one of its media playlists. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsMediaSource` | An HLS `https://developer.android.com/reference/androidx/media3/exoplayer/source/MediaSource`. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsMediaSource.Factory` | Factory for `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsMediaSource`s. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsTrackMetadataEntry` | Holds metadata associated to an HLS media track. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsTrackMetadataEntry.VariantInfo` | Holds attributes defined in an EXT-X-STREAM-INF tag. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/MediaParserHlsMediaChunkExtractor` | `https://developer.android.com/reference/androidx/media3/exoplayer/hls/HlsMediaChunkExtractor` implemented on top of the platform's `https://developer.android.com/reference/android/media/MediaParser.html`. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/TimestampAdjusterProvider` | Provides `https://developer.android.com/reference/androidx/media3/common/util/TimestampAdjuster` instances for use during HLS playbacks. |
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/WebvttExtractor` | A special purpose extractor for WebVTT content in HLS. |

## Exceptions

|---|---|
| `https://developer.android.com/reference/androidx/media3/exoplayer/hls/SampleQueueMappingException` | Thrown when it is not possible to map a `https://developer.android.com/reference/androidx/media3/common/TrackGroup` to a `https://developer.android.com/reference/androidx/media3/exoplayer/source/SampleQueue`. |