Java - Classe per interfacciarsi a VLC
Con le nuove versioni del noto player multimediale VLC, si introducono molteplici interfacce utili per creare applicativi che interagiscano con VLC e i file in esecuzione sul programma.
Qui di seguito una classe Java realizzata per interfacciarsi a VLC. Testato con la versione 2.0.8:
/*
* Send command to VLC web interface.
* Tested with VLC 2.0.8
*/
package javaapplication1;
/**
*
* @author Rocco Musolino
*/
import java.net.*;
import java.io.*;
public class web_vlc {
public static int vol = 150; // volume default mappato da 0 a 500.
public static void comando(String z) throws Exception{
web_vlc.connessione(z);
}
public static void comando(String z, Integer k) throws Exception{
web_vlc.connessione(z+"&val="+k);
}
public static void play() throws Exception{
web_vlc.connessione("pl_play");
}
public static void pause() throws Exception{
web_vlc.connessione("pl_pause");
}
public static void stop() throws Exception{
web_vlc.connessione("pl_stop");
}
public static void next() throws Exception{
web_vlc.connessione("pl_next");
}
public static void prev() throws Exception{
web_vlc.connessione("pl_previous");
}
public static void more_vol() throws Exception{
vol = (vol + 50) % 501; // mappato da 0 a 500
web_vlc.connessione("volume"+"&val="+vol);
}
public static void less_vol() throws Exception{
vol = (vol - 50) % 501; // mappato da 0 a 500
web_vlc.connessione("volume"+"&val="+vol);
}
public static void connessione(String x) throws Exception{
URL pagina = new URL("http://localhost:8080/requests/status.xml?command="+x);
URLConnection yc = pagina.openConnection();
try{
BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
//String inputLine;
//while ((inputLine = in.readLine()) != null)
//System.out.println(inputLine);
in.close();
}
catch (Exception e){
System.out.println("Interfaccia Web VLC non attiva.");
}
}
public static void main(String args[]){
try{
/*
web_vlc.comando("pl_play"); //comando VLC per mandare in play
web_vlc.comando("pl_pause"); //comando VLC per mettere in pausa
web_vlc.comando("pl_stop"); //comando VLC per stoppare
web_vlc.comando("pl_next"); //comando VLC per passare al prossimo brano
web_vlc.comando("pl_previous"); //comando VLC per passare al brano precedente
web_vlc.comando("volume", 250); // il volume va da 0 a 500 mappato su vlc da 0 a 200.
// OPPURE, METODI ANALOGHI:
web_vlc.play();
web_vlc.pause();
web_vlc.stop();
web_vlc.next();
web_vlc.prev();
web_vlc.more_vol();
web_vlc.less_vol();
*/
}catch (Exception e){
System.out.println(e);
}
}
}