commit | author | age
|
cfe367
|
1 |
/* |
U |
2 |
* To change this license header, choose License Headers in Project Properties. |
|
3 |
* To change this template file, choose Tools | Templates |
|
4 |
* and open the template in the editor. |
|
5 |
*/ |
229976
|
6 |
package de.uhilger.calypso.handler; |
cfe367
|
7 |
|
b16b54
|
8 |
import com.sun.net.httpserver.HttpExchange; |
229976
|
9 |
import de.uhilger.calypso.ProzessLauscher; |
b16b54
|
10 |
import java.util.Map; |
cfe367
|
11 |
|
U |
12 |
/** |
|
13 |
* |
|
14 |
* @author ulrich |
|
15 |
*/ |
|
16 |
public interface Player extends ProzessLauscher { |
|
17 |
|
|
18 |
/** |
|
19 |
* Einen Prozess zum Abspielen mit dem omxplayer starten |
|
20 |
* @param urlStr URL der Quelle, die abgespielt werden soll |
|
21 |
* @param token |
|
22 |
* @return Antwort des Servers |
|
23 |
*/ |
|
24 |
/* |
|
25 |
public String abspielen(String urlStr, String token) { |
|
26 |
return abspielenMitParametern(urlStr, null, token); |
|
27 |
} |
|
28 |
*/ |
|
29 |
/* |
|
30 |
public String abspielenMitRueckmeldung(String urlStr, String meldeUrlStr, String token) { |
|
31 |
return abspielenMitParameternUndRueckmeldung(urlStr, null, meldeUrlStr, token); |
|
32 |
} |
|
33 |
*/ |
|
34 |
/** |
|
35 |
* Einen Prozess zum Abspielen mit dem omxplayer starten |
|
36 |
* und Parameter uebergeben.Moegliche Parameter fuer das Abspielen mit dem omxplayer |
|
37 |
beschreibt die Seite |
|
38 |
<a href="https://github.com/huceke/omxplayer/blob/master/README.md"target="_blank">Aufstellung der Parameter</a>.Die Zeichenkette parameter enthaelt Eintraege wie z.B. |
|
39 |
* App.OPT_LOCAL_AUDIO oder App.OPT_HDMI_AUDIO. |
|
40 |
Mehrere Parameter werden mit App.BLANK getrennt. |
|
41 |
* @param urlStr der URL der Quelle, die abgespielt werden soll |
|
42 |
* @param parameter die Parameter, die vom omxplayer angewendet werden sollen |
|
43 |
* @param token |
|
44 |
* @return Antwort des Servers |
|
45 |
*/ |
|
46 |
/* |
|
47 |
public String abspielenMitParametern(String urlStr, String parameter, String token) { |
|
48 |
return abspielenMitParameternUndRueckmeldung(urlStr, parameter, null, token); |
|
49 |
} |
|
50 |
*/ |
|
51 |
String abspielen(String urlStr, String parameter, String meldeUrlStr, String token); |
|
52 |
|
|
53 |
/** |
|
54 |
* Dem laufenden Abspielprozess ein Kommando uebermitteln |
|
55 |
* @param k das Kommando laut |
|
56 |
* <a href="https://github.com/huceke/omxplayer/blob/master/README.md" target="_blank">Liste der Kommandos</a> |
|
57 |
* @return die Antwort des Servers |
|
58 |
*/ |
|
59 |
String kommando(String k); |
b16b54
|
60 |
|
U |
61 |
StringBuilder buildParams(HttpExchange t, Map m); |
|
62 |
|
|
63 |
String getParam(Map map, String key); |
cfe367
|
64 |
|
U |
65 |
/* ------ Implementierung ProzessLauscher ----------------- */ |
|
66 |
void prozessBeendet(String meldeUrlStr); |
|
67 |
|
|
68 |
/** |
|
69 |
* Einen eventuell laufenden Abspielprozess beenden und den |
|
70 |
* Servlet-Kontext bereinigen.Diese Methode kann auch verwendet werden, wenn es beim normalen |
|
71 |
Abspielen zu Fehlern kommt und womoeglich der Servlet-Kontext noch |
|
72 |
eine Referenz zu einem Abspielprozess enthaelt, die nicht mehr |
|
73 |
aktuell ist. |
|
74 |
* |
|
75 |
* Mit der Methode tilgen kann man eine solche Referenz |
|
76 |
entfernen und gibt so das Objekt wieder frei fuer die Ausfuehrung |
|
77 |
weiterer Kommandos. |
|
78 |
* |
|
79 |
* @return die Antwort des Servers |
|
80 |
*/ |
|
81 |
String tilgen(); |
|
82 |
|
|
83 |
} |