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?
On Mon, 2005-04-11 at 20:40, Akos Maroy wrote:> 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.
Karl Heyes wrote:> 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> The metadata can be updated via an icecast URL at /admin/metadata, which > is needed if the source client only sends straight mp3so 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