PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MP3 per PHP auf dem Server laufen lassen



Mysterox
31.07.06, 22:59
Hallo zusammen,

hoffe das hier auch hin gehört!

Folgendes Prob, ich soll für nen Kunden eine Website bauen, aus dieser Website heraus sollen MP3 abspielbar sein.

Per Konsole kann funzt der aufruf auch "mplayer /pfad/dateiname.mp3", auch mit Putty von nem anderen Rechner aus geht das ohne probleme.

Wenn ich das jetzt jedoch mit php ausführe


echo system ("mplayer /pfad/dateiname.mp3");


Dann bekomme ich folgende Ausgabe:


MPlayer 2:0.99+1.0pre7try2+cvs20060117-0ubuntu8 (C) 2000-2006 MPlayer Team CPU: Advanced Micro Devices Sempron/Athlon MP/XP/XP-M Barton,Thorton (Family: 6, Stepping: 0) CPUflags: MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0 Compiled with runtime CPU detection. 91 audio & 204 video codecs Opening joystick device /dev/input/js0 Setting up LIRC support... Playing /Daten/We Can`t Dance/01 - No Son Of Mine.mp3. Audio file file format detected. Clip info: Title: No Son Of Mine Artist: Genesis Album: We Can`t Dance Year: 1991 Comment: Track: 1 Genre: Progressive Rock ================================================== ======================== Opening audio decoder: [mp3lib] MPEG layer-2, layer-3 AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400) Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3) ================================================== ======================== Building audio filter chain for 44100Hz/2ch/s16le -> 0Hz/0ch/??... [AO SDL] Samplerate: 44100Hz Channels: Stereo Format s16le Audio: no sound Video: no video Exiting... (End of file)


Hat jemand ne Idee wie ich dieses Problem beheben kann?

mfg

Mysterox

cane
31.07.06, 23:24
Du willst nicht ernsthaft PHP den Zugriff auf den mplayer gewähren um Sounds in Webseiten einzubinden, oder? :ugly:

Das ist aus Sicherheitsgründen übelst leichtsinnig und auch generell die falsche Lösung. NIEMALS NIEMALS NIEMALS PHP Systemzugriff gewähren außer man weiß ganz genau was man tut!!!! Ein nicht genügend abgefangener Parameter und jeder Websitebesucher hat genausoviele Rechte wie der Webserver!

Was hast du denn genau mit den Sounds vor?

mfg
cane

Roger Wilco
31.07.06, 23:34
[ ] Dir ist klar, dass mplayer die Datei dann auf dem Server abspielt und der Client gar nichts davon hat...

Lies http://de.selfhtml.org/html/multimedia/netscape.htm und werde glücklich damit. Wenn es dir tatsächlich darum gehen sollte, Musik auf dem Server abzuspielen, schau dir MPD (http://musicpd.org) an.

cane
31.07.06, 23:53
[ ] Dir ist klar, dass mplayer die Datei dann auf dem Server abspielt und der Client gar nichts davon hat...

Soweit hab ich nichtmal gedacht weil bei mir die Alarmglocken auf 100 % gebimmelt haben, ist das jetzt gut oder schlecht? :ugly:

mfg
cane

MiGo
01.08.06, 08:05
Building audio filter chain for 44100Hz/2ch/s16le -> 0Hz/0ch/??... [AO SDL]
Hast du mal versucht, ihm explizid das Ausgabemodul mitzugeben (also mplayer file -ao alsa)?
Und (wie schon oben geschrieben) daran gedacht, dass dann die Musik auf dem Server dudelt (wenn der denn was hat zum dudeln)?

fuffy
01.08.06, 08:55
Hi!

Und wenn die Musik auf dem Server laufen soll, dann nimm sowas (http://www.musicpd.org/phpMp.shtml).

Gruß
fuffy

Mysterox
01.08.06, 10:26
Hi,

ja ich weiss genau was ich will und der Server steht nur in einem Firmennetzwerk!
Daher ist kein Zugriff aus dem Internet etc. möglich.

Das ganze ist für ein Bestattungsunternehmen, diese wollen während der Messe per PDA auf eine Website auf dem Serverzugreifen.

Die Website ist in php geschrieben und liest eine Playliste aus die mit iTunes erstellt wurde (Musikwünsche der Angehörigen ;-) )!

Dann will er einfach auf einen Song in der Playliste klicken können und die Musik soll abgespielt werden! Vom Server!!!

Der Server ist mit mehreren Soundkarten ausgerüstet und an diverse Hifi-Anlagen angeschlossen.

Es muss also auf dem Server und nicht auf dem Client abgespielt werden!

mfg

Mysterox

THEReapMan
01.08.06, 10:59
so sieht die sache gleich anders aus...
Also wir schon gesagt dem mplayer das richtige ausgabemodul mitgeben und das device wos rauskommen soll.

fuffy
01.08.06, 11:09
Ich würde ja immer noch MusicPD auf dem Server installieren, weil so auch direkt sichergestellt ist, dass nicht versehentlich zwei Lieder gleichzeitig auf einem Ausgang laufen, etc. Außerdem kann man so die Musik stoppen.

Gruß
fuffy

Mysterox
01.08.06, 11:24
Hi,

das Prob dabei ist halt einfach, das das ganze auch in eine Website eingebaut werden soll und daher auch vom Layout entsprechend den Wünschen des Bestattungsunternehmen angepasst werden muss bzw. soll!

Danke für eure Hilfe.
Werde das mal probieren und dann berichten, wie es aussieht!

mfg

Mysterox

fuffy
01.08.06, 11:35
das Prob dabei ist halt einfach, das das ganze auch in eine Website eingebaut werden soll und daher auch vom Layout entsprechend den Wünschen des Bestattungsunternehmen angepasst werden muss bzw. soll!
Nimm mpd.class.php (http://mpd.24oz.com/). ;)

Gruß
fuffy

cane
01.08.06, 12:49
Das ganze ist für ein Bestattungsunternehmen, diese wollen während der Messe per PDA auf eine Website auf dem Serverzugreifen.

Schlecht fürs Image und gut für die Boulecard-Presse wenns geknackt wird und statt Mozart Iron Maiden die Party rockt ;)

mfg
cane

Mysterox
01.08.06, 14:54
Schlecht fürs Image und gut für die Boulecard-Presse wenns geknackt wird und statt Mozart Iron Maiden die Party rockt ;)


Ja aber wenn das passiert liegt an den Mitarbeitern da das Netzwerk keine Verbindung zum Internet hat!

Lediglich das WLan könnte man knacken, aber davon gehe ich dort nicht aus und gehört auch nicht zu meinen Aufgaben und Verantwortungen!

Ich muss nur das machen was mein Chef mit dem Typen von dem Bestattungsunternehmen verhandelt hat!

mfg

Mysterox

Mysterox
02.08.06, 08:43
Hi,

also leider klappt das mit -ao alsa als Parameter auch nicht!
Auch wenn ich den Befehl in eine Datei schreibe und diese dann ausführe, klappt es leider nicht!

Habt ihr noch andere Lösungsvorschläge ausser halt MusicPD?

mfg

Mysterox

marce
02.08.06, 08:49
Klappt nicht ist 'ne recht tolle Beschreibung...

Ansonsten - hat der Webserver überhaupt die Rechte, Musik wiederzugeben oder bräuchte es da evtl. noch ein groupadd, chmod, sudo - je nach Variante?

Roger Wilco
02.08.06, 16:13
Habt ihr noch andere Lösungsvorschläge ausser halt MusicPD?
Was gefällt dir an der Lösung mit MPD nicht? Zu einfach? Keine Herausforderung?

Mysterox
03.09.06, 14:26
Hi,

es liegt doch nicht an mir, dass ich MPD nicht verwenden darf!
Ich kann zwar chef sagen das das nicht so optimal ist was der da mit dem Kunden verzapft hat und das wir das bessere so oder so machen sollten!

Aber letzt endlich ist er Chef und ich nix.
War heute nochmal bei dem Kunden wo das eingesetzt werden soll, in den Logfiles vom Apache steht dann immer folgendes drin.



High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2, and 3.
Version 0.59q (2002/03/23). Written and copyrights by Joe Drew.
Uses code from various people. See 'README' for more!
THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!
Title : Candle In The Wind 1997 Artist: Elton John
Album : Candle In The Wind 1997 Year : 1997
Comment: 1C031303 Genre : Pop

Directory: /opt/lampp/htdocs/Test/
Playing MPEG stream from Candle.mp3 ...
MPEG 1.0 layer III, 192 kbit/s, 44100 Hz joint-stereo
ALSA snd_pcm_open error: Permission denied
ALSA snd_pcm_open error: Permission denied
/root/.esd_auth: Permission denied
Can't find a suitable libao driver. (Is device in use?)


Der Aufruf sieht so aus:
/usr/bin/mpg321 -o alsa /opt/lampp/htdocs/Test/Candle.mp3

Wenn ich es ohne den Parameter "-o alsa" versuche bekomme ich nur die Fehlermeldung:


/root/.esd_auth: Permission denied
No default libao driver available.


Weiß zufällig jemand wie ich das Problem beheben kann.

Wie gesagt wenn es nach mir ging wäre hier schon drei mal der MPD am laufen und ich hätte da an einem Sonntag keine arbeit mehr mit!

Mfg

Mysterox

Mysterox
03.09.06, 14:40
Hi,

so alles klar Problem behoben, Musik läuft, Chef zufrieden und ich habe doch noch nen halben Sonntag für mich und meiner Freundin :-)

Gruß

Mysterox

marce
03.09.06, 17:49
Vielen Dank für die äußerst detailierte Lösungsbeschreibung... Ich denke, damit können viele andere, die dieses Problem auch haben es sofort beseitigen...

Mysterox
04.09.06, 11:06
Hi,

oh sorry joa stimmt könnte vielleicht für andere leute auch hilfreich sein, die auch keine andere möglichkeit haben als es selbst zu programmieren, auch wenn das anscheinend auch für einige nicht nachvollziehbar war oder sie es einfach ignorierten ;-)

Gefunden habe ich die lösung hier: http://alsa.opensrc.org/TroubleShooting
Der Befehl lautet: chmod -R a+rwX /dev/snd/

mfg

Mysterox