[Icecast-dev] understanding icecast decoding from a listener client perspective
zippo227 at gmail.com
Thu Oct 3 15:44:05 PDT 2013
I want to write an icecast listener client using C# and C++. I can
asynchronously connect read the continuous bytes from the stream using
some basic C# code. When I look at the bytes (interpreted as ASCII) I
don't understand what it is that I need to be using before passing the
Ogg to libogg. I see some artist information, and I know that there is
an ICY200OK type of message. I also see the word Oggs at the beginning.
But, what do I really need to do to decode the stream and the header?
What parts of the header are actually necessary for libogg to start
pulling the packets?
Ideally, my client would connect to the stream and read the header as
well as detect track information that is included in the icecast
The documentation that I've been reading for Icecast only explains the
server and source client side. I've been working with icecast for a
little over a year now, and I have had to resort to commercial products
for decoding and playing a stream. I want to include this capability in
my project without having to ask people to use Winamp or some other
player. I want to find the documentation on how to read the stream; how
to interpret the periodic meta-data; how to pack these bytes into
something usable for libogg. I'm very new to this concept of pages and
Thank you in advance for reading this request.
Andy S. Martin
M.S. Computer Science Game Development
University of Southern California '2013 Alumni
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Icecast-dev