Re: Coreaudio-api Digest, Vol 5, Issue 208
Re: Coreaudio-api Digest, Vol 5, Issue 208
- Subject: Re: Coreaudio-api Digest, Vol 5, Issue 208
- From: "Marco Papa" <email@hidden>
- Date: Thu, 19 Jun 2008 13:17:16 -0700
Date: Wed, 18 Jun 2008 23:07:49 -1000
From: Stephen Davis <email@hidden>
Subject: Re: ID3v2 tags
To: Core Audio List <email@hidden>
Message-ID: <email@hidden">email@hidden>
Content-Type: text/plain; charset=WINDOWS-1252; format=flowed;
delsp=yes
The shoutcast metadata streaming is rather odd, to say the least.
There are two ways to access the information:
1) As an out-of-band UDP stream (eaten by many proxies/firewalls)
2) As an in-band stream intermixed with the audio (every N bytes a
metadata packet will come through).
Neither of them have anything to do with ID3 tags. It sounds like you
found some code to deal with them. I'm not familiar with it myself
but you should definitely look at instead of trying to find actual
documentation on the protocol. :-)
One tidbit you might find useful is that the spec originally specified
ISO Latin 1 encoding for the data but many servers seem to send UTF-8
these days. Just something to keep in mind.
Indeed that seems to be the case. As outlined in this article:
nobody uses ID3v32 tags in steaming audio (unlike MP3 *files* which all use ID3v2 tags). The method used is the "Shoutcast standard" (see the article), which uses an "icy-metaint" header in both request and response. I verified this using Wireshark and streams built-into iTunes, plus Shoutcast and Icecast. Unlike mentioned in the article, even Icecast has adopted the same "standard". Strings such as
StreamTitle='Final Fantasy 8 - Nobuo Uematsu - Blue Fields';StreamUrl='';
are interspersed with the MP3 frames, always at the same distance in bytes, as returned by the "icy-metaint" response header.
I found that the java code referenced in the article (IcyInputStream.java) does the job, and it is easily portable to other C-like languages like Objective-C.
Therefore, things are much easier than I originally thought. Thanks to everyone that posted feedback.
-- Marco
Marco Papa, Ph.D.
Computer Science Department
University of Southern California
Henry Salvatori Computer Center
Los Angeles, California 90089-0781
Voice: +1-213-974-2137
Cell: +1-310-944-5468
E-mail: email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden