Я использую VLCJ для воспроизведения видео mp4 в своем приложении swing. Он может воспроизводиться правильно, но когда я приостанавливаю() видео, за которым следует воспроизведение(), он не может отображать видео, но он может возобновить звук. Если я вызову stop() вместо pause(), все будет хорошо, но начнется с самого начала. Как правильно приостановить видео, чтобы возобновить видео?VLCJ не может отображать видео после паузы(), за которым следует воспроизведение()
Я пытался со следующим классом:
public class JVLCPlayerPanel extends javax.swing.JPanel
{
private File vlcPath = new File("C:\\Program Files\\VideoLAN\\VLC");
private EmbeddedMediaPlayer player;
public JVLCPlayerPanel() {
initComponents();
NativeLibrary.addSearchPath("libvlc", vlcPath.getAbsolutePath());
EmbeddedMediaPlayerComponent videoCanvas = new EmbeddedMediaPlayerComponent();
this.setLayout(new BorderLayout());
this.add(videoCanvas, BorderLayout.CENTER);
this.player = videoCanvas.getMediaPlayer();
this.player.setPause(true);
}
public void play(String media)
{
player.prepareMedia(media);
player.parseMedia();
player.play();
}
public void pause()
{
player.pause();
}
public void resume()
{
player.play();
}
}
Открытый класс JVLCPlayer расширяет JPanel {private File vlcPath = новый файл ("vlcpath"); частный игрок EmbeddedMediaPlayer; public JVLCPlayer() {NativeLibrary.addSearchPath ("libvlc", vlcPath.getAbsolutePath()); EmbeddedMediaPlayerComponent videoCanvas = new EmbeddedMediaPlayerComponent(); setLayout (новый BorderLayout()); add (videoCanvas, BorderLayout.CENTER); Игрок = videoCanvas.getMediaPlayer(); player.setPause (true);} public void play (String media) {player.prepareMedia (media); player.parseMedia(); player.play();} public void pause() {player.pause();} public void resume() {player.play();}} – epsylon
Я попробовал videoCanvas как переменную кучи для класса, но все же поведение как это было раньше. – epsylon
Правильно ли работает воспроизведение/пауза в проекте vlcj-player (также доступно на Github)? – caprica