karlheyes / icecast-kh

KH branch of icecast
GNU General Public License v2.0
298 stars 107 forks source link

Switching to live stream disconnects listeners #311

Closed AxisNL closed 4 years ago

AxisNL commented 4 years ago

Hi, i think my issue is related to https://github.com/karlheyes/icecast-kh/issues/308, but I'm not sure.

I'm trying to read the debug logs, but they're just a bit too complicated for me. We upgraded our control panel software (mcp) from an ancient version to a recent version, and in the process, icecast_kh was upgraded from kh12 (i think) to Icecast 2.4.0-kh13-20200608231342. Don't know the compiler options or where they get the source, this is managed by our control panel supplier.

Ever since that upgrade we've been overwhelmed with customers that complain about their listeners getting disconnected when switching streams.

In our case, we usually have a live stream configured, and a fallback mount called autodj. We have ices or liquidsoap or something feeding mp3's to it:

<mount>
  <mount-name>/stream</mount-name>
  <charset>UTF-8</charset>
  <fallback-mount>/autodj</fallback-mount>
  <fallback-override>1</fallback-override>
  <fallback-when-full>1</fallback-when-full>
</mount>
<mount>
  <mount-name>/autodj</mount-name>
  <charset>UTF-8</charset>
  <bitrate>192</bitrate>
</mount>

The strange thing is what switching from live (/stream) to the fallback autodj always works without any problem, but as soon as the live source connects again, all listeners are disconnected.

Here's a log file I just created with a client: http://files.hongens.nl/2020/06/error.log. This is my staging machine which runs Icecast 2.4.0-kh13-20200306215418, but it shows exactly this same problem. Here you a listener the is listening to the stream (which is running the fallback stream), when the source (213.127.131.254) connects, the listener is disconnected.

Angelo.

karlheyes commented 4 years ago

that was the behaviour. When I checked it, the fallback was working but the override was being triggered and that was the dropping point. This issue should be resolved in the master tree and I've not heard back to indicate otherwise.

Obviously if you don't build it yourself then your options are more limited but a number of issues have been resolved since the build you have there but not everyone uses particular features. The issue you have experienced is actually a one-liner change.

karl.

AxisNL commented 4 years ago

Thanks, do you know which commit that was? I will try to compile the latest sources myself ;)

karlheyes commented 4 years ago

Should be b3921e05d5c507d6df1d66abe1ca57d9c5c7b898 although the later commits since that resolve other issues which may or may not be an issue for you. No new features since.

karl

AxisNL commented 4 years ago

Thanks, that seems to have fixed it, no longer any issues! Next time you're on the island of Curacao, let me buy you a beer ;)