[Icecast] Problems with metadata updates
Jordan Verner
jordan at caturria.ca
Wed Aug 8 15:42:32 UTC 2018
Hi Philip,
Thanks for your response.
Yes, I more or less had it figured out. I figured the cannot accept url updates message was a security measure I was tripping.
As of yet, there is no link to share. I want to shoot for a 2019 release to Github though.
It’s a scriptable streaming system similar in a way to Liquidsoap, but with an emphasis on being able to be used as a precise station scheduler (so it has functionality like database, date and time manipulation etc built in).
There is also a configuration file based station manager which is written in script and built on top of it.
It’s coming along swimmingly, but with college starting back up in September I’d say a few more months to polish it up to the point at which I’d be comfortable releasing are in order.
I do look forward to public reception though, whenever that day arrives. A couple more outstanding bugs and a couple missing features stand in the way atm.
Kind regards,
Jordan.
> On Aug 8, 2018, at 7:54 AM, Philipp Schafft <phschafft at de.loewenfelsen.net> wrote:
>
> Good afternoon,
>
> On Tue, 2018-07-31 at 10:36 -0400, Jordan Verner wrote:
>> Hi,
>> I am writing a source client (from scratch).
>
> Mind to share a link with the community?
>
>
>> I’ve got the actual audio streaming part worked out just fine, but the
>> metadata has me scratching my head a little bit.
>
>> According to the docs, to update metadata for an mp3 stream
>
> Yes. And only for MP3 and AAC this holds true. Also note that MP3 and
> AAC are not officially supported by Icecast. They may work, but that's
> it. We recommend to use Opus for most applications.
>
>
>> you’re supposed to issue an http request like this:
>> http://hostname:port/admin/metadata?mode=updinfo&mount=/station&song=test <http://hostname:port/admin/metadata?mode=updinfo&mount=/station&song=test>
>
> Yes.
>
>
>> If I send this request authenticated with the source
>> username/password, I get this, and the metadata is not updated:
>> <iceresponse>
>> <message>Mountpoint will not accept URL updates</message>
>> <return>1</return>
>> </iceresponse>
>> If I issue the same request but authenticate it using the admin
>> password, it works and shows the following:
>> <iceresponse>
>> <message>Metadata update successful</message>
>> <return>1</return>
>> </iceresponse>
>
> The above message is returned if:
> * the internal handler for the format does not support the
> operation (again, this is only for MP3 and AAC as they do not
> support metadata themself); not the case here as it works with
> admin credentials.
> * You are sending the data from a different source IP than the
> source (the audio data connection) is connected from.
>
> This check is there for reasons of security. Without it there is an
> attack with one DJ hijacking the stream of another DJ of the same
> station. This has been seen in the wild and is an inherent problem of
> MP3 and AAC.
>
>
>> Lastly, if I hit admin/metadata.xsl instead of admin/metadata, and
>> authenticate with source credentials and the exact same query
>> parameters, it updates successfully, but of course returns a full HTML
>> admin page instead of just the simple xml response.
>
> Yes. As now you're no longer the source client but an actual user.
>
>
>> For now I’m having to hit the metadata.xsl page and then probe the
>> resulting HTML for the words metadata update successful instead of
>> being able to do it the intended way as per the example in the
>> documentation.
>
> Please don't. The HTML is NOT for parsing.
>
>
>> Also, are there any other valid mode strings besides updinfo?
>
> No.
>
> Hope this reply was helpful.
>
> With best regards,
>
> --
> Philipp Schafft (CEO/Geschäftsführer)
> Telephon: +49.3535 490 17 92
>
> Löwenfelsen UG (haftungsbeschränkt) Registration number:
> Bickinger Straße 21 HRB 12308 CB
> 04916 Herzberg (Elster) VATIN/USt-ID:
> Germany DE305133015
> _______________________________________________
> Icecast mailing list
> Icecast at xiph.org
> http://lists.xiph.org/mailman/listinfo/icecast
More information about the Icecast
mailing list