无法在ubuntu 13.04中使用vlcj在JPanel中播放视频

时间:2014-09-12 16:31:50

标签: java swing vlcj

我正在尝试在ubuntu中使用vlcj在JPanel中播放视频,没有错误。我的项目成功构建但不播放视频。当我运行代码时,JFrame会出现一段时间。 当我在Windows中使用相同的代码时,它播放视频并成功运行,但在Ubuntu中,没有。

以下是输出窗口。

代码的输出窗口

以下是我的代码:(我正在使用vlcj-3.0.1)

import com.sun.jna.NativeLibrary;
import java.awt.BorderLayout;
import java.io.File;
import javax.swing.JFrame;
import javax.swing.JPanel;
import uk.co.caprica.vlcj.component.EmbeddedMediaPlayerComponent;
import uk.co.caprica.vlcj.player.embedded.EmbeddedMediaPlayer;

class PlayerPanel
        extends JPanel {

    private File vlcInstallPath = new File("---------------Path of vlc player (installed) --------------");
    private EmbeddedMediaPlayer player;

    public PlayerPanel() {

        NativeLibrary.addSearchPath("libvlc", vlcInstallPath.getAbsolutePath());
        EmbeddedMediaPlayerComponent videoCanvas = new EmbeddedMediaPlayerComponent();
        this.setLayout(new BorderLayout());
        this.add(videoCanvas, BorderLayout.CENTER);
        this.player = videoCanvas.getMediaPlayer();
    }

    public void play (String media) {
        player.prepareMedia(media);
        player.parseMedia();
        player.play();
    }
}

class VideoPlayer
        extends JFrame {

    public VideoPlayer() {
        PlayerPanel player = new PlayerPanel();
        this.setTitle("Swing Video Player");
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        this.setLayout(new BorderLayout());
        this.setSize(640, 480);
        this.setLocationRelativeTo(null);
        this.add(player, BorderLayout.CENTER);
        this.validate();
        this.setVisible(true);

        player.play("---------------Path of video we want to play ----------------------");
    }

    public static void main (String[] args) {
        new VideoPlayer();
    }
}

请告诉我在ubuntu为vlc播放器提供哪条路径。名称为vlc的文件夹超过5个。一个在/usr/share/,另一个在/etc/,依此类推。

1 个答案:

答案 0 :(得分:0)

编辑:

  1. 您找到路径" vlc播放器的路径(已安装)"当你跑步时:java -jar vlcj-3.0.1-tests.jar 作为符号链接,您可以使用:"/usr/lib/libvlc.so.5"

  2. 此代码也粘贴在其他论坛中。 32位java7和vlc存在ubuntu问题。这里的问题很好解释:https://github.com/caprica/vlcj/issues/62

  3. 作为解决方法重命名filename.luac 在ubuntu 14.04,你可以在这里找到它: /usr/lib/vlc/lua/meta/reader/filename.luac