Re: Android Java source for icecast streaming
| Newsgroups | gmane.comp.audio.icecast.devel |
|---|---|
| Message-ID | <CA+DLCvAQBL0h1oFgFutyEhh+ixSkGvP=cyxxHx=rOJDVFMgtqg@mail.gmail.com> |
Rewriting everything is not necessary. I have a working solution for metadata extraction, that still relies on MediaPlayer, I can license it for a fair price. I am using it here: http://radiofonia.net/android Marcin 20 cze 2014 06:59 "John Selbie" <[email protected]> napisał(a): > 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 > [email protected] > http://lists.xiph.org/mailman/listinfo/icecast-dev > > _______________________________________________ Icecast-dev mailing list [email protected] http://lists.xiph.org/mailman/listinfo/icecast-dev