Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android - internet radio streaming [closed]

I am planing to make a android app for one local radio station I need to make internet streaming of radio program Can you please provide some starting point for this, some tutorial or something.

like image 563
Goran Avatar asked Dec 21 '22 03:12

Goran


1 Answers

The URL for the source is: http://shoutcast2.omroep.nl:8104/

To initialize the MediaPlayer, you need a few lines of code. There you go:

MediaPlayer player = new MediaPlayer();
player.setDataSource("http://shoutcast2.omroep.nl:8104/");

Now that the MediaPlayer object is initialized, you are ready to start streaming. Ok, not actually. You will need to issue the MediaPlayer's prepare command. There are 2 variations of this.

1. prepare(): This is a synchronous call, which is blocked until the MediaPlayer object gets into the prepared state. This is okay if you are trying to play local files that would take the MediaPlayer longer, else your main thread will be blocked. prepareAsync(): This is, as the name suggests, an asynchronous call. It returns immediately. But, that obvisouly, doesn't mean that the MediaPlayer is prepared yet. You will still have to wait for it to get into the prepared state, but since this method will not block your main thread, you can use this method when you are trying to stream some content from somewhere else. You will get a callback, when the MediaPlayer is ready through onPrepared(MediaPlayer mp) method, and then, the playing can start. So, for our example, the best choice would be:

2. player.prepareAsync(); You need to attach a listener to the MediaPlayer to receive the callback when it is prepared. This is the code for that.

player.setOnPreparedListener(new OnPreparedListener(){
            public void onPrepared(MediaPlayer mp) {
                     player.start();
            } 
});
like image 62
Lucifer Avatar answered Jan 16 '23 13:01

Lucifer