Package-level declarations

Types

Link copied to clipboard
data class AudioStreamTrack(val bitrate: Int, val fileFormat: String, val language: String? = null) : StreamTrack

A track representing an audio track.

Link copied to clipboard
data class Chapter(val chapterStartInMs: Long, val chapterTitle: String?, val thumbnail: Uri?)
Link copied to clipboard
data class MultiSelection(val streams: List<Stream>) : StreamSelection

This can be used if tracks from multiple streams should be forwarded to ExoPlayer, so ExoPlayer can mux them together. This StreamSelection will be made into a MergingMediaSource. This stream selection will not depict which of the tracks contained in the StreamSelection should be muxed together by ExoPlayer. This MultiSelection only depicts that at least all the tracks that should be played are contained.

Link copied to clipboard

An Exception, but from NewPlayer.

Link copied to clipboard

Depicts the playback mode that NewPlayer is currently in. Or in other words this tells how NewPlayer is displaying media.

Link copied to clipboard

The playlist repeat mode.

Link copied to clipboard
data class SingleSelection(val stream: Stream) : StreamSelection

This is used if only one single stream should be forwarded to ExoPlayer. This can be either a DASH/HLS stream or a progressive stream that has all the required tracks already muxed together.

Link copied to clipboard
data class Stream(val item: String, val streamUri: Uri, val streamTracks: List<StreamTrack>, val mimeType: String? = null, val isDashOrHls: Boolean = false)

A stream represents one actual video stream that is associated with a video. Each stream has its own URI (and therefore correspond to one individual video container). Each stream can contain multiple audio/video tracks.

Link copied to clipboard
interface StreamSelection

A selection of streams that should be used for playback. This is used by the stream selection algorithm to depict which streams should be used to build a MediaSource from and thus forward to the actual ExoPlayer.

Link copied to clipboard

Media3 does not provide a class to represent individual tracks. So here we go.

Link copied to clipboard
data class Subtitle(val uri: Uri, val identifier: String)

TODO

Link copied to clipboard
data class VideoStreamTrack(val width: Int, val height: Int, val frameRate: Int, val fileFormat: String) : StreamTrack

A track representing a video track.