2👍
Since Icecast 2.4 the preferred way to get machine readable meta-data about the streams running through a server is status-json.xsl. This JSON API is default enabled on all installations.
If status-json.xsl returns a 404, then the server administrator has consciously chosen to disable access. In such a case and in case of old Icecast installations (2.3.x) that won’t be retrofitted with the JSON API (it would be enough for the administrator to copy status-json.xsl and xml2json.xslt to the web directory) the approach of trying to parse the stream itself for metadata is an ugly but possible one. One has to wonder though if the administrator has chosen to disallow metadata access, if they are OK in general with use of their stream beyond simple listening.