使用MP在Android中流式传输实时音频

时间:2013-03-19 20:24:11

标签: java android streaming android-mediaplayer http-live-streaming

我正在尝试使用setDataSource从互联网传输实时音频,但是当我添加网址时,它说这是一个未处理的异常......这里有什么想法错了吗?

String daytonPolice = "http://relay.radioreference.com:80/691484064";
MediaPlayer mp = new MediaPlayer();
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setDataSource(daytonPolice); // It will not take the string of my url
mp.prepareAsync();
mp.start();

1 个答案:

答案 0 :(得分:2)

问题是因为您在调用prepareAsync()后正在调用start()。您需要设置onPreparedListener:

String daytonPolice = "http://relay.radioreference.com:80/691484064";
MediaPlayer mp = new MediaPlayer();

mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {

    @Override
    public void onPrepared(MediaPlayer mp) {
        mp.start();
    }
});

mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.setDataSource(daytonPolice); // It will not take the string of my url
mp.prepareAsync();