[Theora-dev] Live HTTP streaming of Theora files
Ralph Giles
giles at xiph.org
Wed Nov 2 10:47:52 PST 2005
On Wed, Nov 02, 2005 at 09:40:18AM -0800, David Barrett wrote:
> It really seems like some Apache mod (call it "mod_tail") would do the
> trick: have one app (any app) just record live audio/video to a file (in
> any format), and have mod_tail stream out the tail to anyone who
> requests.
It would work, but it has its own issues. Presumedly this behaviour is
controlled by a directive on a Location or Directory, and you could use
symlinks to have the same spooling file available both as an archive and
with the mod_tail access. How then do you tell apache to stop providing
the tailed version when the broadcast is over? remove the symlink? add a
redirect to the archive version?
Not that I'm discouraging you from writing such a thing, it's just
non-trivial to administer. As a dedicated tool, icecast handles these
things much better but of course there's the overhead of installing and
configuring another piece of software.
> There might need be some kind of header caching... But that's the
> overall idea.
Yes, this is required for Ogg Vorbis and Theora streaming.
> Does anything like this exist? Why did Icecast go the route of creating
> a standalone server rather than extending Apache?
I can't speak for the authors. Probably it was easier than writing an
apache module, especially at the time. In the "internet radio" model
icecast was originally written to support, people generally just used
their music player app to create the streams with a special output
plugin to talk to the streaming server; having a special protocol (just
modified HTTP in icecast's case) to source the stream is also easier
that supporting some kind of safe write access to the webserver's
filesystem for all the people you might want to serve streams from. And
of course, it doesn't *require* you to archive the stream, which is a
nice option to have in some cases.
FWIW,
-r
More information about the Theora-dev
mailing list