[Icecast] ices-kh dropping jack ports unexpectedly

Karl Heyes karl at xiph.org
Mon Oct 18 09:41:59 PDT 2004


On Mon, 2004-10-18 at 16:06, Andy Baxter wrote:
> I've been having a problem where ices-kh (the jack'ified version)
> disconnects from its jack input source unexpectedly. This happens mainly
> while other jack clients are being started/stopped, or
> connected/disconnected, but also at other times (e.g. switching between
> different X sessions). I'm planning to do a bit more work on tuning up the
> jack setup to see if I can get rid of the problem that way, but it would
> be good to know in the meantime if this is a known bug, and whether there
> is anything I can do about it.

Are you running with realtime privileges, for this you need to start as
root if you want that. Even with realtime privileges there may be odd
cases where the scheduling latency is a bit too high, it all depends on
the drivers and kernel version but the current state is not that bad and
getting better.

> It happened just now when I connected two other jack sources. There were
> two xruns at the same time, of 0.8 and 1.8 msecs, so I'm guessing this
> happens when there is an xrun. I've tried increasing the client timeout to
> 1000 msec, but this doesn't help. I can't increase the buffer size any
> more - it's at 2048 and increasing it to 4096 stops ices from starting at
> all.

xrun is just when the input thread cannot get scheduled quickly enough,
this may be resolved enabling realtime.

> The setup I'm working with is an ecasound session relaying audio between
> its input and output ports, with its output connected to all the ices
> clients for the different streams we're running. Then I'm
> switching the ecasound input between different stream sources (line in,
> recorded audio, http relay etc.) I want to be able to do this switching
> without breaking the stream, which is why I've set things up this way.

As already mentioned it may be better using a different approach (eg
jackEQ). The ices package itself will also allow for defining multiple
input sections, not for mixing but for cascading in a round robin
fashion (switchable on input ending or USR2 signal).

karl.




More information about the Icecast mailing list