Ja, danke für den Hinweis.
Das stammt aus einer Berechnungsorgie
Letztendlich handelt es sich bei meinem Programm um einen sehr speziellen "sleep" Timer, der auch wieder an vorbestimmter Stelle startet usw.
bfo
Ja, danke für den Hinweis.
Das stammt aus einer Berechnungsorgie
Letztendlich handelt es sich bei meinem Programm um einen sehr speziellen "sleep" Timer, der auch wieder an vorbestimmter Stelle startet usw.
bfo
ZitatFrage: Was wäre, wenn Du rein aus Sicherheitsgründen in params.add(movie); die Adresse für das Video in Anführungszeichen gesetzt hättest, zum Beispiel durchparams.add("\"" + movie + "\""); ?
Genau das ging nicht. War mein erster Ansatz.
ZitatNoch eine Frage: vlc in Zeile 3 enthält den Pfad für die aufzurufende vlc.exe, aber wie ist vLCStartOpts definiert, wenn es in Zeile 4 verwendet wird?
Das ist eine String Variable, welche aus einer ini gelesenw ird, in welcher sowas drin steht
-I rc --rc-host localhost:12345
usw
Jan
Kein Problem... hier der JAVA Code:
//Parameter in arraylist ArrayList<String> params = new ArrayList<String>();params.add(vlc);String iniopts[] = vLCStartOpts.split(" ");for (int i = 0; i < iniopts.length; i++) { params.add(iniopts);}params.add("--start-time");params.add(startime);params.add("--stop-time");params.add(String.valueOf((dauer*60 -1)));params.add(movie);params.add("vlc:quit");if (novideo.length()>0)params.add(novideo);if (playRandom.length()>0)params.add(playRandom);//Zurückwandeln in String Array zur Übergabe an runntimeString[] param = params.toArray(new String[params.size()]);...Runtime.getRuntime().exec(param);
ergibt unter Windows zum Beispiel diesen Aufruf:
C:\Program Files\VideoLAN\VLC\vlc.exe -I rc --rc-host localhost:4444 --start-time 1985 --stop-time 3599 M:\data\audio-video\video\Hot Shots 2.avi vlc:quit
Dann läufts
Jan
Genau so ist (war) es.
Ich habe den Aufruf jetzt nicht als "eine" lange Zeile übergeben, sondern als String array mit allem gedöns ... und siehe da. Jetzt läufts.
DANKE für die Tips !!!
Jan
Hi,
danke für die Infos.
Aber zu den Pfaden:
Das sind absolute Pfade, nicht relative.
Die fangen alle mit / an (Wurzelverzeichniss Linux System).
Jan
Das es ziemlich "zerpflückt" aussieht sehe ich natürlich.
Die Frage ist, wohin gehören die Hochkommas ? Macht es einen Unterschied ob ich einfache ' oder doppelte nehme " ?
Oder gar diese ´ oder diese ` ?
das ist die CMD:
/usr/bin/vlc -I rc --rc-host=localhost:4444 --start-time=0 --stop-time=899 --extraintf logger --log-verbose=2 --logfile /arc/MeineVLC.log file://'/mnt/video/video/Kinder/101 Dalmatiner.avi' vlc:quit
Zur Info:
Rufe ich das in der Konsole auf, wird der Film angezeigt. Nur wenn es aus dem Aufruf des Java Programmes kommt, dannklappts nicht.
bfo
/usr/bin/vlc -I rc --rc-host=localhost:4444 --start-time=0 --stop-time=899 --extraintf logger --log-verbose=2 --logfile /arc/MeineVLC.log file://'/mnt/video/video/Kinder/101 Dalmatiner.avi' vlc:quit
Egal wie ich es quote, er zerlegt den String und interpretiert jedes einzelne Wort als File.
Dann siehst so aus:
-- logger module started --
main debug: using interface module "logger"
main debug: TIMER module_need() : 0.149 ms - Total 0.149 ms / 1 intvls (Avg 0.149 ms)
main debug: looking for interface module: 1 candidate
main debug: using interface module "hotkeys"
main debug: TIMER module_need() : 0.091 ms - Total 0.091 ms / 1 intvls (Avg 0.091 ms)
main debug: looking for interface module: 1 candidate
main debug: playlist threads correctly activated
main debug: using interface module "inhibit"
main debug: rebuilding array of current - root Wiedergabeliste
main debug: rebuild done - 0 items, index -1
main debug: TIMER module_need() : 0.875 ms - Total 0.875 ms / 1 intvls (Avg 0.875 ms)
main debug: adding item `vlc:quit' ( file:///mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit )
main debug: adding item `Dalmatiner.avi'' ( file:///mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%27 )
main debug: adding item `101' ( file://'/mnt/video/video/Kinder/101 )
main debug: Creating an input for 'vlc:quit'
main debug: looking for interface module: 1 candidate
main debug: no fetch required for (null) (art currently (null))
main debug: Creating an input for 'Dalmatiner.avi''
main debug: no fetch required for (null) (art currently (null))
main debug: Creating an input for '101'
main debug: no fetch required for (null) (art currently (null))
main debug: using interface module "globalhotkeys"
main debug: TIMER module_need() : 0.428 ms - Total 0.428 ms / 1 intvls (Avg 0.428 ms)
main debug: looking for interface module: 1 candidate
lua debug: Found lua interface script: /usr/lib/vlc/lua/intf/cli.luac
lua debug: Setting config variable: config={cli={host='localhost:4444'}}
main debug: using interface module "lua"
main debug: TIMER module_need() : 0.222 ms - Total 0.222 ms / 1 intvls (Avg 0.222 ms)
main debug: processing request item: null, node: Wiedergabeliste, skip: 0
main debug: rebuilding array of current - root Wiedergabeliste
main debug: rebuild done - 3 items, index -1
main debug: starting playback of the new playlist item
main debug: resyncing on 101
main debug: 101 is at 0
main debug: creating new input thread
main debug: Creating an input for '101'
main debug: using timeshift granularity of 50 MiB, in path '/tmp'
main debug: `file://'/mnt/video/video/Kinder/101' gives access `file' demux `' path `'/mnt/video/video/Kinder/101'
main debug: creating demux: access='file' demux='' location=''/mnt/video/video/Kinder/101' file='(null)'
main debug: looking for access_demux module: 3 candidates
main debug: no access_demux module matching "file" could be loaded
main debug: TIMER module_need() : 0.046 ms - Total 0.046 ms / 1 intvls (Avg 0.046 ms)
main debug: creating access 'file' location=''/mnt/video/video/Kinder/101', path='(null)'
main debug: looking for access module: 2 candidates
main debug: no access module matching "file" could be loaded
main debug: TIMER module_need() : 0.052 ms - Total 0.052 ms / 1 intvls (Avg 0.052 ms)
main error: open of `file://'/mnt/video/video/Kinder/101' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL 'file://'/mnt/video/video/Kinder/101' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nach.
main debug: dead input
main debug: changing item without a request (current 0/3)
main debug: using item 1
main debug: starting playback of the new playlist item
main debug: resyncing on Dalmatiner.avi'
main debug: Dalmatiner.avi' is at 1
main debug: creating new input thread
lua: Listening on host "localhost:4444".
main debug: Creating an input for 'Dalmatiner.avi''
main debug: net: listening to localhost port 4444
main debug: TIMER input launching for '101' : 0.721 ms - Total 0.721 ms / 1 intvls (Avg 0.721 ms)
main debug: using timeshift granularity of 50 MiB, in path '/tmp'
main debug: `file:///mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%27' gives access `file' demux `' path `/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%27'
main debug: creating demux: access='file' demux='' location='/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%27' file='/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi''
main debug: looking for access_demux module: 3 candidates
main debug: no access_demux module matching "file" could be loaded
main debug: TIMER module_need() : 0.084 ms - Total 0.084 ms / 1 intvls (Avg 0.084 ms)
main debug: creating access 'file' location='/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%27', path='/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi''
main error: socket bind error (Permission denied)
lua error: Error loading script /usr/lib/vlc/lua/intf/cli.luac: lua/intf/modules/host.lua:200: Cannot listen on localhost:4444
main debug: looking for access module: 2 candidates
filesystem debug: opening file `/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi''
filesystem error: cannot open file /mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi' (No such file or directory)
main error: Einlesen der Datei fehlgeschlagen
main error: VLC konnte die Datei "/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi'" nicht lesen. (No such file or directory)
main debug: no access module matching "file" could be loaded
main debug: TIMER module_need() : 0.091 ms - Total 0.091 ms / 1 intvls (Avg 0.091 ms)
main error: open of `file:///mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%27' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL 'file:///mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%27' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nach.
main debug: dead input
main debug: changing item without a request (current 1/3)
main debug: using item 2
main debug: starting playback of the new playlist item
main debug: resyncing on vlc:quit
main debug: vlc:quit is at 2
main debug: creating new input thread
main debug: Creating an input for 'vlc:quit'
main debug: TIMER input launching for 'Dalmatiner.avi'' : 0.601 ms - Total 0.601 ms / 1 intvls (Avg 0.601 ms)
main debug: using timeshift granularity of 50 MiB, in path '/tmp'
main debug: `file:///mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit' gives access `file' demux `' path `/mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit'
main debug: creating demux: access='file' demux='' location='/mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit' file='/mnt/daten/AnwDaten/mp3/temp/vlc:quit'
main debug: looking for access_demux module: 3 candidates
main debug: no access_demux module matching "file" could be loaded
main debug: TIMER module_need() : 0.036 ms - Total 0.036 ms / 1 intvls (Avg 0.036 ms)
main debug: creating access 'file' location='/mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit', path='/mnt/daten/AnwDaten/mp3/temp/vlc:quit'
main debug: looking for access module: 2 candidates
filesystem debug: opening file `/mnt/daten/AnwDaten/mp3/temp/vlc:quit'
filesystem error: cannot open file /mnt/daten/AnwDaten/mp3/temp/vlc:quit (No such file or directory)
main error: Einlesen der Datei fehlgeschlagen
main error: VLC konnte die Datei "/mnt/daten/AnwDaten/mp3/temp/vlc:quit" nicht lesen. (No such file or directory)
main debug: no access module matching "file" could be loaded
main debug: TIMER module_need() : 0.050 ms - Total 0.050 ms / 1 intvls (Avg 0.050 ms)
main error: open of `file:///mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL 'file:///mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nach.
main debug: dead input
main debug: changing item without a request (current 2/3)
main debug: nothing to play
OK, danke für den Tip:
habe das jetzt mit folgender Befehlszeile ausführen lassen:
/usr/bin/vlc -I rc --rc-host=localhost:4444 --start-time=12 --stop-time=899 --extraintf logger --logfile /arc/MeineVLC.log file:///mnt/video/video/kinder/101 Dalmatiner.avi vlc:quit
und im Log steht:
-- logger module started --
filesystem error: cannot open file /mnt/video/video/Kinder/101 (No such file or directory)
main error: Einlesen der Datei fehlgeschlagen
main error: VLC konnte die Datei "/mnt/video/video/Kinder/101" nicht lesen. (No such file or directory)
main error: open of `file:///mnt/video/video/Kinder/101' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL 'file:///mnt/video/video/Kinder/101' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nach.
lua: Listening on host "localhost:4444".
filesystem error: cannot open file /mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi (No such file or directory)
main error: Einlesen der Datei fehlgeschlagen
main error: VLC konnte die Datei "/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi" nicht lesen. (No such file or directory)
main error: open of `file:///mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL 'file:///mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nh.
filesystem error: cannot open file /mnt/daten/AnwDaten/mp3/temp/vlc:quit (No such file or directory)
main error: Einlesen der Datei fehlgeschlagen
main error: VLC konnte die Datei "/mnt/daten/AnwDaten/mp3/temp/vlc:quit" nicht lesen. (No such file or directory)
main error: open of `file:///mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL 'file:///mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nach.
Mit dieser CMD bekomme ich dann das:
/usr/bin/vlc -I rc --rc-host=localhost:4444 --start-time=12 --stop-time=899 --extraintf logger --logfile /arc/MeineVLC.log "file:///mnt/video/101 Dalmatiner.avi" vlc:quit
-- logger module started --
main error: open of `"file:///mnt/video/video/Kinder/101' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL '"file:///mnt/video/video/Kinder/101' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nach.
filesystem error: cannot open file /mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi" (No such file or directory)
lua: Listening on host "localhost:4444".
main error: Einlesen der Datei fehlgeschlagen
main error: VLC konnte die Datei "/mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi"" nicht lesen. (No such file or directory)
main error: open of `file:///mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%22' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL 'file:///mnt/daten/AnwDaten/mp3/temp/Dalmatiner.avi%22' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nach.
main error: socket bind error (Permission denied)
lua error: Error loading script /usr/lib/vlc/lua/intf/cli.luac: lua/intf/modules/host.lua:200: Cannot listen on localhost:4444
filesystem error: cannot open file /mnt/daten/AnwDaten/mp3/temp/vlc:quit (No such file or directory)
main error: Einlesen der Datei fehlgeschlagen
main error: VLC konnte die Datei "/mnt/daten/AnwDaten/mp3/temp/vlc:quit" nicht lesen. (No such file or directory)
main error: open of `file:///mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit' failed
main error: Ihre Eingabe konnte nicht geöffnet werden
main error: VLC kann die MRL 'file:///mnt/daten/AnwDaten/mp3/temp/vlc%3Aquit' nicht öffnen. Sehen Sie für Details im Fehlerprotokoll nach.
-- logger module stopped --
Hallo,
ich habe ein Java Programm geschrieben, welches mir den VLC fernsteuert. Soweit so gut.
Wenn der Name des Filmes leerzeichen enthält, findet VLC den film nicht.
Egal wie ich es quote, in Anführungszeichen etc setze. Er findet es nicht.
Die Kommandozeile lasse ich mir vor dem starten auf die Konsole ausgeben - wenn ich diese MANUELL exakt so eingebe, dann - oh wunder - spielt er den Film ab. Woran kann das liegen ?
Hier eine Beispiel Kommandozeile:
/usr/bin/vlc-I rc --rc-host=localhost:4445 --start-time=0 --stop-time=899 "file:///opt/video/Hot Shots 2.avi" vlc:quit
bfo