[Icecast-dev] MetaData Update for FLAC and OPUS

bn at radio42.com
Thu, 15 Aug 2019 18:48:39 -0000

Many Thanks for your answer.

Actually quite a few 'ifs', 'maybes' or 'shoulds'... ;-)
I have tried most of them (except liquidsoap).
However, even the mentioned apps like RadioDJ or Mixxx do NOT support meta data
changes via the encoder (they all use the admin interface)!

And as you correctly pointed out: none of the reference encoders support this.
Not even the FLAC, OGG and OPUS encoders listed on the common xiph.org site!

Any this is actually my point: Why does a xiph.org tool like ICEcast demand a
feature, which is not even supported by the other xiph.org tools?!

As already pointed out in my last mail/post:
It would simply be very user friend to offer a mid-stream meta data update, like
it is offered for MP3 or AAC.

This way also all reference encoders and many other tools could simply enable
meta data updates in an easy way.
This is all I am asking.

And to be frankly: I have not heard a single good argument why this should not
be possible.

Many Thanks,
Bernd


-----Ursprüngliche Nachricht-----
Von: Icecast-dev <icecast-dev-bounces at xiph.org> Im Auftrag von Roger
Hågensen
Gesendet: Donnerstag, 15. August 2019 19:38
An: icecast-dev at xiph.org
Betreff: Re: [Icecast-dev] MetaData Update for FLAC and OPUS

On 2019-08-14 08:35, Bernd wrote:
> Most users do use ICEcast to stream a continuous stream, e.g. they stream a
live DJ or radio program.
> I.e. they setup a single encoder on a single audio stream.
> Still this logical stream contains different tracks being played over its
time, and as such those users would like to update ICEcast to inform their
listeners about the changing tracks within this program. This is a simple
demand.

I'm just going by vague memory here (I'm sure Philipp or somebody else
will correct me if'm I'm wildly wrong), but a Ogg stream can have stream
resets, basically the stream ends and a new start (but the data is continuous).

I don't think any of the "reference encoders" support this, you
may be able to do it by encoding the encoding and starting a new one.

Your best best is to use liquidsoap or ffmpeg (note that the "ffmpeg
Opus" encoder is said to have quality issues) or some other software.

Any software that implements (or uses) libshout should have no issues embedding
the metadata correctly in a Ogg stream.

I'm not sure if you could use ffmpeg + the reference opus encoder and chain
them via a pipe in some way (and have ffmpeg wait for a new encoder execution to
connect).

Maybe a PHP or Python script could be used to handle some of the logistics?

BUTT (Broadcast Using This Tool) is opensource and supports metadata reading
from a file and embedding this in the Ogg stream (as far as I know), if you feel
like coding yourself (or having somebody else code for you) you could probably
adapt that into something that works wit your setup.

There are also software like Mixxx and RadioDJ that should have a proper Ogg
stream encoder that can connect to Icecast servers. I'm unsure about the
commercial software offerings.


Regards,
Roger Hågensen

--
Unless specified otherwise, anything I write publicly is considered Public
Domain (CC0). My opinions are my own unless specified otherwise.
Roger Hågensen,
Freelancer, Norway.
_______________________________________________
Icecast-dev mailing list
Icecast-dev at xiph.org