# Resolution
ByteArk Player SDK for Android supports both automatic Adaptive Bitrate Streaming (ABR) and manual resolution selection.
# Adaptive Bitrate Streaming (ABR)
By default the player adjusts resolution automatically based on network speed via ExoPlayer's ABR.
# Show the resolution picker
Enable withSettingButton() to let viewers pick a resolution from the UI:
val playerBuilder = ByteArkPlayerBuilder.Builder()
.withContext(this)
.withControl()
.withSettingButton()
.build()
1
2
3
4
5
2
3
4
5
# Select resolution via API
val resolutions: List<ByteArkResolution> = mPlayerFragment.getResolutions()
val current: ByteArkResolution? = mPlayerFragment.getCurrentResolution()
mPlayerFragment.setResolution(resolutions[0])
1
2
3
4
2
3
4
Note
When a resolution is set manually, ABR is paused for that selection. The viewer can return to ABR by selecting the "Auto" option in the Settings button.