[Icecast] fallback loop

Ken Gillett kengroups at icloud.com
Fri May 21 14:18:27 UTC 2021

Ah, the problem is that there has to be NOTHING running when there are no listeners. Well Icecast of course, but no streaming or transocding. So I wouldn’t want ezstream running constantly for what is in effect just a method of delaying Icecast occasionally for a few seconds.

It’s annoying that Icecast immediately refuses listener connections if the source is not already streaming. There needs to be some configuration parameter to make it wait a specified time before actually refusing the connection.

However, all that aside, Icecast claims it CAN simply loop a fallback file, yet in reality seems unable to do so, at least as far as I have been able to determine. 

Ken  G i l l e t t


> On 21 May 2021, at 14:35, Lorenz Reichelt <lr at pripple.de> wrote:
> Hi Ken, it is best practice to actually stream the fallback file. If you specify it directly, it will be sent many times, fill up the client’s buffer, play silence for a long time before the program is played.
> I haven’t come across your problem, but it might be gone once you follow this best practice.
> The steps I took on my Ubuntu server:
> 1. "apt install ezstream"
> 2. Write a very simple ezstream.xml with the following contents:
> <ezstream>
> <servers>
> <server>
> <protocol>HTTP</protocol>
> <hostname></hostname>
> <port>8000</port>
> <password>hackme</password>
> </server>
> </servers>
> <streams>
> <stream>
> <mountpoint>fallback</mountpoint>
> <format>MP3</format>
> </stream>
> </streams>
> <intakes>
> <intake>
> <type>file</type>
> <filename>/path/to/fallback.mp3</filename>
> </intake>
> </intakes>
> </ezstream>
> 3. Update your icecast.xml like this:
> <limits>
> <sources>10</sources> <---- increase this value – at least I ran into problems of not being able to connect with the live stream source with the default limit to 2 ---->
> <-- … -->
> </limits>
> <-- … -->
> <mount type="normal">
> <mount-name>/live</mount-name>
> <fallback-mount>/fallback</fallback-mount>
> <fallback-override>1</fallback-override>
> <fallback-when-full>1</fallback-when-full>
> <intro>/live_intro.mp3</intro>
> </mount>
> <mount type="normal">
> <mount-name>/fallback</mount-name>
> <fallback-mount>/absolute_fallback.mp3</fallback-mount>  <---- I chose a different track here so I can tell if ezstream is working or not ---->
> <fallback-override>1</fallback-override>
> <fallback-when-full>1</fallback-when-full>
> <intro>/fallback_intro.mp3</intro>
> </mount>
> 4. Add "ezstream -c path/to/ezstream.xml" as a service and start it (I had to write my own ezstream.service and install it via systemctl, but I’m not sure if I am following best practice with it, so I don’t provide it here)
> 5. When you restart the icecast service, restart the ezstream service, too (some time later) – else, for me, it stops working – of course, there might be better/best practice solutions for that
> Best regards,
> Lorenz
> _______________________________________________
> Icecast mailing list
> Icecast at xiph.org
> http://lists.xiph.org/mailman/listinfo/icecast

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.xiph.org/pipermail/icecast/attachments/20210521/6a143dd4/attachment.html>

More information about the Icecast mailing list