MediaPlayer を使用して通常の ShoutCast ストリームを再生しています。コードは、prepareAsync() と再生を開始するハンドラーを使用した簡単なものです。DI.FM や ETN.FM (http://u10.di.fm:80/di_progressive) などの一部のストリームでは問題なく動作しますが、他のストリーム (http://mp3.wpsu.org:8000/) では問題なく動作します。準備状態を過ぎます。他のリスナーも呼び出されません。
//Uri streamUri = Uri.parse("http://u10.di.fm:80/di_progressive"); /* works */
Uri streamUri = Uri.parse("http://mp3.wpsu.org:8000/"); /* stuck on prepare state */
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setOnPreparedListener(new OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(this.getBaseContext(), streamUri);
mediaPlayer.prepareAsync();
どんなフィードバックでも大歓迎です!