2013-08-06, 18:32
  #1
Medlem
Jag lyckas inte att få deinterlacing att fungera med vlcj. Koden som används är:
Kod:
public class MediaPlayer {

	/**
	 * @param args
	 */
	
	private JFrame ourFrame = new JFrame();
	
	private EmbeddedMediaPlayerComponent ourMediaPlayer;
	
	private String mediaPath="";
	String [] options =  {"--video-filter=deinterlace", "--deinterlace-mode=blend"};
	
	MediaPlayer(String vlcPath, String mediaURL) {
		this.mediaPath = mediaURL;
		this.mediaPath = "http://192.168.0.106:8001/1:0:1:3F4:2D:A027:FFFF0000:0:0:0:";
		//MAC OS X 64-bit ---> "/Applications/VLC.app/Contents/MacOS/lib"
		NativeLibrary.addSearchPath(RuntimeUtil.getLibVlcLibraryName(), "/Applications/VLC.app/Contents/MacOS/lib");
		
		
		
		ourMediaPlayer = new EmbeddedMediaPlayerComponent();
		
		ourFrame.setContentPane(ourMediaPlayer);
		
		ourFrame.setSize(800, 600);
		
		ourFrame.setVisible(true);
		ourFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		
	}
	
	public void run() {
		ourMediaPlayer.getMediaPlayer().playMedia(mediaPath, options);
	}

}

Videoströmmen öppnas och visas korrekt, men deinterlacingen fungerar inte trots att jag skickar med dom parametrarna till MediaPlayerComponent.
Någon som har en aning om vad som kan vara fel?

Tack!
Citera
2013-08-06, 21:31
  #2
Moderator
Protons avatar
Citat:
Ursprungligen postat av undertoone
Jag lyckas inte att få deinterlacing att fungera med vlcj. Koden som används är:
Kod:
public class MediaPlayer {

	/**
	 * @param args
	 */
	
	private JFrame ourFrame = new JFrame();
	
	private EmbeddedMediaPlayerComponent ourMediaPlayer;
	
	private String mediaPath="";
	String [] options =  {"--video-filter=deinterlace", "--deinterlace-mode=blend"};
	
	MediaPlayer(String vlcPath, String mediaURL) {
		this.mediaPath = mediaURL;
		this.mediaPath = "http://192.168.0.106:8001/1:0:1:3F4:2D:A027:FFFF0000:0:0:0:";
		//MAC OS X 64-bit ---> "/Applications/VLC.app/Contents/MacOS/lib"
		NativeLibrary.addSearchPath(RuntimeUtil.getLibVlcLibraryName(), "/Applications/VLC.app/Contents/MacOS/lib");
		
		
		
		ourMediaPlayer = new EmbeddedMediaPlayerComponent();
		
		ourFrame.setContentPane(ourMediaPlayer);
		
		ourFrame.setSize(800, 600);
		
		ourFrame.setVisible(true);
		ourFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		
	}
	
	public void run() {
		ourMediaPlayer.getMediaPlayer().playMedia(mediaPath, options);
	}

}

Videoströmmen öppnas och visas korrekt, men deinterlacingen fungerar inte trots att jag skickar med dom parametrarna till MediaPlayerComponent.
Någon som har en aning om vad som kan vara fel?

Tack!
Är du säker på att options inte är NULL när du startar upp din spelare? Hjälper det om du sätter private framför din string-array options?
Citera
2013-08-09, 12:38
  #3
Medlem
Jag löste det med att slopa vlcj och istället använda ProcessBuilder samt Process för att starta vlc.exe
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in