| | |
| | | /* |
| | | AV-Direktor - Control OMXPlayer on Raspberry Pi via HTTP |
| | | Copyright (C) 2021 Ulrich Hilger |
| | | Calypso - Media Player Remote Control via HTTP for Raspberry Pi |
| | | Copyright (C) 2021-2023 Ulrich Hilger |
| | | |
| | | This program is free software: you can redistribute it and/or modify |
| | | it under the terms of the GNU Affero General Public License as |
| | |
| | | import java.util.logging.Logger; |
| | | |
| | | /** |
| | | * Hauptklasse des av-director |
| | | * Hauptklasse von Calypso |
| | | * |
| | | * Aufruf mit |
| | | * java -jar av-director.jar port=9000 |
| | | * java -jar av-director.jar nfs-prefix="/media/mc" port=9000 |
| | | * java -Djava.util.logging.config.file=logging.properties -jar .. |
| | | * Aufruf mit<br> |
| | | * java -jar calypso.jar port=9000 ctx="/calypso"<br> |
| | | * java -jar calypso.jar nfs-prefix="/media/mc" port=9000<br> |
| | | * java -Djava.util.logging.config.file=logging.properties -jar ..<br> |
| | | * |
| | | * Der Parameter nfs-prefix bewirkt, dass beim Abspielen relative Pfade |
| | | * mit diesem Praefix verbunden werden und setzt voraus, dass auf der |
| | | * Maschine ein NFS-Mount ueber /etc/fstab eingerichtet ist. |
| | | * Maschine ein NFS-Mount ueber /etc/fstab eingerichtet ist.<br> |
| | | * <br> |
| | | * Anmerkung anlaesslich der Aenderung auf VLC (2.1.2023):<br> |
| | | * Mit Calypso wurde erstmals jdk.httpserver anstelle von Tomcat |
| | | * einsetzt. Es war in diesem Punkt noch ein Laborversuch und sollte |
| | | * unter Wiederverwendung der wesentlichen Teile bei Gelegenheit |
| | | * neu gebaut werden. |
| | | * |
| | | * @author ulrich |
| | | * @version 0.1, 20.03.2021 |
| | | * @author Ulrich Hilger |
| | | * @version 0.2 vom 2.1.2023, 0.1 vom 20.03.2021 als Nachfolger von Pirc (02.2013-03.2021) |
| | | */ |
| | | public class App { |
| | | |
| | |
| | | public static final String VLC_PLAYER = "vlc"; |
| | | public static final String OMX_PLAYER = "omx"; |
| | | public static final String OMX_WD = "omx.wd"; |
| | | public static final String CTX = "ctx"; |
| | | |
| | | public static final String DEFAULT_CTX = "/calypso"; |
| | | |
| | | private static HashMap initParams; |
| | | private static Process playerproc; |
| | | private static Player player; |
| | | |
| | | |
| | | /** |
| | | * @param args the command line arguments |
| | |
| | | break; |
| | | } |
| | | Server server = new Server(Integer.parseInt(getInitParameter(IP_PORT))); |
| | | String ctx = getInitParameter(CTX); |
| | | if(ctx != null && ctx.length() > 0) { |
| | | server.setContextName(ctx); |
| | | } else { |
| | | server.setContextName(DEFAULT_CTX); |
| | | } |
| | | try { |
| | | server.start(); |
| | | server.start(playerType); |
| | | } catch (IOException ex) { |
| | | Logger.getLogger(App.class.getName()).log(Level.SEVERE, null, ex); |
| | | } |