Player is black for a few seconds after coming back from background.
Hi,
If I put the app in background and come back to it the player is black for about 3-5 seconds, but the sound is played. After about 5 sec the image appears. Do you know how this can be fixed?
Here is my code:
class PlayerActivity : AppCompatActivity() {
private val USE_TEXTURE_VIEW = false
private val ENABLE_SUBTITLES = true
private var mVideoLayout: VLCVideoLayout? = null
private var mLibVLC: LibVLC? = null
private var mMediaPlayer: MediaPlayer? = null
private var streamUrl:String? = null
var isMediaSet = false
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
streamUrl = intent.getStringExtra("STREAM_URL")
setContentView(R.layout.activity_player)
val args = ArrayList<String>()
args.add("-vvv")
args.add(":http-reconnect")
mLibVLC = LibVLC(this, args)
mMediaPlayer = MediaPlayer(mLibVLC)
mVideoLayout = findViewById(R.id.videoView)
window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
hideSystemUI()
}
setUpMediaPlayerEvents()
}
override fun onDestroy() {
super.onDestroy()
mMediaPlayer!!.release()
mLibVLC!!.release()
}
override fun onStart() {
super.onStart()
mMediaPlayer!!.attachViews(
mVideoLayout!!,
null,
ENABLE_SUBTITLES,
USE_TEXTURE_VIEW
)
if (!isMediaSet){
isMediaSet = true
val media = Media(
mLibVLC,
Uri.parse(streamUrl)
)
mMediaPlayer!!.media = media
media.release()
}
mMediaPlayer!!.play()
}
override fun onStop() {
super.onStop()
mMediaPlayer!!.pause()
mMediaPlayer!!.detachViews()
}
private fun setUpMediaPlayerEvents(){
mMediaPlayer?.setEventListener(object: MediaPlayer.EventListener{
override fun onEvent(event: MediaPlayer.Event?) {
println("event = ${event.toString()}")
}
})
}
override fun onWindowFocusChanged(hasFocus: Boolean) {
super.onWindowFocusChanged(hasFocus)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
hideSystemUI()
}
}
}