В итоге все сводится к протоколу, который вы хотите использовать. Shoutcast IMHO - простой HTTP, поэтому, чтобы сделать своим собственным потоком, вы просто выводите содержимое потоков.
Чтобы веб-радио на основе ogg работало с моей системой Sonos, я создал небольшую оболочку для транскодирования sox, которая на самом деле написана на PHP, поэтому вам может быть полезно привести ее в качестве примера.
Вы найдете это здесь: http://www.gnegg.ch/ogg2mp3/
Если вы реализуете свой собственный потоковый протокол - может быть, даже на основе UDP, то, боюсь, PHP может оказаться не самым правильным решением проблемы - по крайней мере, до тех пор, пока у него есть доля проблем, когда используется для долго выполняющихся процессов (для которых 5.3 может принести некоторую помощь с его интегрированной сборкой мусора)