我在场景中有一个MediaView,我正在尝试播放所选视频。视频正在播放,我可以听到声音,但它不可见。
这是我的代码:
playLocalVideo.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
File fileToPlay = null;
//DirectoryChooser directoryChooser = new DirectoryChooser();
FileChooser fileChooser = new FileChooser();
fileChooser.setTitle("Select Files to Upload");
FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("VIDEO files (*.mp4)", "*.mp4");
fileChooser.getExtensionFilters().add(extFilter);
fileChooser.setInitialDirectory(new File(System.getProperty("user.home")));
try {
fileToPlay = fileChooser.showOpenDialog(stage).getCanonicalFile();
Media m = new Media(fileToPlay.toURI().toString());
MediaPlayer mp = new MediaPlayer(m);
videoPlayer = new MediaView(mp);
videoPlayer.setPreserveRatio(true);
mp.play();
} catch (IOException ex) {
Logger.getLogger(TutorControlPanelController.class.getName()).log(Level.SEVERE, null, ex);
}
}
});
答案 0 :(得分:1)
排序: 而不是:
videoPlayer = new MediaView(mp);
你应该这样做:
videoPlayer.setMediaPlayer(mp);
答案 1 :(得分:0)
当MP4文件使用代码MPEG-4时,我遇到的问题是正在播放音频,但是没有视频在播放。在将编解码器更改为H.264之后,视频可以正确播放。