in amazon-chime-sdk/src/main/java/com/amazonaws/services/chime/sdk/meetings/audiovideo/video/DefaultVideoTileController.kt [151:175]
override fun bindVideoView(videoView: VideoRenderView, tileId: Int) {
logger.info(TAG, "Binding VideoView to Tile with tileId = $tileId")
renderViewToBoundVideoTileMap[videoView]?.let {
if (it.state.tileId == tileId) {
logger.info(TAG, "Already binding with the tile Id $tileId, ignore...")
return
}
logger.warn(TAG, "Override the binding from ${it.state.tileId} to $tileId")
removeRenderViewFromBoundVideoTileMap(it.state.tileId)
}
videoTileMap[tileId]?.let {
it.videoRenderView?.let {
logger.info(TAG, "tileId = $tileId already had a different video view. Unbinding the old one and associating the new one")
removeRenderViewFromBoundVideoTileMap(tileId)
}
if (videoView is EglVideoRenderView) {
logger.info(TAG, "Initializing EGL state on EGL render view")
videoView.init(eglCoreFactory)
}
it.bind(videoView)
renderViewToBoundVideoTileMap[videoView] = it
}
}