This happens on Android only. Videos work properly on iOS and Simulator.
The problem is that when my videos are loaded into the MediaPlayer, the displayed frame is and remains completely black. After pressing play, the video displays correctly. By pressing pause, the frame on which the pause occurred is shown correctly. However, if the app switches to background and then back to foreground, the paused video goes back to completely black.
How can I fix this problem?
The relevant part of my code is more or less as follows:
Media video = MediaManager.createMedia(videoFilePath, true, () -> { Runnable callback = runOnVideoCompletion.get(); if (callback != null) { callback.run(); } }); video.setNativePlayerMode(false); video.prepare(); MediaPlayer mediaPlayer = new MediaPlayer(video) { @Override public Dimension getPreferredSize() { return new Dimension(size, size); } }; mediaPlayer.setHideNativeVideoControls(true); mediaPlayer.setMaximize(false); mediaPlayer.hideControls(); mediaPlayer.setAutoplay(false); Container mediaPlayerCnt = new Container(new LayeredLayout(), "NoMarginNoPadding") { @Override public Dimension getPreferredSize() { return new Dimension(size, size); } }; mediaPlayerCnt.add(mediaPlayer); [...] https://stackoverflow.com/questions/66144759/when-videos-are-just-loaded-or-paused-they-are-completely-black-on-android February 11, 2021 at 04:47AM
没有评论:
发表评论