This is for streaming radio stations broadcast from satellite and when there are
no listeners, tuners must be free for use by other (Icecast) listeners or even
TV.
Although both the SAT>IP server (minisatip) and Icecast know when they have
at least one listener (and stop streaming when not), a separate intermediate
transcoding process does not, but needs to be started and stopped, according to
listener demand. Otherwise, it will stream continuously and minisatip will
remain locked onto that tuner and both tuners (or however many there) will be
permanently in use even when no-one is listening. Everything HAS to stop when
there are no listeners.
As I understand it, Icecast will not be broadcasting any stream when there are
no listeners, but the transcode process will continue transcoding and pulling
the stream from minisatip, which will lock that tuner from any other usage. So
somehow the transcoding process has to be stopped when there are no more
listeners and likewise needs to be started when the first listener connects and
right now I can see no way to do either.
Ken G i l l e t t
_/_/_/_/_/_/_/_/
> On 9 May 2021, at 18:45, Christian 'flash2' Fladung <cf at
it-flash.de> wrote:
>
> I guess you mean something like on-demand transcoding?
> I don't get your purpose right ;-)
>
>> -------- Original Message --------
>> Subject: [Icecast] Transcoding
>> Date: 2021-05-09 17:04
>> From: Ken Gillett <kengroups at icloud.com>
>> To: Icecast streaming server user discussions <icecast at
xiph.org>
>> Reply-To: Icecast streaming server user discussions <icecast at
xiph.org>
>>
>> Despite success in one area, I am now disappointed to realise that
although Icecast can run a script when a source connects and/or disconnects, it
doesn?t seem able to do this for listeners.
>>
>> Although the actual source is a SAT>IP server that stops streaming
and frees up the tuners when no more listeners (like Icecast does with relays)
and Icecast will stop streaming when no more listeners, the required
intermediate transcoding process knows nothing of all this. I was under the
impression that Icecast could run scripts at the suitable times and I planned to
write the script to handle this, starting and stopping an ffmpeg process doing
the transcoding. But for this to work, I have to know when the first listener
connects and when the last listener disconnects.
>>
>> Anyone with deeper knowledge of Icecast suggest how I could achieve
that?
>>