Hi I'm working on trying to figure out an issue for LibreTime 
-https://github.com/LibreTime/libretime/issues/730

Basically my station has some broadcasters who while streaming from home tend 
to have regular cut-offs where there internet connection between their home and 
the transmitter running libretime w/ liquidsoap 1.1.1 cuts out enough that we 
get 
`[dummy(dot)4:3] Source failed (no more tracks) stopping output...` in our 
liquidsoap logs and it switches back for a second or two to playing whatever 
was pre-arranged in the libretime library. 

This is really jarring as a listener and to the DJs so I'm trying to figure out 
the best ways to mitigate the occurrence.

Am I correct in the notion that adding a larger buffer to the input.harbor will 
prevent this sort of thing. I saw some talk about adaptive buffers while 
searching in the PR but it didn't look like it was specific to this. 

I guess my question is when you add a buffer does that basically add a delay 
upon first connection ? 
I see the default in the docs is 2 seconds but we had a better result 
increasing it to 10-15 seconds for one DJ in particular.

Is there any easy way you can imagine to mitigate this on a case by case basis 
to adaptively increase the buffer if this kind of occurrence happens. Below is 
what we have currently in our ls_script.liq

```
s = if dj_live_stream_port != 0 and dj_live_stream_mp != "" then
    dj_live =
        audio_to_stereo(
            input.harbor(id="live_dj_harbor",
                dj_live_stream_mp,
                port=dj_live_stream_port,
                auth=check_dj_client,
                max=40.,
                on_connect=live_dj_connect,
                on_disconnect=live_dj_disconnect))

    ignore(output.dummy(dj_live, fallible=true))

    switch(id="show_schedule_noise_switch",
            track_sensitive=false,
            transitions=[transition, transition],
            [({!live_dj_enabled}, dj_live), ({true}, s)]
        )
```

When the issue happens this is pretty much the sequence in the log
```
2019/02/07 23:31:49 [show_schedule_noise_switch:3] Switch to 
schedule_noise_switch with forgetful transition.
2019/02/07 23:31:49 [lang:3] transition called...
2019/02/07 23:31:49 [dummy(dot)1:3] Source failed (no more tracks) stopping 
output...
2019/02/07 23:31:51 [show_schedule_noise_switch:3] Switch to 
audio_to_stereo_5683 with transition.
2019/02/07 23:31:51 [lang:3] transition called...
```

So other than increasing the buffer manually under input.harbor which I'm not 
sure we would want to do project wide are there any other ways you can imagine 
we could help minimize this sort of issue.
Would the timeout parameter affect this at all ?

An idea I had would be to pause the transition for a few seconds to at least 
not switch back to the scheduled playback instantaneously, how could that be 
accomplished without inserting a sleep or something that would block a 
reconnect ?

Also my final question is this the ideal place to ask these sorts of questions 
or would they be better received on the savonet mailing list ? I just signed up 
on that as well so I can send this there and close this if support questions 
are discouraged from the github queue.

Thanks.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/savonet/liquidsoap/issues/706
_______________________________________________
Savonet-users mailing list
Savonet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to