Kotlin Extensions
Kotlin Extensions¶
The SDK bundle includes a few optional Kotlin extensions. You can use these extensions by adding the
castlabs-sdk-extensions
module as a dependency to your build.gradle
.
To use these extensions you can import them like this:
import com.castlabs.android.sdkextensions.*
ConfigExtensions¶
These extensions allow you to create a PlayerConfig
object getting
rid of some boilerplate code required by the Builder
pattern.
PlayerConfig.Builder("http://domain.com/manifest.mpd").build {
autoPlay(true)
userID("userId")
bufferConfig {
minPlaybackStart(5, TimeUnit.SECONDS)
bufferSizeBytes(20_000_000)
}
liveConfig {
liveEdgeLatencyMs(5000)
}
abrConfig {
minDurationForQualityIncrease(10, TimeUnit.SECONDS)
}
networkConfig {
manifestConnectionTimeoutMs(5000)
segmentsConnectionTimeoutMs(3000)
}
}
ControllerExtensions¶
The SDK offers one extension for the PlayerController
. The open
extension masks the Builder
creation thus making it cleaner to configure the Player.
Keep in mind that it is always mandatory to set the content url.
playerController.open {
contentUrl("http://domain.com/manifest.mpd")
autoPlay(true)
userID("userId")
bufferConfig {
minPlaybackStart(5, TimeUnit.SECONDS)
bufferSizeBytes(20_000_000)
}
liveConfig {
liveEdgeLatencyMs(5000)
}
abrConfig {
minDurationForQualityIncrease(10, TimeUnit.SECONDS)
}
networkConfig {
manifestConnectionTimeoutMs(5000)
segmentsConnectionTimeoutMs(3000)
}
}
Previous topic: Example Projects
Next topic: Upgrade Guides