Neue Antwort schreiben 
 
Themabewertung:
  • 1 Bewertung(en) - 5 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
[PHP] shell_exec() will nicht
Basstra Offline
 

Beiträge: 514
Registriert seit: Mar 2013
Beitrag #1
[PHP] shell_exec() will nicht
Tachjen, ich habe ein Problem, ich will mit shell_exec() den VLC player starten und im Vollbildmodus eine Videodatei abspielen lassen.

Als ich es das erste mal versucht habe, hat er es problemlos gemacht, dann habe ich den Rechner neu gestartet und nun startet er den VLC zwar, aber im Hintergrund, der Ton fängt auch an zu laufen und im Taskmanager ist er auch zu sehen nur er erscheint nicht auf der Oberfläche :(

PHP-Code:
        $movie "file:///".$basedir.$play;
        
$command "\"C:/Program Files (x86)/VideoLAN/VLC/vlc\" --fullscreen -vvv \"$movie\"";
        
$openvlc shell_exec($command); 

(Dieser Beitrag wurde zuletzt bearbeitet: 13.06.2013 19:51 von Basstra.)
13.06.2013 19:51
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
winfreak Offline
アンゲシュテルタ

Beiträge: 10.498
Registriert seit: Aug 2008
Beitrag #2
RE: [PHP] shell_exec() will nicht
Das ist komisch, sollte dann aber an VLC / Parametern liegen (was ich komisch finde, aber gut)
BTW: Du kannst und sollst, wenn du schon " benutzt, nicht escapen.
In " -Strings wird immer nach Variablen gesucht, die dann geparst werden. Es geht also auch so:

PHP-Code:
        $movie "file:///".$basedir.$play;
        
$command "\"C:/Program Files (x86)/VideoLAN/VLC/vlc\" --fullscreen -vvv $movie";
        
$openvlc shell_exec($command); 

[Bild: winfreak_32972_14.png]
(Dieser Beitrag wurde zuletzt bearbeitet: 13.06.2013 20:57 von winfreak.)
13.06.2013 20:55
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Basstra Offline
 

Beiträge: 514
Registriert seit: Mar 2013
Beitrag #3
RE: [PHP] shell_exec() will nicht
Auch so startet vlc nur im Hintergrund.

Wenn ich den Befehl mittels echo ausgebe und diesen dann in die CMD packe tut es ohne Probleme

nachtrag: der VLC brauch die Anführungsstriche (\"$movie\"), da sonst für ihn nach jedem Leerzeichen eine neue Datei beginnt

(Dieser Beitrag wurde zuletzt bearbeitet: 13.06.2013 21:13 von Basstra.)
13.06.2013 21:00
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
winfreak Offline
アンゲシュテルタ

Beiträge: 10.498
Registriert seit: Aug 2008
Beitrag #4
RE: [PHP] shell_exec() will nicht
OK...

[Bild: winfreak_32972_14.png]
13.06.2013 21:32
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Vicky Offline
come sempre

Beiträge: 2.781
Registriert seit: Jul 2008
Beitrag #5
RE: [PHP] shell_exec() will nicht
probier mal

PHP-Code:
$command "start \"C:/Program Files (x86)/VideoLAN/VLC/vlc\" --fullscreen -vvv $movie"
14.06.2013 08:01
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Basstra Offline
 

Beiträge: 514
Registriert seit: Mar 2013
Beitrag #6
RE: [PHP] shell_exec() will nicht
(14.06.2013 08:01)Kaiser schrieb:  probier mal

PHP-Code:
$command "start \"C:/Program Files (x86)/VideoLAN/VLC/vlc\" --fullscreen -vvv $movie"

Damit tut sich leider garnichts mehr :(

14.06.2013 08:26
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Vicky Offline
come sempre

Beiträge: 2.781
Registriert seit: Jul 2008
Beitrag #7
RE: [PHP] shell_exec() will nicht
3 möglichkeiten fallen mir da ein:
1. wenn du das script übern browser startest versteckt dein webserver den php prozess, schau in den einstellungen vom webserver
2. du hast vlc minimiert, schau mal ins systray
3. probier das hier:

PHP-Code:
$command "cmd /c \"C:/Program Files (x86)/VideoLAN/VLC/vlc\" --fullscreen -vvv $movie"
14.06.2013 09:51
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
mrshadowtux
Unregistered

 
Beitrag #8
RE: [PHP] shell_exec() will nicht
Da der Dateiname bei mehrwörtigen Filmnamen noch in " Zeichen muss, hier die Lösung von Jeix entsprechend abgewandelt. Einfach mal testen.
PHP-Code:
$command "cmd /c \"C:/Program Files (x86)/VideoLAN/VLC/vlc\" --fullscreen -vvv \"$movie\""
14.06.2013 09:59
Diese Nachricht in einer Antwort zitieren
niwax Offline
Hardcore-Coder

Beiträge: 3.829
Registriert seit: Dec 2009
Beitrag #9
RE: [PHP] shell_exec() will nicht
Das könnte eher daran liegen, dass PHP, wenn es als Hintergrunddienst läuft, keinen Zugriff auf die Benutzeroberfläche hat und VLC als Kindprozess somit auch nicht.


14.06.2013 12:35
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Basstra Offline
 

Beiträge: 514
Registriert seit: Mar 2013
Beitrag #10
RE: [PHP] shell_exec() will nicht
Und der Gewinner ist: niwax

Danke für deine Hilfe :-)


Habe den Apache Dienst gelöscht und manuell gestartet, tada VLC öffnet sich :-)

14.06.2013 14:55
Alle Beiträge dieses Benutzers finden Diese Nachricht in einer Antwort zitieren
Neue Antwort schreiben 


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste