javafx mediaview белая вспышка при переходе
Folks...
Я использую следующий код для перехода между двумя видео.
public void loadMedia(Media media)
{
MediaPlayer newPlayer = new MediaPlayer(media);
newPlayer.setAutoPlay(true);
mediaView.setMediaPlayer(newPlayer);
player = newPlayer;
}
Когда я вызываю loadMedia с новым видео, медиаплеер кратковременно мигает белым. Я предполагаю, что это связано с тем, что статус требует времени. Но мне нужно, чтобы эти переходы проходили плавно, без вспышки.
Что делать?
Спасибо, GeePaw
1 ответ
Как часто, я вскоре ответил на свой вопрос. Хитрость заключается в том, чтобы дождаться готовности статуса, прежде чем менять игрока представления:
public void loadMedia(Media media)
{
MediaPlayer newPlayer = new MediaPlayer(media);
newPlayer.setAutoPlay(true);
newPlayer.setOnReady(()->videoReady(newPlayer));
}
private void videoReady(MediaPlayer newPlayer)
{
mediaView.setMediaPlayer(newPlayer);
player = newPlayer;
}