Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Locked History Actions

vlcj/installation

VLCのインストール

まずvlcjではなく、単体のアプリであるVLCをインストールする。 使用するJavaのビット数によって対応するVLCは異なる。つまり、64bitのJavaであれば、64bitのVLCが必要。

インストール後は、典型的には、「C:\Program Files\VideoLAN\VLC」に

libvlc.dll
libvlccore.dll
plugins

というファイル・フォルダが格納されていることがわかる。

vlcjの用意

gradleで

    compile group: 'uk.co.caprica', name: 'vlcj', version: '3.10.1'

を指定してライブラリを取得。依存ライブラリとして

net.java.dev.jna:jna:4.1.0
net.java.dev.jna:jna-platform:4.1.0
org.slf4j:slf4j-api:1.7.10

も取得される。

ビデオを表示してみる

以下のコードで可能。

import javax.swing.*;

import uk.co.caprica.vlcj.component.*;
import uk.co.caprica.vlcj.discovery.*;

public class VlcPlayer extends JFrame {

  public static void main(final String[] args) {

    // ここで勝手にVLCのDLLを探してくれるらしい。
    new NativeDiscovery().discover();

    // プレーヤーを表示
    SwingUtilities.invokeLater(new Runnable() {
      @Override
      public void run() {
        new VlcPlayer();
      }
    });
  }

  private VlcPlayer() {

    this.setTitle("VlcPlayer");

    // プレーヤーコンポーネント
    EmbeddedMediaPlayerComponent player = new EmbeddedMediaPlayerComponent();
    this.setContentPane(player);

    this.setSize(1050, 600);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);

    // 注意:"c:/users/admin/desktop/video.mp4"ではだめ、これはネイティブつまりWindowsに渡される文字列なので、
    // バックスラッシュでないといけない。
    player.getMediaPlayer().playMedia("c:\\users\\admin\\desktop\\video.mp4");
  }
}

ログの表示

うまくいかない場合、vlcjはslf4jを使用しているので、以下を依存ライブラリとして追加すれば、ログが表示されるようになる。

compile group: 'org.slf4j', name: 'slf4j-simple', version: '1.7.10'