RFZ: streamen

Beitrag lesen

ich habe verschiedene URLs zu mp3-Streams, diese möchte ich mit PHP "empfangen" und weiterstreamen, wenn man dann einen Stream skipt, soll PHP natürlich den anderen empfangen und weiterstreamen.

Wie realisiere ich das?

Das kommt auf die MP3 Streams an... empfangen kannst du sie mittels fsockopen. Zum senden hast du zwei Möglichkeiten, und die hängen davon ab, wie der Stream übertragen werden soll. Wenn HTTP als Protokoll dient, kannst du dein vom Player aufgerufenes Script einfach die Stream-Daten ausgeben lassen, ggf. müssen dazu noch spezielle Header gesetzt werden.
Wenn es nicht HTTP ist, musst du auf den Apache/Webserver verzichten und mit den Socket-Komponenten von PHP einen eigenen proprietären Server bauen, dafür brauchst du aber die Rechte ein PHP Script direkt auf dem Server auszuführen.

Je nachdem ob du einen Client oder mehrere möchtest, musst dir dann noch überlegen ob ein Script die ganze arbeit alleine machen kann, oder ob du zwei benötigst, eins welches den Stream empfängt und lokal in irgendeiner Art buffert, und ein zweites, welches dann den Stream für jeden Client aus diesem Buffer ausgibt.

Beide Möglichkeiten sind mit mäßigen Kenntnissen umsetzbar, mit einem Shoutcast Video Server hab ich das selbst schonmal versucht.