[Icecast-dev] Android Java source for icecast streaming

Luca Cireddu sardylan at gmail.com
Fri Jun 20 01:36:58 PDT 2014


Hi jSelbie,
try to have a look to https://code.google.com/p/unicaradio-apps/.
Our developer created an app that obtain metadata by splitting icecast
stream and rebuilding it without metadata.


2014-06-20 6:59 GMT+02:00 John Selbie <jselbie at hotmail.com>:

> Greetings,
>
> tl;dr - I'm looking for sources to an Android Icecast client written in
> Java.
>
> long summary:
>
> I maintain an open source Android app (WREK Online) that plays the live
> mp3 stream from the station's Icecast server.
>
> Using the built in MediaPlayer class that is part of the Android SDK works
> OK. As a developer, I just give it the streaming URL of the Icecast server,
> hook up a few callbacks, and it plays just fine.  But this class has its
> limitations and a few bugs.
>
> The biggest limitation of Android's MediaPlayer class is that it can't
> pull down the metadata from the Icecast server. It doesn't pass allow an
> option for the developer to pass up an Ice-MetaData header for the
> specified URL. And even if you could, it likely wouldn't be able to parse
> out the inline metadata within the returned HTTP byte stream (as indicated
> by the presence of an icy-metaint header).
>
> So therefore, my app can't show the current artist and song title on the
> screen very easily. An alternative option is to continuously make an http
> polling request for the "status.xsl" page on the server and parse this
> information out. But polling isn't an ideal solution.
>
> I am considering going full on an writing my own replacement for
> MediaPlayer. This would mean handling my own HTTP streaming, my own MP3
> frame parser,  additional code to extract out the metadata from the stream
> bytes, calling into Android's MediaCodec APIs to convert to PCM, and
> ultimately into an AudioTrack instance. All of which I am comfortable
> doing. However, this will likely take me a better part of a week to get
> working with lots of testing and bug fixing.
>
> Is there an open-source solution I could potentially leverage? I know
> there are few Linux projects written in C/C++ that have been ported to the
> Android NDK, but I'd prefer an Android Java solution.  I've Google'd
> around, but couldn't find anything definitive.
>
> Suggestions?
>
> Thanks,
> jSelbie
>
>
>
>
> _______________________________________________
> Icecast-dev mailing list
> Icecast-dev at xiph.org
> http://lists.xiph.org/mailman/listinfo/icecast-dev
>
>


-- 
Luca Cireddu
sardylan at gmail.com
http://www.lucacireddu.it
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/icecast-dev/attachments/20140620/01a21ed6/attachment-0001.htm 


More information about the Icecast-dev mailing list