AdaptationConfig
data class AdaptationConfig(var initialBandwidthEstimateOverride: Long? = null, var maxSelectableVideoBitrate: Int = DEFAULT_MAX_SELECTABLE_VIDEO_BITRATE, var isRebufferingAllowed: Boolean = true, var preload: Boolean = DEFAULT_PRELOAD, var qualityStabilityBalance: Float = 0.5f) : Parcelable
Configures the adaptation logic.
See SourceAdaptationConfig to configure the adaptation at the Source level.
Constructors
| AdaptationConfig | constructor(initialBandwidthEstimateOverride: Long? = null, maxSelectableVideoBitrate: Int = DEFAULT_MAX_SELECTABLE_VIDEO_BITRATE, isRebufferingAllowed: Boolean = true, preload: Boolean = DEFAULT_PRELOAD, qualityStabilityBalance: Float = 0.5f)constructor(startupBitrate: Int, maxSelectableVideoBitrate: Int = DEFAULT_MAX_SELECTABLE_VIDEO_BITRATE, isRebufferingAllowed: Boolean = true, preload: Boolean = DEFAULT_PRELOAD) |
Types
| Name | Summary |
|---|---|
| Builder | class Builder |
| Companion | object Companion |
Properties
| Name | Summary |
|---|---|
| initialBandwidthEstimateOverride | var initialBandwidthEstimateOverride: Long? The initial bandwidth estimate in bits per second the player uses to select the optimal media tracks before actual bandwidth data is available. Overriding this value should only be done in specific cases and will most of the time not result in better selection logic. |
| isRebufferingAllowed | @SerialName(value = "allowRebuffering") var isRebufferingAllowed: Boolean Specifies whether rebuffering is allowed. Default value is true. |
| maxSelectableVideoBitrate | var maxSelectableVideoBitrate: Int Specifies the upper bitrate boundary for video qualities. All qualities above this threshold will not be selected by the ABR logic. These qualities are still available for manual quality selection. |
| preload | var preload: Boolean Specifies whether the player preloads the content. Default value is true. |
| qualityStabilityBalance | var qualityStabilityBalance: Float Defines the balance between quality (i.e. bitrate) and stability in a range of [0, 1]. A value of 0 means that the player will aim to play the best possible quality, potentially at the cost of lower playback stability. A value of 1 means that the player will aim for the highest stability with the least amount of stalls, while potentially sacrificing quality. This is only relevant when playing close to the live edge. |
| startupBitrate | var See initialBandwidthEstimateOverride. |
| videoAdaptation | @Transient var videoAdaptation: VideoAdaptation? A callback to customize the player's adaptation logic. VideoAdaptation.onVideoAdaptation is called before the player tries to download a new video segment. |