[icecast] on demand server

Ralph Giles
2004-08-06T14:23:51Z

On Tue, May 11, 2004 at 04:21:07PM +0200, Marcos B wrote:

> I am trying to set up a stream server for audio archives.
> I've just tried Icecast2 / Ices, and it is really good stuff,
> but I cannot yet get what I want : streaming on demand.

Icecast isn't really designed for this. You could mount each
file you want to host at a separate location and use individual
ices instances to feed them on a continuous loop. That won't
give you start-on-demand, but will make it possible to send
everything through icecast.

You could also hack something up where the user concacts a
CGI script which launches an ices instance for their custom
stream and then redirects them to it on the icecast server.
That will do what you want, at least for clients that support
redirects.

> I would like the user to just "click and stream" on the web page
(and
> not listen to a stream that is already running).

Just using static files with apache (or any other webserver) is
the way to go here. It's optimized for serving files on demand,
and has no problem with large files. The bandwidth usage is
equivalent to what icecast would need for an equal number of users.
Icecast is really only designed for concurrently serving live
streams and dealing with the complications of that. That's the
nice thing about http streaming (and standards in general): it
just works no matter what you use for a server or a client. The
browser will download the file, and a player will stream it.

> The reason why I am not just putting some .m3u links on the webpage and
> let my apache server do the job is that I don't want users to download
> the file.

People like to kid themselve about this, but I think you'll find there's
little difference. There's not a big gap between people knowlegeable
enough to pull the download url out of the m3u file and paste it into
their browser, and people knowlegable enough to pull the icecast url
out of the m3u file and paste it into their browser.

Hope that helps,
 -r