Discussion:
[Icecast] how to update stream metadata by source client
Akos Maroy
2005-04-11 19:40:00 UTC
Permalink
this is an ICE protocol question - how would a source client send an
update of the stream metadata to an icecast 2 server?

as much as I know, the source sends an HTTP-style header at the
beginning, with various metadata fields, than an empty line, then starts
to send the binary audio data to icecast.

but if the metadata for the stream needs to be updated, I guess the
source has to 'stop' the binary data flowing for a second, send the new
metadata, then resume sending the binary data.

but how would this work precisely?
Karl Heyes
2005-04-11 20:19:15 UTC
Permalink
Post by Akos Maroy
this is an ICE protocol question - how would a source client send an
update of the stream metadata to an icecast 2 server?
as much as I know, the source sends an HTTP-style header at the
beginning, with various metadata fields, than an empty line, then starts
to send the binary audio data to icecast.
but if the metadata for the stream needs to be updated, I guess the
source has to 'stop' the binary data flowing for a second, send the new
metadata, then resume sending the binary data.
The handling of metadata is specific to the format, eg MP3 itself has no
in-stream metadata support, only the shoutcast-style streams have
metadata handling. Vorbis has in-stream metadata support but is handled
differently to MP3.

The metadata can be updated via an icecast URL at /admin/metadata, which
is needed if the source client only sends straight mp3

karl.
Akos Maroy
2005-04-11 20:24:23 UTC
Permalink
Post by Karl Heyes
The handling of metadata is specific to the format, eg MP3 itself has no
in-stream metadata support, only the shoutcast-style streams have
metadata handling. Vorbis has in-stream metadata support but is handled
differently to MP3.
I see. so we have separate solutions for:

- shoutcast (mp3)
- icecast 1.x (mp3)
- icecast 2.x
- mp3
- ogg vorbis
Post by Karl Heyes
The metadata can be updated via an icecast URL at /admin/metadata, which
is needed if the source client only sends straight mp3
so it's not that the new metadata would be embedded in the same stream
as the audio, but one would make separate HTTP requests to the server?


Akos
Karl Heyes
2005-04-11 20:47:31 UTC
Permalink
Post by Akos Maroy
Post by Karl Heyes
The handling of metadata is specific to the format, eg MP3 itself has no
in-stream metadata support, only the shoutcast-style streams have
metadata handling. Vorbis has in-stream metadata support but is handled
differently to MP3.
- shoutcast (mp3)
- icecast 1.x (mp3)
- icecast 2.x
- mp3
- ogg vorbis
The mp3 handling in icecast is supposed to work in a similar fashion to
shoutcast mp3 as most clients take that already and it provides for
metadata updates. I haven't checked the details for icecast 1.x
Post by Akos Maroy
Post by Karl Heyes
The metadata can be updated via an icecast URL at /admin/metadata, which
is needed if the source client only sends straight mp3
so it's not that the new metadata would be embedded in the same stream
as the audio, but one would make separate HTTP requests to the server?
source clients sending mp3 tend to use the url for metadata updates,
relays generally request metadata in-stream if available.

karl

Continue reading on narkive:
Loading...