Java - vlcjでビデオおよびオーディオファイル(mp4、mp3など)を再生する

必須:
- Download VLC (download VLC media player)
- 32 ビット VM の場合は 32 ビット vlc を、64 ビット JVM VM の場合は 64 ビットをインストールします

Java Media Player with VLC vlcj Library
Javaで100%作ったメディアプレーヤー



JMFライブラリ, しかし、それは時代遅れで古いようですので、開発者はC ++の有名なVLCライブラリからvlcj (Javaのj).
この素晴らしいライブラリの使い方の簡単な例を紹介します。以下の例にあるコードをコピーして、お好みのIDEに貼り付けるだけです。Elipse または Netbeans。download vlcj libraryしてプロジェクトとクラスパスに統合します.

目標は、作業環境を確保することです。このステップは、vlcj を使用するアプリケーションをコーディングする上で重要です。この単純なアプリケーションが動作しない場合、javaでコーディングされ、vlcjを統合している残りのアプリケーションはすべて動作しません.

ネイティブライブラリを探してください

ネイティブライブラリのパスは、2つのファイルを含むフォルダを指す必要があります。libvlc.dll および libvlccore.dll。Linux では、ファイルの名前は libvlc.so と libvlccore.so です。これら2つのdllファイルはVLCフォルダにありますが、見つからない場合は、ダウンロードして次のフォルダに追加してください。VLC がインストールされました.

NativeLibrary.addSearchPath(
          RuntimeUtil.getLibVlcLibraryName(), "C:/Program Files/VideoLAN / VLC);

1つの間違いは、Java VMが32ビットバージョンのVLCで使用されていることです。64ビットJDKで64ビットVLCバージョンを使用し、32ビットJDKで32ビットVLCバージョンを使用する必要があるという理由だけでは機能しません.

ネイティブライブラリ

vlcj APIは、VLCをライブラリに接続するJNAを使用します。これは、 環境 必須 予定 適切に構成されています だから Javaアプリケーションは、書店 native.
Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);

void chargerLibrary(){
  NativeLibrary.addSearchPath
  RuntimeUtil.getLibVlcLibraryName(), "C:/Program Files/VideoLAN/VLC");
  Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);
}

2つの必須クラス:
  • MediaPlayerFactory: libvlc の 1 つのインスタンスを初期化し、ドライブ インスタンスを作成します。マルチメディア。できる 動画ごとに複数のパネルを作成します(例:.
  • EmbeddedMediaPlayer: メディア プレーヤーのコンポーネントを UI コンポーネントに統合します。このクラスでは、 control と関係のあるもの 再生の準備や開始、フルスクリーンなどのユーザーインターフェイス

import java.awt.BorderLayout;
import java.awt.Canvas;
import java.awt.Color;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import com.sun.jna.Native;
import com.sun.jna.NativeLibrary;
import uk.co.caprica.vlcj.binding.LibVlc;
import uk.co.caprica.vlcj.player.MediaPlayerFactory;
import uk.co.caprica.vlcj.player.embedded.EmbeddedMediaPlayer;
import uk.co.caprica.vlcj.player.embedded.windows.Win32FullScreenStrategy;
import uk.co.caprica.vlcj.runtime.RuntimeUtil;
import uk.co.caprica.vlcj.runtime.x.LibXUtil;

/*www.codeurjava.com*/

public class MediaPanel {

public static void main(final String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
chargerLibrary();
new MediaPanel(args);
}
});
}

void chargerLibrary(){
NativeLibrary.addSearchPath(
RuntimeUtil.getLibVlcLibraryName(), "C:/Program Files/VideoLAN/VLC");
Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);
LibXUtil.initialise();
}

private MediaPanel(String[] args) {
JFrame frame = new JFrame("vlcj tutorial");
frame.setLocation(100, 100);
frame.setSize(1050, 600);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);

//Canvas のインスタンスを作成します
Canvas c = new Canvas();
//ビデオの背景はデフォルトで黒です
c.setBackground(Color.black);
JPanel p = new JPanel();
p.setLayout(new BorderLayout());
//ビデオがサーフェス全体を占める
p.add(c, BorderLayout.CENTER);
frame.add(p, BorderLayout.CENTER);

//ファクトリを作成します
MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory();
//メディアプレーヤーのインスタンスを作成します
EmbeddedMediaPlayer mediaPlayer = mediaPlayerFactory.newEmbeddedMediaPlayer(new Win32FullScreenStrategy(frame));
mediaPlayer.setVideoSurface(mediaPlayerFactory.newVideoSurface(c));
//フルスクリーン
mediaPlayer.toggleFullScreen();
//マウスカーソルをJFrame内に隠す
mediaPlayer.setEnableMouseInputHandling(false);
//JFrame
mediaPlayer.setEnableKeyInputHandling(true);

//ファイルの準備
mediaPlayer.prepareMedia("vidéo.mp4");
//
mediaPlayer.play() ファイルを再生します。
}
}
どうぞ!わずか数行のコードで、独自のメディアプレーヤーを作成できるようになりました。必要に応じて、vlcj documentation をオンラインで探索し、独自のアプリを開発してください