[Icecast-dev] Streaming ogg files with multiple audio
acandido at hi-iberia.es
Wed Oct 20 03:46:41 PDT 2010
On 06/10/10 12:31, Andres Gonzalez wrote:
> I've got a solution. It's simply increasing the burst size in icecast.xml.
> In my case, setting burst_size to 226143 worked (the video stops
> slightly in some instants, but most time it runs fluidly). (Note that
> the test file size is about 1 MB).
> While testing, I observed that with a normal video (single audio) first,
> refbufs got with get_next_buffer() in source_main(), had lengths: 73,
> 618, 73, 3303, 2106, 3755, ...
> But with mix1.ogg (double audio), lengths were: 59417, 42471, 43592,
> 61627, ...
Actually, I found out that this sizes come from the page size of each
ogg file. The first is made with FFmpeg2theora, while the second is made
with FFmpeg, which makes bigger pages.
After doing some tests, I think that a part of the problem is that
oggfwd sends blocks of data until it completes an ogg page, and then
sleeps. Then, Icecast tries to hold each page in a single buffer (and
then the problems appear ...)
Do you think that libshout or icecast could be modified in some way to
solve this? (e.g. oggfwd sending smaller packets, while maintaining the
same bitrate; Icecast spliting big buffers, ... etc).
More information about the Icecast-dev