Comment 19 for bug 1003403

Revision history for this message
Frotus Green (frotus) wrote :

After much google and github searching with code reviews, only a couple entities have done this:

1) NullSoft - DSP plugin for WinAmp, their own product, .DLL
2) Bass.NET - .NET SDK that has functions for Send_Art, Send_NextTrack, etc.
BASS.NET is free for non-commercial use. If you are a non-commercial entity (eg. an individual) and you are not charging for your product, and the product has no other commercial purpose, then you can use BASS.NET in it for free*. Otherwise, you have to purchase a BASS license

Other solutions fall into 1 of 3 categories:
1) Using Bass.NET API/SDK (2 or 3 solutions) if they have full v2 support
2) Using libshout and only provide v1 features with v2 forward compatibility
3) Implemented their own code similar to libshout, using Go, Python or other languages

So unfortunately, someone needs to add code to handle the new Message Class Hex values without another FULL code implementation as a reference.

(from: http://wiki.shoutcast.com/wiki/SHOUTcast_2_(Ultravox_2.1)_Protocol_Details)
Message Class – 0x3 or 0x4
 Message Type - <metadata type>

0x3 Cacheable Metadata
0x3 0x000 Content Info Metadata (unused)
0x3 0x001 Url Metadata (unused)
0x3 0x901 XML Metadata (Aol Radio format)
0x3 0x902 XML Metadata (SHOUTcast 2.0 format)

0x4 Cacheable Binary Metadata (reserved)
0x4 0x0xx Station logo (see 'Image Notes' for xx details)
0x4 0x1xx Album art (see 'Image Notes' for xx details)
When these are received, the xx of the type is used to specify the image mime type where:
00 image/jpeg
01 image/png
02 image/bmp
03 image/gif

I've written games, mobile apps and such, not sure I am qualified for that. :)