From: adiblol <ad...@1t...> - 2013-12-25 05:52:05
|
> I want to use liquidsoap as a darkice/ices replacement for live > streaming, and I want to shut down/ start up the connection. I read > (btw. output.icecast docs is missing from the website) in the > embedded > doc, that the icecast just needs to be fallible and will stop when > the > source becomes unavailable. > > But this does not work, also unchecking the microphone capture switch > won't help. So is the only way to stop liquidsoap entirely? If your input is never silent when you're streaming, use the strip_blank operator - http://savonet.sourceforge.net/doc-svn/reference.html#strip_blank Muting the microphone will then make input silent, strip_blank will fail, that's what we want. The Right Way (TM) to do it is to use Telnet (or OSC) for external control, for example: set("server.socket", true) set("server.socket.path", "stream_control.sock") stream_enable = interactive.bool("stream_enable", false) stream = input.alsa(...) ... your audio processing ... stream = switch(track_sensitive = false, [ (stream_enable, stream), ({true}, fail()) ]) output.icecast(... , stream) And use netcat to enable or disable streaming: echo "var.set stream_enable = true" | nc -U stream_control.sock echo "var.set stream_enable = false" | nc -U stream_control.sock I used similar approach on live conference broadcasting, but for switching between background music, commentary and speakers. I can share source code if you want. Regards, adiblol |