in playerdemo/src/main/java/com/amazonaws/ivs/playerdemo/ui/viewmodels/PlayerViewModel.kt [21:43]
fun playMedia(context: Context, surface: Surface, url: String) {
player = MediaPlayer(context)
player?.setListener(
onVideoSizeChanged = { width, height ->
onSizeChanged.postConsumable(Pair(width, height))
},
onStateChanged = { state ->
when (state) {
Player.State.BUFFERING -> onLoading.postConsumable(true)
Player.State.PLAYING -> onLoading.postConsumable(false)
else -> {}
}
},
onError = { error ->
onError.postConsumable(error.errorMessage)
}
)
player?.setSurface(surface)
player?.load(Uri.parse(url))
player?.play()
}