[icecast] Problem with ices on OpenBSD 2.9 w/ Icecast 1.3.10

Brendan Cully brendan at icecast.org
Wed Jul 11 20:53:47 UTC 2001



On Wednesday, 11 July 2001 at 21:51, Nick Ludlam wrote:
> Hurray! I found the problem, and it lies with icecast. If I set sleep_ratio
> to 0, I get no problems with icecast reading data from the socket. I spent
> a while working out that after a certain length of time, ices started falling over
> when the thread reading the socket in icecast wasn't waking up in time
> so send() in ices started blocking.

Ah, good.

> Going through the icecast source, wouldn't it make sense to select() on the
> source data socket instead of just sleeping for an arbitrary amount of time?
> Since ices is controling when it sends data, you can just read as necessary
> at the icecast end. I'm not really happy running icecast with sleep_ratio at
> 0 as this is prohibitively cpu-intensive. I guess this doesn't crop up when
> running on Linux as the scheduler is different.

I've got a change which still uses sleep but in much smaller
increments, sitting in the icecast CVS tree (this was to help with
streaming high bitrate streams). Try that out and see if it works for
you.

I did play with select for a little bit before doing the lame sleep
tactic. I found that on linux icecast was getting woken up every few
bytes, so I thought that sleeping might actually be a bit more
CPU-friendly since it could theoretically read in larger chunks.

Maybe we should just go to select for its simplicity and reliablity.

-Brendan

--- >8 ----
List archives:  http://www.xiph.org/archives/
icecast project homepage: http://www.icecast.org/
To unsubscribe from this list, send a message to 'icecast-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the Icecast mailing list