See the solution here: http://stackoverflow.com/a/8833346/265167

On Jan 3, 8:06 am, yaqub ahmad <yaqubon...@gmail.com> wrote:
> But why it was ok in the previous versions of Android like 1.6?
>
> On Dec 31 2011, 4:47 pm, sonu thomas <sonup...@gmail.com> wrote:
>
>
>
>
>
>
>
> > Android does not play all streams.
>
> > The supported streams and format are given in android 
> > documentationhttp://developer.android.com/guide/appendix/media-formats.html
>
> > On Sat, Dec 31, 2011 at 8:31 AM, yaqub ahmad <yaqubon...@gmail.com> wrote:
> > > Please see the code i am using for streaming shoutcast stream, it
> > > works with one URL but NOT with the other one.
>
> > > This one works:
>
> > >    Uri myUri = Uri.parse("http://fr3.ah.fm:9000/";);
>
> > > But not with this one:
>
> > >    Uri myUri =  Uri.parse("http://ib3.islambox.tv:8011/";);
>
> > > SimpleMusicStream.java
>
> > >    import android.app.Activity;
> > >    import android.media.AudioManager;
> > >    import android.media.MediaPlayer;
> > >    import android.net.Uri;
> > >    import android.os.Bundle;
> > >    import android.util.Log;
> > >    import android.view.View;
> > >    import android.widget.Button;
>
> > >    public class SimpleMusicStream extends Activity implements
> > >      MediaPlayer.OnCompletionListener,
> > > MediaPlayer.OnPreparedListener,
> > >      MediaPlayer.OnErrorListener,
> > > MediaPlayer.OnBufferingUpdateListener {
>
> > >     private String TAG = getClass().getSimpleName();
> > >     private MediaPlayer mp = null;
>
> > >     private Button play;
> > >     private Button pause;
> > >     private Button stop;
>
> > >     @Override
> > >     public void onCreate(Bundle icicle) {
> > >      super.onCreate(icicle);
> > >      setContentView(R.layout.main);
>
> > >      play = (Button) findViewById(R.id.play);
> > >      pause = (Button) findViewById(R.id.pause);
> > >      stop = (Button) findViewById(R.id.stop);
>
> > >      play.setOnClickListener(new View.OnClickListener() {
> > >       public void onClick(View view) {
> > >        play();
> > >       }
> > >      });
>
> > >      pause.setOnClickListener(new View.OnClickListener() {
> > >       public void onClick(View view) {
> > >        pause();
> > >       }
> > >      });
>
> > >      stop.setOnClickListener(new View.OnClickListener() {
> > >       public void onClick(View view) {
> > >        stop();
> > >       }
> > >      });
> > >     }
>
> > >     private void play() {
> > >      Uri myUri = Uri.parse("http://fr3.ah.fm:9000/";);
> > >      try {
> > >       if (mp == null) {
> > >        this.mp = new MediaPlayer();
> > >       } else {
> > >        mp.stop();
> > >        mp.reset();
> > >       }
> > >       mp.setDataSource(this, myUri); // Go to Initialized state
> > >       mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
> > >       mp.setOnPreparedListener(this);
> > >       mp.setOnBufferingUpdateListener(this);
>
> > >       mp.setOnErrorListener(this);
> > >       mp.prepareAsync();
>
> > >       Log.d(TAG, "LoadClip Done");
> > >      } catch (Throwable t) {
> > >       Log.d(TAG, t.toString());
> > >      }
> > >     }
>
> > >     @Override
> > >     public void onPrepared(MediaPlayer mp) {
> > >      Log.d(TAG, "Stream is prepared");
> > >      mp.start();
> > >     }
>
> > >     private void pause() {
> > >      mp.pause();
> > >     }
>
> > >     private void stop() {
> > >      mp.stop();
>
> > >     }
>
> > >     @Override
> > >     public void onDestroy() {
> > >      super.onDestroy();
> > >      stop();
>
> > >     }
>
> > >     public void onCompletion(MediaPlayer mp) {
> > >      stop();
> > >     }
>
> > >     public boolean onError(MediaPlayer mp, int what, int extra) {
> > >      StringBuilder sb = new StringBuilder();
> > >      sb.append("Media Player Error: ");
> > >      switch (what) {
> > >      case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
> > >       sb.append("Not Valid for Progressive Playback");
> > >       break;
> > >      case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
> > >       sb.append("Server Died");
> > >       break;
> > >      case MediaPlayer.MEDIA_ERROR_UNKNOWN:
> > >       sb.append("Unknown");
> > >       break;
> > >      default:
> > >       sb.append(" Non standard (");
> > >       sb.append(what);
> > >       sb.append(")");
> > >      }
> > >      sb.append(" (" + what + ") ");
> > >      sb.append(extra);
> > >      Log.e(TAG, sb.toString());
> > >      return true;
> > >     }
>
> > >     public void onBufferingUpdate(MediaPlayer mp, int percent) {
> > >      Log.d(TAG, "PlayerService onBufferingUpdate : " + percent +
> > > "%");
> > >     }
>
> > >        }
>
> > > main.xml:
>
> > >    <?xml version="1.0" encoding="utf-8"?>
> > >    <LinearLayout
> > >     xmlns:android="http://schemas.android.com/apk/res/android";
> > >     android:layout_width="fill_parent"
> > >     android:layout_height="fill_parent">
> > >     <Button
> > >      android:text="Play"
> > >      android:id="@+id/play"
> > >      android:layout_width="wrap_content"
> > >      android:layout_height="wrap_content"></Button>
> > >     <Button
> > >      android:text="Pause"
> > >      android:id="@+id/pause"
> > >      android:layout_width="wrap_content"
> > >      android:layout_height="wrap_content"></Button>
> > >     <Button
> > >      android:text="Stop"
> > >      android:id="@+id/stop"
> > >      android:layout_width="wrap_content"
> > >      android:layout_height="wrap_content"></Button>
> > >    </LinearLayout>
>
> > > The Log-cat shows errors:
>
> > >    NuHTTPDataSource(33): Server did not give us the content length!
>
> > >    Media Player Error: Unknown (1) -2147483648
>
> > > Can someone help me to fix it?
>
> > > Thanks
>
> > > --
> > > You received this message because you are subscribed to the Google
> > > Groups "Android Developers" group.
> > > To post to this group, send email to android-developers@googlegroups.com
> > > To unsubscribe from this group, send email to
> > > android-developers+unsubscr...@googlegroups.com
> > > For more options, visit this group at
> > >http://groups.google.com/group/android-developers?hl=en

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to